Jump to content

xLODGen - Terrain LOD beta 128 for FNV, FO3, FO4, FO4VR, TES5, SSE, TES5VR, ENDERAL, ENDERALSE


sheson

Recommended Posts

Confirmed - using just LOD4 meshes still results in flickering.

 

Here are the settings used. Log reports app version SSELODGen 4.1.3b EXTREMELY EXPERIMENTAL Terrain LOD BETA x64 (B97D7181):

 

It is how the engine works, it first loads all the full textures before it hides the terrain LOD underground. Redo the vanilla test, but only with the new terrain LOD textures and the too dark noise texture which makes the difference so obvious. Or just do it with vanilla LOD in snowy areas. You will see the same thing happening but it is less obvious with the much larger triangles of the vanilla terrain LOD meshes.

 

Consider using a a higher quality maybe like 5, so there is a little more elevation differences. Then adjust the noise texture so there is less difference between the full terrain textures and the LOD textures. 

Edited by sheson
Link to comment
Share on other sites

It is how the engine works, it first loads all the full textures before it hides the terrain LOD underground. Redo the vanilla test, but only with the new terrain LOD textures and the too dark noise texture which makes the difference so obvious. Or just do it with vanilla LOD in snowy areas. You will see the same thing happening but it is less obvious with the much larger triangles of the vanilla terrain LOD meshes.

 

Consider using a a higher quality maybe like 5, so there is a little more elevation differences. Then adjust the noise texture so there is less difference between the full terrain textures and the LOD textures. 

Using vanilla meshes with xLODGen textures, there is - except for some large non-flickering triangles - a smooth transition between full-quality and LOD textures via a fading pixel-level dithering effect:

 

With xLODGen meshes+textures, there is a highly pronounced pattern of little squares that flicker a bunch and seem to be exempted from the fading pixel-level dithering:

Link to comment
Share on other sites

Update:

 

Tried generating meshes with various LOD4 quality levels:

 

5: almost no flickering / much closer to vanilla

2: fair amount of flickering, but the pattern is triangles instead of little squares

