Issue: Since snapshot 26.1-7, any block in the game now accepts transparent/translucent textures. This is a great change that greatly increases the power of resource packs, but this feature is (mostly) unusable on the main faces of blocks because it creates “xray gaps” on any blocks adjacent to it. Most non-opaque blocks (Ex. glass) exhibit special cullface behavior, where they block faces from identical blocks adjacent to them but still allow other blocks to render theirs. But when a typically opaque block is turned transparent through a resource pack, it does not get this behavior. See the attached images for example:
Expected result: Glass blocks (hardcoded transparent blocks) hide the faces of any other glass blocks behind them, but still allow faces from other blocks to render behind them.
Actual result: Dirt blocks (made translucent through a resource pack) stop ANY blocks' faces from rendering behind them, resulting in a indefinite void behind them until it meets a new unculled face (“xray”).
Since this ruins most use cases for making main block faces transparent, any blocks under the cutout or translucent render pass should be given the behavior that hardcoded transparent blocks already receive. Or, even better, if this could negatively impact performance then it could be made an optional setting that resource pack creators could specify in the block model’s .json file. Similarly to how creators can specify emission, tint, ambient occlusion, etc., a new "transparent_cull: [0,1]” option could be used to specify whether the block should use the intended transparent block cullface behavior or not.
Attachments
Comments 3
Hi!
Thank you for your report!
Can you attach a resource pack this issue reproduces with?
Quick Links:
📓 Issue Guidelines – 💬 Mojang Support – 📧 Suggestions – 📖 Minecraft Wiki
Thank you for helping us improve Minecraft! We saved your files: