Weird rendering issue with flickering dots on mesh

Hi everyone, I’m facing this weird issue in my game where I see flickering dots on my mesh as shown in the attached images.

All of these images are taking from the same spot with slight camera rotation changes and you can see that in each case, the dots change positions. These dots seem to show whatever is behind this mesh and in this case, it’s showing the blueish color of the sky sphere. Furthermore, these dots also only show up near the edges and corners of each block or square.

I want to clarify that this mesh I’m rendering is procedurally generated and each block is of size 10x10x10. I also have several other algorithms such as greedy meshing to cull hidden faces and show the appropriate texture for the chosen block. I’m suspecting this issue has to do with how the mesh is rendered, especially if the blocks are smaller in size.

Now I have seen similar issues on a few other posts and they talked about changing the anti-aliasing method, disabling nanite, changing texture properties, etc. but none of them worked. If you know what’s causing this or why something like this might be happening, I would really appreciate it.



Hi @GamingMonkey1028, this is definitely an odd problem. My first instinct is to say Nanite is causing this, so I’m surprised to hear this got you nowhere.

My next instinct is to say some normals are getting inverted. It’s hard to tell, but the missing areas look like they’re square-shaped, so this would make sense.

Either way, I would start by trying to narrow down where this issue is coming from. Can you send some SSs of your material editor, to make sure nothing in the material is causing the issue? Can you send some photos of the meshes- both inside the meshes and outside?

Hi Sarah, I apologize for the late response. I honestly didn’t expect anyone to respond to my question and I kind of just gave up on monitoring this. To answer your question regarding my material editor, I can confirm that this has nothing to do with the material itself. Please check the following images:



I basically disabled the texture to see if the problem persists and it still does. In the textureless image, you can see that the squares don’t really alternate in a checkered pattern similar to regular meshes. This is because the mesh is procedurally generated through a greedy meshing algorithm. So only areas of the mesh that are clumped together have the checkered pattern and this can be observed in parts of the mesh that have the same color in two squares that are adjacent to one another. This may be more noticeable with the wireframe image that I attached.

I’ve also attached an image with a mix between the two so you can see the wireframe and the regular overlapped. I’ve added a red circle to represent some of the dots that I mentioned in my original post and you can see from this image that these dots tend to appear near parts of the mesh that are separated by the greedy meshing algorithm.

This basically confirms that these dots are only observed in the edges between two adjacent components of the mesh that are created through the greedy meshing algorithm. One step further in the sense that I identified that the issue has to do with the procedural mesh but I’m now stuck in a spot where I can’t figure out what causes this to happen. I don’t know what I can do or how I can modify the meshes to properly align themselves despite the fact that they seem to be properly aligned based on my code.

Regardless though, thank you for your response. I wouldn’t have stumbled across this observation I made unless you asked me about my material. I’m hoping I could fix this issue soon as it’s driving me crazy.

I’ll admit this is definitely outside of my skillset to help diagnose.

If this is helpful at all, I found someone online who details their method of greedy meshing and links their source code in the video description. Maybe it would be helpful to compare the two.

I wish you luck in figuring this out! If you do find a solution, I would love an update here.

This is actually one of the tutorials I followed in making my terrain generation algorithm lol. If I had to guess, his algorithm might also be causing a similar issue. I’m going to attempt to clone his repository and check if this is the case or not.

Update: I’ve pulled the code from his github, which he used for making the tutorial videos. It turns out that this bug does indeed persist in his project! I’ve posted a question about this in his video and I’m hoping I can get a response. In the meantime, I’m going to check if this is a persistent problem with procedural meshes in general.