Jump to content

[WIPz] TES5LODGen


zilav

Recommended Posts

Hi, I've been trying to generate LOD for Skyrim and what I've done is change the Mountain LOD meshes so that the first level is actually pointing at the full models and then I've propergated each level up as to get more detail. The plan is to get a more detailed landscape, and keep uGrids to 5 so as to avoid loading in actors, etc.

 

The problem is that on the LOD0 the snow shader always completely covers the model, as can be seen below, where I have emphasised the HD snow material by making it green. It doesn't matter what the snow shader settings are, it always does a complete blanket of the model.

 

Any ideas?

 

I've tried both the stand alone tool and the TES5Edit versions.

 

aj5pCzC.gif

Link to comment
Share on other sites

  • Replies 140
  • Created
  • Last Reply

Top Posters In This Topic

  • zilav

    50

  • Sheson

    38

  • Prometheus

    22

  • Deathbydestiny

    4

Top Posters In This Topic

Posted Images

From my experience snow shader coverage on LOD models depends on tangents, shape size in generated LOD nifs and normal map. It also differs from the real snow shader used for full models. Your best bet is to experiment in a custom worldspace.

Using full models in LOD will skyrocket generated LOD size leading to increased memory consumption and infinite loading screens. It can work for rarely used models, but definitely not for mountains, they are literally everywhere in Skyrim. I think that vanilla mountain LOD meshes are really good in Skyrim, don't know why you want to change them.

Link to comment
Share on other sites

Hi, I've been trying to generate LOD for Skyrim and what I've done is change the Mountain LOD meshes so that the first level is actually pointing at the full models and then I've propergated each level up as to get more detail. The plan is to get a more detailed landscape, and keep uGrids to 5 so as to avoid loading in actors, etc.

 

The problem is that on the LOD0 the snow shader always completely covers the model, as can be seen below, where I have emphasised the HD snow material by making it green. It doesn't matter what the snow shader settings are, it always does a complete blanket of the model.

 

Any ideas?

 

I've tried both the stand alone tool and the TES5Edit versions.

I have been doing some tests within DynDOLOD mesh rules and this recently, so you are in luck :)

You will notice there is a LOD snow shader and a HD LOD snow shader.

The HD LOD snow shader works correctly with certains LOD mountains only. They have bi/tangents done in a certain way.

To make sure the HD LOD shader is only used for the correct type of LOD mountains that support it add this to the export file that is used by LODGen.exe

UseHDFlag=true

NotHDMeshMask=nif

IsHDMeshMask=_lod_0

Then run LODGen manually from prompt. LODGen.pas still prints out the command line I think? Let me know if you need help with this.

Make sure to have the latest xEdit with LODGen.exe 0.8

Once you did that it will use the more suitable LOD snow shader for full model mountains instead of the HD LOD shader.

Then you will notice that the LOD snow shader is darker than the normal snow shaders. That can be changed of course.

There is however still a big visual change in the snow cover from the LOD snow shader to one of the full snow shaders. Some more than others.

You may also notice that LOD objects do not receive shadows, which can also lead to quite some flickering for a second when LOD models changes to full model even without snow cover.

I find the change in the snow coverage so much more distracting than the whole model changing, you will see what I mean :)

