A Level of Detail model (LOD) is a lower-resolution version of a game model. The lower-res version is used to improve performance by being swapped in whenever the higher-resolution of the game model is not apparent anymore, for example when it is a certain distance from the player. Usually LODs have a lower vertex count (50% or so) and simpler shader (diffuse only, for example).
LOD0 is the highest level of detail, your original model. Zero is always the highest because the number of LODs is unknown, so if you need more LODs you can just increment the number.
LOD1 is sometimes done by hand, especially for rigged organics (creatures, people, etc.). A lot of game developers automate LOD2, LOD3, LOD4, etc. with automatic Decimation tools.
LODs can have different UVs. There's reasons both for and against keeping the same UVs. If you keep the same UVs, that means you can use the same texture for whatever LODs use the same UVs. However, this also means you're now likely holding a higher res texture in memory for models that probably don't need that higher resolution texture. That rabbit hole gets deeper, but the short answer is: They can use the same UVs, or they can use different UVs. There is no hard and fast rule.
If you are using the same texture/uv layout for the LODs, won't the texture decrease in resolution as it goes down the LOD chain? In short: It's complicated, and in many cases you're still paying the cost for the highest resolution of the texture. A quick-and-dirty way of reducing a significant amount of that cost is to do a mip-split, where you actually split the top mip level from the rest.
There are many methods for determining when to swap; the most common is based on distance. Another method is to swap depending on how fast the player is moving, because a player typically won't notice the drop in quality for a fast-moving object. Yet another method is to drop to lower LODs when the framerate drops below a certain number.
When using automatic LOD generation there are different approaches how a algorithm handles it
- Vertex Removal: new triangles are formed
- Triangle Removal: a triangle is removed
- Edge Removal:a edge is collapsed into a point
- Triangle Collapse: a triangle is collapsed to a point
These method are the reason why sometimes a mesh doesn't look it should. Because a algorithm can't determine what you need to keep and what not While the terms are here used in the automatic lod generation the same concepts can be applied to hand-made LOD's
- Questioning my LOD workflow on the Polycount Forum
- Polygon Count on the Polycount Wiki
- LOD resources/information anyone? on the Polycount Forum
- LoDs: From how many tris does it make sense? on the Polycount Forum