Arcane University:LOD Generation
LOD, or level of detail, is the system used in video games to render distant objects at a lower complexity for better performance. Though Skyrim's LOD systems are somewhat rudimentary in comparison to more recent games, a good understanding of these systems can still result in breathtaking visuals.
There are multiple tools available for generating LOD, but xLODGen generates results that require no dependencies and is the most versatile for doing so. As such, it is necessary to install for the workflow below.
Contents
The .lod file[edit]
xLODGen and other LOD generation programs can only generate LOD for worldspaces that have a corresponding .lod file. These files are stored in a top level folder at Data\LODSettings\, though by default this folder is not visible as all relevant files are packed within the game's .bsa archives. To create a .lod folder for a new worldspace, either copy an existing .lod folder and rename it to correspond with the name of the worldspace, or use xLODGen's LODSettings File button to open a menu which allows for the selection of any loaded worldspace. The autogenerated settings should be sufficient. Press save, and the worldspace should be available on xLODGen's main menu.
Object LOD[edit]
Object LOD consists of an atlas that places premade LOD meshes at coordinates corresponding to their base object. Using xLODGen or other LOD generation tools, it is assumed that object LOD meshes are already made and implemented. See LOD Model Creation for details on the process of creating these meshes.
Tree (Billboard) LOD[edit]
Tree LOD differs from object LOD because trees are rendered as 2d billboards rather than low poly models. Notably, billboards for vanilla and DLC trees are not present in Skyrim's files. They are included as an optional download on the Skyrim xLODGen NexusMods page. They are also present in the development build of BSAssets. Ensure these files are present in your data folder before generating LOD in areas that utilize vanilla trees.
Terrain LOD[edit]
Terrain LOD consists of low poly meshes made from each cell's terrain and water records, and is wholly generates by xLODGen. As such, there are many more variables to account for. xLODGen's default values are result in overly simplified, difficult to read terrain. The settings below are those used by Beyond Skyrim to generate much more crisp and readable LOD without oversaturating the texturing.
Occlusion[edit]
WIP
Limitations of LOD[edit]
Skyrim's LOD system has many limitations, and while workarounds do exist their impact on performance must be carefully considered prior to their usage. Object LOD meshes cannot utilize specular maps nor animation. Additionally, LOD cannot be generated dynamically by the game, so large objects that are meant to appear, disappear, or otherwise change state will not be able to do this at a distance using the LOD system. By enabling the flag "Is Full LOD" for a given object, the object will be rendered in its base form anywhere in the worldspace, and can thus be animated or change state. The drawback is that the object is loaded anywhere in the worldspace in full resolution. This has performance costs and should be used sparingly.
Two limitations of LOD that have no known fix have to do with the render limit. Skyrim utilizes a culling plane at a far enough distance from the player that prevents the rendering of anything beyond it. This culling plane is hardcoded to a square with boundaries 163840 units from the root camera, though more testing needs to be done to see if these are the same units that are used by the game. Additionally, a worldspace can only render LOD in for the 256 cells north and east of the origin cell (LODSettings values South and West) as specified in its .lod file. This second limitation is generally irrelevant, as both the render plane and physics related issues make such large worldspaces impractical.