The amount of LOD shaders are hard coded :( objSnow, objSnowHD, objAsh, objAshHD, these are the identifiers used in the bto to match to SnowLODMaterial, SnowLODMaterialHD

If I ever find time and enough motivation I might check if this can be "fixed" with a SKSE plugin. However, I wouldn't mind anyone else who has more experience than I with SKSE plugins to take a look :)

Zilav has valid point though, the LOD mountains are actually not too bad looking compared to other LOD objects. So there is so much else to work on for me before addressing this.

Link to comment
Share on other sites

Yes, it will create atlas(es) from untiled textures below the defined max resolution. Larger ones or tiled will remain separate.

Link to comment
Share on other sites

On the big mountains in skyrim , they use those hd textures , any advice on how to use those if we will use tes5gen ? What to put in the worldspce hd texture lod entry?

I was planning to do new mountains for my worldspce and wanted to be shre to make them right , anything I Should be aknowledged of when modeling and exporting them to be great looking from distance too?

Link to comment
Share on other sites

On the big mountains in skyrim , they use those hd textures , any advice on how to use those if we will use tes5gen ? What to put in the worldspce hd texture lod entry?

I was planning to do new mountains for my worldspce and wanted to be shre to make them right , anything I Should be aknowledged of when modeling and exporting them to be great looking from distance too?

Nothing, HD texture in worldspace properties is not used by TES5LODGen.

You can use any number of those now. Textures resolution only determines if they will be put on atlas during LOD generation on remain separate.

However HD LOD flag on statics is used, and in theory the game should use a better quality shader for such objects when in LOD, but I'm personally yet to see a visual difference in game compared to just using a hires texture.

Link to comment
Share on other sites

Thank Sheson for looking into this.

 

To make sure the HD LOD shader is only used for the correct type of LOD mountains that support it add this to the export file that is used by LODGen.exe
UseHDFlag=true
NotHDMeshMask=nif
IsHDMeshMask=_lod_0
Then run LODGen manually from prompt. LODGen.pas still prints out the command line I think? Let me know if you need help with this.
Make sure to have the latest xEdit with LODGen.exe 0.8

 

 

What is the export file? Is it the "LODGen.pas" file? Also any links on using LODGen from a prompt? Sorry newbie here.

 

The amount of LOD shaders are hard coded :( objSnow, objSnowHD, objAsh, objAshHD, these are the identifiers used in the bto to match to SnowLODMaterial, SnowLODMaterialHD
If I ever find time and enough motivation I might check if this can be "fixed" with a SKSE plugin. However, I wouldn't mind anyone else who has more experience than I with SKSE plugins to take a look

 

The thing is that I'm actually working on a regional snow and ice mod. So I have different Mountain types. Like powdered snow, icy rocks, etc. Obviously my problem is that, the transitions between these different types is pretty horrible at the moment due to LOD using just the one shader. If a solution for having more than one snow shader could be done then that would be fantastic.

 

[edit] Actually you can check out the mod, I've posted it on Nexus, minus the LOD of course. http://www.nexusmods.com/skyrim/mods/65882

Link to comment
Share on other sites

Thank Sheson for looking into this.

 

 

What is the export file? Is it the "LODGen.pas" file? Also any links on using LODGen from a prompt? Sorry newbie here.

 

 

The thing is that I'm actually working on a regional snow and ice mod. So I have different Mountain types. Like powdered snow, icy rocks, etc. Obviously my problem is that, the transitions between these different types is pretty horrible at the moment due to LOD using just the one shader. If a solution for having more than one snow shader could be done then that would be fantastic.

 

[edit] Actually you can check out the mod, I've posted it on Nexus, minus the LOD of course. http://www.nexusmods.com/skyrim/mods/65882

 

 

When you run LODGen.pas or the built-in Objects LOD generator they will create the file TES5Edit\Edit Scripts\LODGen.txt that is used by LODGen.exe to generate the static LOD

 

After you edit the file, you can start LODGen.exe directly from a command prompt with 

lodgen.exe "LODGen.txt" --removeUnseenFaces

Link to comment
Share on other sites

When you run LODGen.pas or the built-in Objects LOD generator they will create the file TES5Edit\Edit Scripts\LODGen.txt that is used by LODGen.exe to generate the static LOD

 

After you edit the file, you can start LODGen.exe directly from a command prompt with 

lodgen.exe "LODGen.txt" --removeUnseenFaces

 

OK that worked great!

 

Remember when everybody went through a frenzy of upping their UGrids to 7,9 and even 11? I'm curious to what people on average still use? Maybe most people don't even know what this is?

 

Anyway the plan was to generate a more detailed hi-res LOD, and users can lower their UGrids back down to 5. After all they were just upping this for the terrain. Not loading in distant actors, spawns, animations, etc should save on performance, while still getting a full detailed model at a distance. Don't worry I've tried the full lod model ESPs and they grind to halt, like I got 2fps looking over Skyrim, so I think this could be a good medium.

 

I didn't notice any fps drop when generating the full model mountains at lod0.

 

I find the change in the snow coverage so much more distracting than the whole model changing, you will see what I mean

This is completely fine, much, much, much better than a full model change.

 

So my thoughts are doing the full models for some select things. Mountains, Rocks, Cliffs, Dirt Cliffs, Buildings, and anything else that requires attention, outside of trees, grass, etc

 

Actually is there a quick way to build lod0 straight off the World Space without having to specify each model? Hmmm, I remember Zilav doing something like that for Skyblivion. Would be good just to stress test this type of level of detail.

Link to comment
Share on other sites

OK that worked great!

 

Remember when everybody went through a frenzy of upping their UGrids to 7,9 and even 11? I'm curious to what people on average still use? Maybe most people don't even know what this is?

 

Anyway the plan was to generate a more detailed hi-res LOD, and users can lower their UGrids back down to 5. After all they were just upping this for the terrain. Not loading in distant actors, spawns, animations, etc should save on performance, while still getting a full detailed model at a distance. Don't worry I've tried the full lod model ESPs and they grind to halt, like I got 2fps looking over Skyrim, so I think this could be a good medium.

 

I didn't notice any fps drop when generating the full model mountains at lod0.

 

This is completely fine, much, much, much better than a full model change.

 

So my thoughts are doing the full models for some select things. Mountains, Rocks, Cliffs, Dirt Cliffs, Buildings, and anything else that requires attention, outside of trees, grass, etc

 

Actually is there a quick way to build lod0 straight off the World Space without having to specify each model? Hmmm, I remember Zilav doing something like that for Skyblivion. Would be good just to stress test this type of level of detail.

 

 

This applies to both DynDOLOD Worlds.pas  

 

Set a mesh rule like

 

Mesh		LOD4		LOD8		LOD16		VWD Only
\dirtcliffs\	Full model	Static LOD4	Static LOD8	Yes	
this will apply to every full model in the landscape\dirtcliffs folder

for LODGen.pas because there are no default LOD models for dirtcliffs do not check VWD. Also there won't be any LOD4 or LOD8 models ...

 

Keep in mind though, while the mountainslab was already a single tiled texture used for LOD in the vanilla game, this will create more tiled textures in the LOD that can not be merged/batched  into an atlas texture.

If you do many of those you will see draw calls (can be checked with ENB) rise sharply at one points past a certain amount, causing drastic FPS drops when looking certain directions. 

 

Also, while full models in loaded cells can have replacement textures for different landscapes set in CK, LOD can not. You will have to create full model texture variants yourself.

 

The results are stunning I tested this a bit. But for DynDOLOD I went the normal LOD route because using full models like this is only for the best hardware.

 

If you want to seriously do this I suggest to use the scanning and matching of DynDOLOD Worlds.pas. Create full model versions with _lod_0.nif and rename existing lod_0 to lod_1 etc.

Just have a look at the amount of dirtcliffs LOD I ship with DynDOLOD because of the different landscape textures.... ;)

 

See TES5Edit\Edit Scripts\DynDOLOD\DynDOLOD_textures_names.txt

Link to comment
Share on other sites

I edited this post, because it was full of questions, but I've managed to figure out a bunch of things on my own.

Link to comment
Share on other sites

  • 2 years later...

Hey, sorry if this is covered somewhere I am missing, but I haven't had much luck tracking down the answer. I am using a newer (beta?) of xLODGen (zip says 6.7) which can generate landscape terrain as well as object and tree LOD and I'm having issues with the textures for the terrain. It seems to only generate a generic grass/moss-like texture which fades out as the actual textures fade in. No roads or the custom textured beaches we have are showing up in the LOD pass. I'm sure it's something simple but I'm at a loss at the moment. Any help would be greatly appreciated, thanks guys.

Link to comment
Share on other sites

  • 5 weeks later...

xLODGen for SSE has been my favourite toy for a couple of weeks. Skyrim looks like a new game, now!

Its impressive definition also makes bad texture choices very unforgiving in the big picture. Who said Beth's landscape textures were bad? IMHO there isn't a pack out there that gets it all to blend so well. I have texture replacers for mountains, flora, architecture, dungeons - but can't find any really good replacer for beth's terrain. And the good thing is, I don't feel I need to! https://imgur.com/a/NmAJkaL

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...