Community Shaders

Community Shaders is a SKSE core plugin for community-driven advanced graphics modifications.

PBR

Physically Based Rendering - Work in Progress

Since the shaders for LOD are still vanilla, they do not support parallax and/or PBR shaders or sRGB textures. A simple conversion of PBR sRGB diffuse textures to linear is done by xLODGen, TexGen and DynDOLOD on the fly.

All LOD generation is supposed to work automatically out of the box without having to manually modify anything in the load order. Do not try to fix issues or problems without reporting or discussing them on the official DynDOLOD support forum first. This is work in progress, the tools are alpha and beta version and constantly improved upon based on user feedback.

Do not overwrite vanilla or linear texture with PBR textures. Do not modify LOD models to use PBR textures. Instead report any problems to the official support forum.

Terrain LOD generation with xLODGen uses Texconv to convert sRGB textures to linear before using them. The gamma value for that conversion is fixed. In case of terrain LOD consider using the gamma (brightness, contrast) settings for each LOD level for fine tuning. if darkening is of terrain LOD is required, try a gamma setting of 0.6 or so. Remember to use a neutral noise texture.

Run PGPatcher (aka ParallaxGen) before TexGen and DynDOLOD, as they will use the CRC32 information from its ParallaxGen_Diff.json file to match LOD models that use CRC32 of the original full model, like for 3D tree LOD models. For best results there should be no patched full models in the load order when running PGPatcher, so it can generate the CRC32 information for all original full models. Also keep the default setting of ignoring meshes in ..\LOD\.. folders. Be aware of mods not adhering to Bethesda conventions and DynDOLOD requirements of putting LOD models into LOD folders (see LOD Model Not In 'LOD' Folder). The PGPatcher output should overwrite the full models in DynDOLOD Resources.

TexGen and DynDOLOD will both automatically create linear texture versions of the LOD textures for object and tree LOD in case the full model uses PBR textures. The PBR Scale controls the brightness for the conversion. The default PBR Scale settings should usually be pretty close to generate well matching object LOD textures. Typically only tree LOD billboards might require small adjustments. The PBR Scale can be adjusted by changing the drop down values in the TexGen interface for the three different types of LOD textures. Use lower values to darken the LOD textures derived from the PBR textures. The PBR Scale dropdowns only show if a PBR texture folder was found in the load order. DynDOLOD automatically uses the same values saved in the TexGen output. The on-demand linear texture conversion in DynDOLOD typically uses the value of the Stitched Object LOD textures.

In case of any issues and for latest discussions see the PBR WiP thread. Report any problems to this thread or the official DynDOLOD support forum. Posting anywhere else will often result in ignorantly trying to circumvent problems with elaborate workarounds that cause extra manual work instead of troubleshooting issues properly so the involved tools and processes can be updated by their developers to make everything work automatically as intended.

Ultra Tree LOD

In case proper 3D tree LOD passthru models with full textures for crowns are installed and the full models have been patched by PG Patcher to use PBR shaders and textures, the 3D tree LOD also uses a PBR shader with PBR atlas textures (minus the parallax texture).

Grass Optimizations

The Grass Optimizations feature supports the use of dedicated LOD models.

For PBR grass support get the latest Test Version.

TexGen and DynDOLOD can generate _LOD1.nif that use grass LOD billboards generated by TexGen. Since the _LOD[0|1].nif for Grass Optimizations need to use the same texture as the full grass NIF, TexGen generates high resolution grass LOD billboards and DynDOLOD creates an atlas texture with the existing full grass texture and the grass LOD billboard textures. DynDOLOD uses LODGen to update the full grass NIF, the _LOD0.nif to use the atlas texture and creates a new _LOD1.nif to the output folder.

Make sure there is currently no output with already updated NIFs installed. TexGen and DynDOLOD automatically detect if Grass Optimizations is installed. Change the CSGrassOptimizations setting in ..\DynDOLOD\Edit Scripts\DynDOLOD\[TexGen|DynDOLOD]_[GAME MODE].ini to disable (0) or force (1) it. Check the log for the message Community Shader Grass Optimizations: enabled

Generate HD grass LOD billboards with TexGen as usual. Check HD Grass, set Direct to 0, Ambient to 100 and Smoothness to 0.

