Strange clipping/dithering issue where meshes intersect

Hey All,

I’m having a weird issue. I have this test level where I have a rough glacier mesh sitting in a water plane. Nothing unusual about the meshes themselves, the shaders are fairly basic as well. The water is opaque and the glacier is subsurface. But where the meshes overlap, especially once I move the camera away and look at it from a distance, there’s a weird flickering issue where slices of the glacier are being cut away to reveal the water, and then it pops back into place, and then away again, etc. This doesn’t happen where the glacier overlaps the background mesh with a skysphere/cubemap texture on it, which is the other dark blue background in this image next to the yellow outline of the water mesh. Can anyone shed some light on this issue?

Any help is greatly appreciated!

Kinda hard to tell from the image, but it sounds like z fighting.

Doesn’t that only happen if the polys are on top of each other? This is a large terrain sitting on a water plane, so it’s not like the polygons are perfectly overlapping.

It might be a case where the depth of the scene is controlled by how much space the objects in it take. The would mean that the range of depth would be based on the large ocean plane so the smaller objects would occupy only a small amount of depth.

That makes sense. It would also explain why the effect is worse the farther away that you get, because the accuracy is getting even worse and they are taking up even smaller amount of depth? How would I go about fixing that?

To test it out, try using a smaller object for the ocean and see if it improves, it could also be an issue with the shader, ocean stuff is more complex than normal.

This shader is simple, just a couple of scrolling normal maps getting their uvs distorted by another scrolling texture. I will test your idea ASAP, but just had another thought. If this is a problem with the depth range of the scene, would my mesh sky sphere be contributing? Obviously it is pretty large, and if the depth buffer scales to encompass the entire scene, things like my large ocean plane and sky sphere could be really limiting the accuracy of smaller objects. Or maybe I don’t know what I’m talking about lol. Is there a way though to tell Unreal not to consider something like my sky sphere mesh in the depth?