Render artifacts in r154+

Hi, I recently updated to r155 and some intermittent render artifacts were introduced. I’ve tested r154 and r153 and the issue occurs between r153 and r154. I’ve attached screenshots.

It’s intermittent and frequently changing holes in the render. I render the scene separately to the dark background so it looks like dark boxes and lines but if you check the attached spectator report you can see there are holes in the render.

You can extract then drag and drop the spectator report (json file) into the spectator.js chrome extension to see the first draw call.



155_spectator_capture (4.5 MB)

It seems related to sidedness.

I run through the objects on load and set their sidedness to DoubleSide. If I remove this the issue stops.

Any chances to demonstrate the issue with a live example?

Will see if I can.

It’s also related to MeshPhysicalMaterial. I convert incoming materials to Physical Materials on load. If I don’t do this, but I do still force double sided then there is no issue.

Also related to transmission. Seems to be a combo of transmission and double sidedness that triggers it

Can you see the artifacts in this example? threejs webgl - materials - transmission

It uses transmission + double side rendering.

No, looks fine. Hmm!

Maybe you can modify webgl_materials_physical_transmission such that the glitch pops up. I wonder what is different in your app :thinking: .

In my app I am also computing the vertex normals on load. This is because I freeze the transforms on the geometry on load, and also to ensure that all geometries have normals.

If I don’t compute the vertex normals the problem goes away.

Adding compute vertex normals to the three official examples doesn’t replicate though