Fix Fluid Occlusion For Waterlogged Blocks #2907
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes fluid occlusion by using voxel shape comparison with the waterlogged block using BlockOcclusionCache. Using
isFaceSturdy
was wrong for occlusion purposes since it deals with hitboxes and not what is rendered. Thanks to @XFactHD for clearing this up.Fixes #2699
I've also made a 1.21.1 branch of this for testing purposes since FramedBlocks, which I was using to reproduce the issue, isn't available on the latest Minecraft version that
dev
uses. When backporting this to 1.21.1, you can use the commit on that branch, which slightly differs because of changes togetFaceOcclusionShape
.From my testing it doesn't regress the other fluid occlusion issue #2606. Visual discontinuities arising from water flowing along a row of slabs getting culled suddenly once its height goes below half a block are normal and exist in both upstream Sodium and vanilla.