0: tons of flickering and little squares (this is what I've been using)

-1: fair amount of flickering, game crashed after a minute or so

 

Not sure why STEP recommends LOD4 quality 0 when it flickers so badly.

Link to comment
Share on other sites

Update:

 

Tried generating meshes with various LOD4 quality levels:

 

5: almost no flickering / much closer to vanilla

2: fair amount of flickering, but the pattern is triangles instead of little squares

0: tons of flickering and little squares (this is what I've been using)

-1: fair amount of flickering, game crashed after a minute or so

 

Not sure why STEP recommends LOD4 quality 0 when it flickers so badly.

Using STEP recommended xLODGen textures + meshes, I don't get the flicker (or pixellation) you are seeing in that second vid using LOD4 Q=0 at very similar view distance/angle/speed. Landscape transition is smooth. I do get some flicker with water and objects at the 4x4 cell border. I also don't see the sharp line you are seeing at the transition in both vids.

 

I am thinking that some of this may be either hardware, drivers, settings or maybe that I am testing against STEP build and using a different complement of landscape textures and meshes. I am also running with all LOD gen completed if that makes any diff. Really, there could be all kinds of reasons or all may contribute (my specs are in sig).

 

I'd love to hear if anyone running STEP 0.3.0b with current xLODGen settings is seeing what you are seeing. If so, then that would rule out build/game-settings as the fix and would point more to hardware/drivers-settings.

Link to comment
Share on other sites

Flicker happens when two 3D objects with occupy the same 3D space. It is more obvious if the textures are different.

 

Quality 0 means that almost every terrain LOD triangle matches matches exactly the same 3D space as the full terrain triangles. 

 

Higher quality values mean less detail, terrain LOD triangles are larger and do not match anymore. Some are lower than full terrain and some are higher. Less flicker, just larger patches of one or the other while both are still showing.

 

Once you have perfectly matching terrain LOD textures with an appropriate noise texture it is less obvious.

 

I never really noticed this before, because this delay of unloading terrain meshes seems to be another new screw up in Skyrim Special Edition. Skryim seems to switch instantly.

 

Edit: Based on that realization, see what happens if you set [Display] bEnableLandFade=0 in SkyrimCustom.ini. The setting is new in Skyrim Special Edition.

Edited by sheson
  • +1 1
Link to comment
Share on other sites

[Display] bEnableLandFade=0 seems to be a massive improvement. It's also a misleading name, because the game still does a non-instant change from LOD4 to full detail when a new cell comes into range - it just doesn't try to do the dithering thing.

 

I wonder what would happen if xLODGen had the option to generate meshes that are just slightly lower than they should be, though.

 

 

On the separate subject of noise textures:

 

I've been messing with generating my own, and I'm curious what grey level is considered neutral, such that it wouldn't change the LOD texture brightness at all. Does anyone know?

 

Also, I noticed that lowering opacity (such that the texture is more translucent in the paint program) appears to actually darken the LOD textures, so I've been leaving it at 100% opaque (zero translucency).

Link to comment
Share on other sites

Looks like even 80% white might be a bit darker than the full quality textures:

 

noise.dds:

5BQB1F2.png

 

Over land:

rJ9bH0p.jpg

 

Over snow:

64wf1Sp.png

 

 

Edit:

 

Here is a noise.dds that I think works pretty well without changing the darkness of the LOD textures: https://mega.nz/file/mtlBXKLL#-AUQTa2l2g4V0aJRCp-davpR1KM5sqYmeq5s794JO3k

 

It has greyscale values between 192 and 255 (basically 75-100%).

Edited by HunterZ
Link to comment
Share on other sites

[Display] bEnableLandFade=0 seems to be a massive improvement. It's also a misleading name, because the game still does a non-instant change from LOD4 to full detail when a new cell comes into range - it just doesn't try to do the dithering thing.

 

I wonder what would happen if xLODGen had the option to generate meshes that are just slightly lower than they should be, though.

If terrain heights don't match, then the height shift will be noticeable. The setting solves the issue without any negatives effects as far as I can tell. It seems to fade just as it does in Skyrim.

 

On the separate subject of noise textures:

 

I've been messing with generating my own, and I'm curious what grey level is considered neutral, such that it wouldn't change the LOD texture brightness at all. Does anyone know?

 

Also, I noticed that lowering opacity (such that the texture is more translucent in the paint program) appears to actually darken the LOD textures, so I've been leaving it at 100% opaque (zero translucency).

AFAIK, the alpha channel of the noise texture is not used in the game. Is it possible the used image program "flattens" the image when saving.

 

The exact neutral depends a bit on the resolution of diffuse textures and normal maps, if the normal maps of the landscape textures are baked and the artifacts of the used compression.

 

There is also a difference how the noise is applied in Skyrim and Skyrim Special Edition. In the older game version it has less influence on the bright (snowy) parts, while in Skyrim Special Edition it seems to be applied equally.

Edited by sheson
  • +1 1
Link to comment
Share on other sites

So the vanilla world map has visible snow on some of the mountains, and xLODGen's generated world map does not. I don't care if it's accurate or not - vanilla looks subjectively better to me. My understanding is that this is because Bethesda pulled some kind of trick when generating the vanilla LOD32 textures, to make up for the fact that dynamic snow is not applied on the world map?

 

Has anyone replicated the vanilla trickery? If it involves brightening snow textures prior to LOD32 generation, does anyone have a decent set of textures available?

 

It also looks like maybe the entire vanilla world map is brighter, so maybe I'll try cranking the gamma way up on LOD32 and see what happens.

 

Vanilla world map (note snow on mountain):

m9ejN3J.png

 

xLODGen world map (note lack of snow on mountain):

HDT177w.png

 

xLODGen in-game (note snow on mountain):

Gjhj7eu.png

Edited by HunterZ
Link to comment
Share on other sites

So the vanilla world map has visible snow on some of the mountains, and xLODGen's generated world map does not. I don't care if it's accurate or not - vanilla looks subjectively better to me. My understanding is that this is because Bethesda pulled some kind of trick when generating the vanilla LOD32 textures, to make up for the fact that dynamic snow is not applied on the world map?

 

Has anyone replicated the vanilla trickery? If it involves brightening snow textures prior to LOD32 generation, does anyone have a decent set of textures available?

 

It also looks like maybe the entire vanilla world map is brighter, so maybe I'll try cranking the gamma way up on LOD32 and see what happens.

 

Vanilla world map (note snow on mountain):

 

 

xLODGen world map (note lack of snow on mountain):

 

 

xLODGen in-game (note snow on mountain):

 

Just to be clear, LOD level 32 terrain textures are also used normally for the very far distant LOD in the game and not only on the map. Of course it is possible to use high settings that it is pushed beyond the max render distance of about a 100 cells.

 

Comparing vanilla tamriel.16.0.0.dds with tamriel.32.0.0.dds for example does not show any differences in brightness or snow.

 

The map view also uses the noise.dss applied to terrain LOD textures, but also has these INI settings to further mess it up.

 

fMapMenuOverlaySnowScale=0.0000
fMapMenuOverlayScale=0.0000
fMapMenuOverlayNormalSnowStrength=0.4000
fMapMenuOverlayNormalStrength=1.1000
sWorldMapOverlayNormalSnowTexture=Data\Textures\Terrain\WorldMapOverlaySnow_n.dds
sWorldMapOverlayNormalTexture=Data\Textures\Terrain\WorldMapOverlay_n.dds
 
Since there is no specific indication what is "snow" in a texture, there must be some kind of brightness threshold that determines when it uses the sWorldMapOverlayNormalSnowTexture.
 
The object LOD covered in snow uses the material object snow LOD shader. I am pretty sure the sWorldMapOverlayNormalTexture is also applied to object LOD. Though I am not sure if either map overlay texture is applied when object LOD has a snow shader. Never cared enough to check in detail.
Edited by sheson
Link to comment
Share on other sites

These sound like starting points, not answers. Does this mean that nobody has cracked the snow thing and shared what they did? Does everyone either play with reduced snow on the world map, or use someone else's pre-generated LOD32s that might not match installed landscape mods? Yikes!

 

Is there a way to get xLODGen to only generate LOD32 textures and skip LOD4/8/16 so that I can save time playing with this?

Link to comment
Share on other sites

These sound like starting points, not answers. Does this mean that nobody has cracked the snow thing and shared what they did? Does everyone either play with reduced snow on the world map, or use someone else's pre-generated LOD32s that might not match installed landscape mods? Yikes!

 

Is there a way to get xLODGen to only generate LOD32 textures and skip LOD4/8/16 so that I can save time playing with this?

It is just darker than you are used to.

 

As mentioned in the first post:

 

I did some testing in the different games, but finding the best combinations of options and settings requires lots of testing and are a matter of personal opinion and which game is used, the load order, mods, even different worldspaces probably.

That means, I am only able to give generic guidelines and hints to sent you off to find and test for yourself and share your results. My main interested is that generations works correctly and without problems for now.

 

There are no single "correct" settings that apply for all games, load orders and personal preferences. Lots of people use the map textures with roads painted onto them, which replace vanilla/generated LOD textures anyways.

 

The last section in the Terrain-LOD-Readme.txt explains how to use Specific Chunk. Check it and change the drop down to LOD level 32. If you also set W to 0 and S to -32 it will only generate the texture that covers the throat of the world.

 

You can generate "wrong" LOD 32 textures only by changing the brightness/contrast/gamma for LOD level 32 only.

Edited by sheson
  • +1 1
Link to comment
Share on other sites

Regarding snow on the world map: sheson's brightness threshold theory appears to be correct!

 

I tried generating Tamriel LOD32 data with brightness=128, contrast=0, gamma=1.0, and the result is that the entire map is a snowy wasteland:

8Jf5dBf.png

 

Repeatedly dividing the brightness by 2 each iteration and regenerating got me a closer-to-vanilla result at brightness=16, contrast=0, gamma=1.0:

zeFZiEQ.png

 

Brightness=0, contrast=0, Gamma=2.0 looks possibly even better:

2Z5j0n4.png

 

Finally, here is brightness=0, contrast=128, gamma=1.0, which I think may look best of all (details seem to pop, and colors look pretty similar to vanilla):

VRjqyPp.png

 

I was curious whether these changes might show up in-game, so I regenerated with -255 brightness for LOD4/8/16 so that everything would be black except for the nearby full-detail cells and LOD32. It was hard to tell due to mountains being primarily made up of rock objects, but LOD32 seems to only get used in-game for super-distant stuff like land beyond the borders of Skyrim. Personally I think this makes it pretty safe to optimize LOD32 settings for the world map use case and not worry about in-game effects.

 

Edit: In case anyone is interested in some of the intermediate tests, you can find more screenshots here: https://imgur.com/gallery/JPMuJAr

Edited by HunterZ
Link to comment
Share on other sites

Way to go on the testing! (your more images link does not render anything for me for some reason ... I access that site often, so pretty sure it's the link)

 

Very interesting ... I have a feeling that contrast=64 and gamma=1.2 may look even better while keeping non-snow colorful and relatively darker still without affecting snow too much.

 

I love your idea for -255 brightness ... it's very instructive for verifying terrain position and transitions.

 

For LOD32 in game, try using console:

~cow tamriel 13 -13

That will put you at the top of the map to test.

 

Also, you may get even better results by increasing the following just a tad bit in the game INI (according to our DY's work on these settings under SLE):

fMapMenuOverlaySnowScale=0.00001

fMapMenuOverlayScale=0.00001
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Guidelines, Privacy Policy, and Terms of Use.