When to make LODs (2021)
5 comments
·July 16, 2025iFire
iFire
Our budget couldn't afford Epic Games style nanite, but there are three js implementions.. so it's not impossible to recreate.
- https://github.com/AIFanatic/three-nanite
- https://news.ycombinator.com/item?id=42974461
three-nanite is based on https://github.com/zeux/meshoptimizer cutting each mesh into maybe 124 triangles per chunk.
esperent
That's a cool demo (even if it doesn't work on my phone, I get it from the video), but it's a long, long way from a nanite implementation. At best I'd call it dynamic LODs or something.
e-topy
Jason Booth (the author) also has a YouTube channel talking about similar topics. I really liked his 'Practical Optimizations' video: https://youtu.be/NAVbI1HIzCE
mrala
LOD = level of detail
In godot engine we decide to do a continuous level of detail based a pixel error metric. (simplified explanation pixel-error -> based on fov -> based on floating point error of the meshopt_simplifyWithAttributes function)
The 12 ish lods are automatically generated by https://github.com/zeux/meshoptimizer.
https://docs.godotengine.org/en/stable/tutorials/3d/mesh_lod...
We allow a hierarchical level of detail if people want to set it up.