![Frosted Glass](https://media.forgecdn.net/avatars/thumbnails/581/330/256/256/637946225034477383.png)
すりガラスの背景に半透明ブロックがあると、背景の半透明ブロックが描画されないことがある
gedorinku opened this issue · 1 comments
net.minecraft.client.renderer.LevelRenderer#renderLevel
の中で MultiBufferSource.BufferSource
の endBatch
か getBuffer
のどちらかが呼ばれたときに、すりガラスの glReadPixels
周りが実行され描画される。
マウスオーバーしてなくて黒枠を描画していないときは、半透明ブロックすべてが描画された後に endBatch
が呼ばれてすりガラスが描画される。
しかし、黒枠を描画するときは、半透明ブロックを描画する前に黒枠を描画するための getBuffer
を呼ぶので、背景にある半透明ブロックが描画されなくなってしまう。
ちなみに同様の理由で、他の BlockEntity が存在するときも、確率的に半透明ブロックが描画されなくなる。
どちらにせよ、すりガラスは半透明ブロックと同じタイミングで奥から順に描画されるべきなので、だめそう。