Realtime 3D rendering brings a few constraints including fluidity. Indeed, when an animation uses a big amount of polygons, the rendering requires a lot of computations, leading to a jerky scene. The number of polygons which can be traited during one cycle of the display engine is considered as fixed, it becomes necessery to limit the number of polygons that will be used by suppressing those which are not significative.
Level of Detail (LOD) is a design term for video game landscapes. It is a process consisting in reducing the number of polygons composing an object relatively to its distance from the camera. The fluidity of the scene is thereby increased without losing details.
=> A distant object will have an imprecise pattern, whereas a closer one will be more complex and detailed.
We can find three types of LOD process:
- Discret LOD
Several versions of an object will be created during the pre-rendering phase and degraded in a uniform way. This may be useful in big scenes where there are some places that we never get close to, but this is not really our case, considering that we want to be able to move into every corner of the scene.
- Progressive LOD
We create for each object (or group of objects) a structure containing different levels of detail concerning this object. During the renderer, the adequate level of detail will directly be extracted from the structure.
- View-dependent LOD
This is an extension of the progressive LOD. A set of degraded patterns (generaly at the number of 4) will be generated before the launching of the renderer, then the best suited pattern will be chosen regarding the position of the observer.
This changing of complexity must be done in realtime. This implies that the distance at which an object will be more detailed has to be determined. The transition between a non-complex pattern to a very complex one must be done in a discrete way so that it won’t be perceived by the eye.
– http://alexandremohr.free.fr/Documents/UTBM/Divers/VI50/cours/lod.pdf
– http://rastergrid.com/blog/2010/10/gpu-based-dynamic-geometry-lod/