[SOLVED] Are LODs on low poly mesh worth it?

I’m not really convinced about Lods, If I have a mesh lower than 1000 triangles would it make for better or worst performance to have another LOD level for really far away distance?

These pillars have a lower than 1000 triangles count, basically just boxes with one simple edge loop but at really far away, making them simple boxes would make more sense, then again I’m not sure if it will improve performance.

1 Like

I wouldn’t think so, but it probably depends on how many you have in the scene. Obviously there’s some overhead for switching out LODs, so there comes a point where you might actually get worse performance with LODs. I don’t think there’s a specific rule-of-thumb about where the polygon cut-off is. It will depend on the specifics of your scene. If you’re having performance problems, check the profiler and see what’s actually going.

1 Like

It also depends on just how close you’re pushing the limits of your GPU. Another less-obvious benefit to doing LODs is to reduce overdraw due to how GPUs render in 2x2 pixel chunks (see this blog post for a nice visualization of the problem: Overdraw in Overdrive). The general idea though, is that less tris are pretty much always better (no surprise there :p) so if you can pay the development time and storage cost, it would probably be an improvement… but how much of an improvement really depends on a lot of other things such as how many instances of the object are rendered and how complicated the pixel shader is for them. With that particular example, I probably wouldn’t worry about reducing it much unless you’re hoping to have quite a few of them visible at once. Maybe 1 LOD with ~50-100 tris for when it’s really far away, but anything more is likely overkill and you probably have bigger fish to fry first.

2 Likes

Thanks all for the reply and information it was very helpful! While making my lods I already found an answer. My models have custom mesh normals applied to it meaning that if I want to go any lower the normal maps won’t work anyway and the shading will get messed up. On mesh with more poly it works because you need at least one edge loop for the custom normals to work correctly but on beveled box to ----> box it doesn’t work so it’s not worth it but I’ll definitely use lods on low poly meshes with more edge loops simply for the fact that it’s useful for mobile developers.

For future reference: A short explanation about custom vertex normals (tutorial) — polycount

SOLVED!

1 Like