After starting DynDOLOD, change to Advanced Mode and check Create assets for CS Optimized Grass that replaced the usual Grass LOD settings in order to create the atlas texture that combine the full textures and the grass LOD billboards and then updates the full grass NIF and _LOD0.nif if it exists and creates the _LOD1.nif. The _LOD1.nif is based on the NIF defined by the CSGrassOptimizationsBillboard setting in ..\DynDOLOD\Edit Scripts\DynDOLOD\DynDOLOD_[GAME MODE].ini.

To only generate the Grass Optimizations LOD assets, do not select any worldspaces and uncheck all other options. The grass LOD billboards and LOD assets only need to be generated if grass mods change, grass records being used by terrain changes, the full models or full texture change. Note that large grass full textures can cause longer running times.

When running TexGen or DynDOLOD again, make sure that there is no active output respectively.

This feature is currently developed. Provide feedback and reports problems to the Grass Optimizations WiP thread.

Grass Lighting with Grass LOD

These are the current suggestions posted by ikonomov at 2026-05-03 for vanilla grass to achieve well matching grass LOD in all weather and lighting conditions:

Generate HD Grass billboards in TexGen - the option is automatically enabled if Community Shader is detected. Set Ambient to 100 for HD Grass, leave Direct and Smoothness at 0. Run TexGen and install its output as usual.

Set ComplexGrassBillboard=5 and ComplexGrassBacklightMask=100 in the ..\DynDOLOD\Edit Scripts\DynDOLOD\DynDOLOD_[GAME MODE].ini. Run DynDOLOD and install its output as usual/.

In the Community Shader settings set under Grass Lighting set SSS Amount to 10 (increase it past 1 by clicking on the slider, pressing left or right arrow keys and then pressing the Enter key) and set Brightness to 0.560. Under Screen Space Shadows set Sample count multiplier to 1, Surface thickness to 0.010 and Shadow contrast to 0.750.

Terrain Shadows

DynDOLOD can be used to generate heightmaps for the Terrain Shadows. In addition to xLODGen (see Terrain-Heightmap-Readme.txt included in its download archive), by default DynDOLOD also adds heights from object LOD to the heights of terrain LOD, which makes the heightmaps a bit more detailed.

To enable heightmap generation, set DoTerrainHeightMap=1 in ..DynDOLOD\Edit Scripts\DynDOLOD\DynDOLOD_[GameMode].ini.

This will generate a heightmap for all selected worldspaces, except hose listed in the TerrainHeightMapIgnoreWorlds setting.

DynDOLOD generates the heightmaps to the same path and filename as xLODGen, ..\Data\Textures\Terrain\[Worldspace]\[Worldspace].Terrain.HeightMap.*.*.*.*.*.*.dds. To use them do not install any 3rd party heightmaps to the ..\Data\Textures\HeightMaps\ directory as they will take precedence.

Tree LOD Lighting

Standard tree LOD has about a dozen limitations. While all of these limitations are addressed by (in some cases enforced) ultra tree LOD, the limited lighting can also to a degree be addressed by the Tree LOD Lighting community shader in case there is a reason to not use the more comprehensive ultra tree LOD with Billboards.

The Tree LOD Lighting mod requires a "complex" tree LOD atlas texture. A "complex" texture means that both the diffuse textures and normal map textures are combined into a single texture.

To generate normal map textures for standard tree LOD billboards with TexGen, set TreeNormalMaps=1 in ..\DynDOLOD\Edit Scripts\DynDOLOD\TexGen_[GAME MODE].INI. Then run TexGen as usual with Tree checked. Install the TexGen output as usual.

To generate "complex" tree LOD atlas textures for standard tree LOD, set TreeLODComplexAtlas=1 in ..\DynDOLOD\Edit Scripts\DynDOLOD\DynDOLOD_[GAME MODE].INI. Then run DynDOLOD as usual with Tree LOD checked. Install the DynDOLOD output as usual.

Note that ultra tree LOD with BillboardX already utilizes HD tree LOD billboards that have normal map textures and typically has better visual results.

When using ultra tree LOD, the standard tree LOD is disabled and the Tree LOD Lighting shader is obviously not affecting anything.