Hey there, the engine I came from before moving to UE4 had the ability to set LOD overrides based on platform/quality level (in UE4’s case perhaps based on the Overall Scalability Level). So, I could for example say to pull in all LOD distances by 75% on Low, or even say to skip LOD 0 altogether if on Low.
You can do something similar with textures here, but I can’t seem to find out how to do it with geo.
Surely there must be a way to scale back the mesh polygon density like this based on the quality level the user selects?
Thanks for the reply!
The issue with r.forcelod is it locks in that specific lod, so say if I set r.forcelod 1 when you switch to “low” quality (in order to skip lod 0), the other lods will no longer work ie. it will never switch to lod 2 or 3 as far as I can tell, which isn’t ideal.
I’m not familiar with Unity, but I found a doc where they describe the “LoD Bias” scale, which may explain it better than I.
" Lod Bias Set the level-of-detail (LOD) bias.
LOD levels are chosen based on the onscreen size of an object. When the size is between two LOD levels, the choice can be biased toward the less detailed or more detailed of the two Models available. This is set as a fraction from 0 to +infinity. When it is set between 0 and 1 it favors less detail. A setting of more than 1 favors greater detail. For example, setting LOD Bias to 2 and having it change at 50% distance, LOD actually only changes on 25%.
"
There is actually a minimum LOD setting you can use on a static mesh to skip lod0, and not long ago they appear to have added the ability to set platform-specific numbers in here (eg. 0 default, 1 console, 2 mobile) - but not for quality levels on a single platform. Even trying to set the min lod in BP with some logic to check the current quality level, you can only GET the value and not SET it