Level of Detail (LoD)

What is LoD and how does it work?

Summary

Published: Mar 02 2024 by manavortex Last documented update: Mar 02 2024 by manavortex

This page explains what Level of Detail is and how it works.

Wait, this is not what I want!

Level of Detail

A high-detail mesh has a low Level of Detail, and vice versa. This is both intuitive and obvious, which is why there's an info box telling you about it.

The further away something is, the higher it's LOD will be (the less detail you will actually see, and the less detail will be rendered).

What controls LOD?

.streamingsector: forceAutoHideDistance

But my modded items only have LOD0!

For equipment and weapons, that is completely fine, because you don't need them (melee weapons aside, read on).

For NPVs, you'll want to get rid of proxy appearances as well — we really can't be arsed to create custom ones.

So let's get rid of all these high LOD submeshes!

Please don't.

First of all, the high LODs occasionally store other properties. For melee weapons, they are used to calculate the hitbox (or so we think, Mar 2024). For vehicles, they're needed for damage deforms.

And second of all, without proxy meshes, your GPU will catch fire if you look at Night City's skyline. Yes, even the Tesseract.

lodLevelInfo

As of May 2024, we don't know for certain what the numeric properties stand for (maybe the distance from player at which the level of detail gets activated?).

LODs corresponds to renderLODs. LODs without an entry in renderLOD will never load.

Proxy meshes

To learn more about Proxy Appearances, check the corresponding wiki page.

A proxy mesh is used as an extremely low-level stand-in to be loaded for distant objects. They will almost always have proxy in their path or file name, and use a PBR material such as metal_base with low-resolution textures.

Example: Take a look at Johnny's proxy mesh under

base\characters\appearances\main_npc\proxy\silverhand_default\silverhand_default.mesh

Shadow meshes

Shadow meshes are used to generate shadows at low performance cost. You can find more detailed documentation on the page about Meshes, Shadows, and Shadow Meshes.

Component property: forceLODLevel

This lets you override the level of detail

Last updated