Is there a way (or any benefit) to doing level of detail with the same mesh, but a cheaper material? I have 1000 meshes, most of them with different materials (actually the same material but different uniforms and a different albedo texture), but you can only see the nearest 30 meshes nearby at any time, the other meshes are just in the distance. I’m currently rendering those distant meshes with a simple white color, which looks good to show that there is geometry there, that blends into the fog.
What I would like to do, is to add a level of detail, so that at 64 meters away, I render the same mesh, but with a plain white material. Is there any benefit in doing this? Or is there no overhead in rendering each mesh with a different material?
Also - is there a way to reuse the material shader code so that it doesn’t have to be recompiled for each instance of the material? I’m using PBRCustomMaterial.
Example scene (not loading individual textures for each mesh yet):