Level of Detail (LOD) systems are a massive boost to video game performance and functionality.
LOD’s systems are used to drastically reduce poly count in video games as well as manage system resources and texture buffering and/or streaming functionality. LOD’s work by replacing high resolution and high polycount assets with cut down versions of themselves at certain distances. You’ll often see this in video games that have large open worlds. LOD’s have been around for a long time and yet it keeps evolving into something better with each iteration. Let’s discuss them in detail!
Level of Detail (LOD) systems are essential in modern video games for optimizing performance and managing resources effectively. These systems dynamically adjust the level of detail displayed in a scene based on factors such as distance, screen size, and processing power. By selectively reducing the complexity of objects or environments, LOD systems ensure visually appealing experiences while minimizing computational requirements.
What are LOD’s?
Modern computers are powerful, but still have their limits. LOD systems are made to “hide” certain objects at certain distances in order to have a player still see that object, but at a different geometric level. As such, the lower an LOD goes, the lower the poly count of an asset goes. Computers have limited memory and bandwidth for displaying assets onscreen. These asset visualizations are called draw-calls. Each asset being seen at once, counts as a draw-call. The aim of LOD’s are to lower these metrics, in order to increase performance.
The core principle of an LOD system is to strike a balance between visual fidelity and performance by adapting the complexity of objects and environments to match the player’s viewpoint. Distant objects that are less noticeable can be represented with fewer details or lower-quality models, allocating computing resources more efficiently and achieving smoother gameplay experiences.
In game Usage
For example, let’s say you are playing an open world game such as Skyrim. Now, when you are close to a building it should be detailed and have lots of small intricacies. When you are just outside of town but you can still see the building, you wont see those small details but you should still see some level of detail. Now, let’s say you are far away from the town looking down on it from some distant mountain top. You need to be able to see the building, but from this distance, no detail. That is what LOD’s are meant to help with, and in doing so; increase performance.
To implement an LOD system, game developers create models with varying levels of detail for each object or environment asset. These models range from highly detailed versions for close-up views to simplified versions for distant objects. The selection of the appropriate model depends on factors like viewer distance, object size, and available processing power.Geometric LOD is a commonly used technique in LOD systems, involving the creation of a hierarchy of models representing the same object but with different levels of detail. At runtime, the LOD system continuously evaluates the distance between the viewer and each object and switches between the appropriate levels of detail based on predefined thresholds. For example, a low-polygon model or a precomputed texture might be used for a faraway object, while higher detail models are substituted as the object moves closer, creating a seamless transition. This is usually evident with trees. Up close a tree will have thousands of polygons and look really good and realistic, but at a distance, they are sometimes billboards. billboards are two dimensional renderings of a 3D asset and are the easiest thing to render in a three-dimensional game. Think back to PlayStation One racing games, those were billboards!
Other uses and functionality
Texture LOD focuses on the level of detail in textures applied to objects. Multiple versions of a texture with different resolutions are created. As an object moves away from the viewer, lower resolution textures are substituted, reducing memory consumption and improving performance. This technique is particularly effective for large environments like terrain, where the visual difference between high and low-resolution textures is less noticeable.Occlusion culling is another optimization technique used in LOD systems. It determines which objects or parts of the environment are not visible to the viewer due to obstructions and excludes them from rendering. By skipping the rendering of occluded objects, the LOD system reduces the overall computational load. Techniques such as bounding volume hierarchies and occlusion queries efficiently identify occluded objects and minimize unnecessary rendering operations. Sometimes these systems don’t work as intended and will create pop in effects when you turn the camera very fast. That’s how you would know an occlusion culling system is active.
Why are they used?
LOD systems offer several benefits to game development. They enable games to scale across a wide range of hardware configurations by dynamically adjusting the level of detail. LOD systems are especially valuable in open-world games where expansive environments can strain hardware resources. By intelligently managing the level of detail, these games can maintain a consistent frame rate and deliver immersive experiences. We have seen this in thousands of games, and will continue to do so.
They also contribute to reducing development costs and optimizing asset creation. Creating highly detailed models for every object in a game is time-consuming and resource-intensive. By utilizing LOD systems, developers can focus their efforts on creating high-quality assets for close-up views while relying on simplified versions for distant objects. This approach streamlines asset production pipelines and reduces costs.
LOD systems facilitate the seamless integration of new content and updates into existing games. Assets can be designed with multiple levels of detail, accommodating various hardware configurations and ensuring scalability for future advancements in technology. This even goes as far as mobile gaming in some instances.
Implementing an effective LOD system comes with challenges. Balancing visual quality and performance requires careful optimization and testing. Determining the appropriate thresholds for transitioning between levels of detail is crucial to avoid noticeable visual artifacts or sudden changes in quality. Users are able to easily pick up on these small artifacts and visual issues, so getting them perfect is paramount! Handling rapid transitions during dynamic gameplay and complex objects with intricate details or deformable surfaces also requires specialized techniques.
In conclusion, LOD systems are integral in modern video games for optimizing performance and managing resources effectively. By dynamically adjusting the level of detail, these systems strike a balance between visual fidelity and performance. Techniques such as geometric LOD, texture LOD, and occlusion culling are used to efficiently manage assets and reduce development costs. LOD systems find applications across various gaming genres, from open-world and first-person shooters to racing, RPGs, and strategy games. They enhance the player’s experience by delivering visually stunning environments while maintaining optimal performance.
Now, what is the future of LOD’s? Well, you just have to look to Unreal Engine to get an answer. In a follow up article, I will discuss how these technologies have advanced in the last few decades and how they are advancing into the future now.
My details and links :