Jump to content

Question

Posted

Hi, writing about support for the new Community Shaders PBR assets. Hopefully not much would be needed from your side. I will mention some facts I believe are causing issues with LODs. Because the PBR textures are incompatible with vanilla, we use unique paths (textures/pbr/ prefix) to avoid unintended meshes from using one of them and looking wrong. Meshes that use PBR can be distinguished by the Unused01 property in Shader Flags 2. PBR albedo is brighter than vanilla diffuse and is saved in dds with the sRGB flag, which converts it to linear on the gpu. Now the problems:

  1. Some object LODs seem to be using regular textures, for example mountains. Because LODs won't use the PBR shader, using unmodified PBR textures makes it look wrong. This is our issue and I think authors can just generate lower res textures in the vanilla paths that will only be used for these LODs. I don't know how many LODs actually use regular textures but hope not many.
  2. TexGen seems to ignore PBR textures. I suppose TexGen always uses vanilla paths and ignores Texture Set records, otherwise I don't know why this would happen. In this case it would be nice to take texture set paths into account, or check if a PBR path exists before vanilla one. For landscapes we could also have authors generate low res versions at vanilla paths, but it's not viable to do this for everything.
  3. DynDOLOD uses PBR textures, but probably because of the sRGB flag (which converts them to linear) the LODs are too dark. This happens to tree LODs, objects such as farmhouses and nordic ruins seem good, but not sure. This would probably happen in the textures in the previous point too if they weren't ignored. From our experiments vanilla diffuse is roughly halfway between usual PBR albedo brightness in linear and sRGB. So it would be best to do something like apply power of 1/1.5 to make the brightness consistent with vanilla. Ideally it could be multiplied with ambient occlusion and adjusted based on metalness which are in another texture, but that's not needed.

Hopefully I got the reasons for why it doesn't work right, I will include some comparison screenshots and links to PBR assets so you can try it yourself. Thank you for taking the time to read this and I hope this can be supported. Oh and feel free to ping me or others on CS or Cathedral discord, I might forget to check back here for some time.

https://imgsli.com/Mjg5ODQ5
https://imgsli.com/Mjg5ODUy
https://imgsli.com/Mjg5ODU0
https://imgsli.com/Mjg5ODU1

More info about our PBR implementation: https://github.com/doodlum/skyrim-community-shaders/wiki/True-PBR

Some assets to try:

Trees - https://mega.nz/file/dqdzGLwY#jBJFwPIWv7iX314UEKZnHCRvlITLbXI7saLY-4oV6Nw

Farmhouses - https://mega.nz/file/duUxDKiA#mnzDzjBFXEIDq-MFoucOHRJT55wOmbUNHOLZ5JxG3lY

Lots of other stuff - https://onedrive.live.com/?authkey=!AB5oYH6iqIMDkHM&id=C23FB01B59FA671C!2427&cid=C23FB01B59FA671C

Recommended Posts

  • 0
Posted
  On 3/10/2025 at 1:42 AM, LiterallyACat said:

Via Asset Doctor:

reference 990011A9 (base 380011E9 from DynDOLOD.esm) > missing texture SteamLibrary\steamapps\common\Skyrim Special Edition\data\textures\pbr\architecture\tents\smallimperialtentlinear.dds (mesh short path: lod\tents\smallimperialtent_lod_0.nif)
reference 990011A6 (base 380011EA from DynDOLOD.esm) > missing texture SteamLibrary\steamapps\common\Skyrim Special Edition\data\textures\pbr\architecture\tents\largeimperialtentlinear.dds (mesh short path: lod\tents\largeimperialtent01_lod_1.nif)

I seem to consistently be having either DynDOLOD or TexGen miss linear textures.  This one seems not to ever get created, but it seems that mountainslab01/02linear.dds are also sometimes skipped; if I rerun TexGen and DynDOLOD without deleting the previous files, usually they do get created.

Below, I do have the section of DynDOLOD_SSE_log.txt containing all of the linear textures that were created.

  Reveal hidden contents

 

Here is the full log. 

Here are all of the logs, including DynDOLOD_SSE_log.txt.

To test this to get better details, do I need to run both TexGen and DynDOLOD?


My apologies in advance if I forget to check in again.

Expand  

The last session is just starting and closing DynDOLOD, so there isn't really anything useful in the DynDOLOD debug log.

All sessions seem to be an update an update to an DynDOLOD output. Do the missing textures not exist in the old and active DynDOLOD output?
The initial session that created the DynDOLOD output from scratch is not in the DynDOLOD log anymore.

What is the actual path of the textures on the texture sets used by the reported base records like 380011E9?
The texture set has the form ID xx0011B8 and the path is textures\pbr\architecture\tents\smallimperialtentlinear.dds?

Delete all old logs, hide/deactivate all old output and do a generation from scratch. Is everything genreated then?
Just do one worldspace and no occlusion for a test.

In addition the TexGen output seems to have outdated billboards and should also be generated from scratch beforehand.

  • 0
Posted

Oops, I hadn't realized that I'd opened DynDOLOD again in the interim.

  Quote

All sessions seem to be an update an update to an DynDOLOD output. Do the missing textures not exist in the old and active DynDOLOD output?

Expand  

The textures for the tents would not generate whether I ran TexGen and DynDOLOD from scratch, or on top of old active output.  I checked for smallnordtentlinear in MO2's VFS Data tab view in the right pane and it wasn't in there;  I also looked through the DynDOLOD and TexGen outputs manually for it.
 

  Quote

What is the actual path of the textures on the texture sets used by the reported base records like 380011E9?
The texture set has the form ID xx0011B8 and the path is textures\pbr\architecture\tents\smallimperialtentlinear.dds?

Expand  

TX00 - Diffuse: pbr\architecture\tents\smallimperialtentlinear.dds
TX01 - Normal/Gloss: pbr\architecture\tents\smallimperialtent_n.dds
 

  Quote

In addition the TexGen output seems to have outdated billboards and should also be generated from scratch beforehand.

Expand  

Ah, the ones for Freak's Floral Fields usually take 80% of TexGen's running time, so I may have been desperately attempting to avoid regenerating them, as I was much more concerned about my mountain LODs being purple.

I seem to now be unable to reproduce this issue after running DynDOLOD three times.  I have no idea what I changed between then and now, because I had tried redoing both TexGen and DynDOLOD from scratch before without luck, prior to just running them with the old outputs when that didn't work.  I probably just needed to reboot, or maybe I forgot to stop AMD Adrenalin Edition's processes.  I'm hoping I can reproduce it in the future.

I apologize for any inconveniences I may have caused.

  • 0
Posted
  On 3/11/2025 at 2:39 AM, LiterallyACat said:

Oops, I hadn't realized that I'd opened DynDOLOD again in the interim.

The textures for the tents would not generate whether I ran TexGen and DynDOLOD from scratch, or on top of old active output.  I checked for smallnordtentlinear in MO2's VFS Data tab view in the right pane and it wasn't in there;  I also looked through the DynDOLOD and TexGen outputs manually for it.
 

TX00 - Diffuse: pbr\architecture\tents\smallimperialtentlinear.dds
TX01 - Normal/Gloss: pbr\architecture\tents\smallimperialtent_n.dds
 

Ah, the ones for Freak's Floral Fields usually take 80% of TexGen's running time, so I may have been desperately attempting to avoid regenerating them, as I was much more concerned about my mountain LODs being purple.

I seem to now be unable to reproduce this issue after running DynDOLOD three times.  I have no idea what I changed between then and now, because I had tried redoing both TexGen and DynDOLOD from scratch before without luck, prior to just running them with the old outputs when that didn't work.  I probably just needed to reboot, or maybe I forgot to stop AMD Adrenalin Edition's processes.  I'm hoping I can reproduce it in the future.

I apologize for any inconveniences I may have caused.

Expand  

It did create the smallnordtentlinear textures when running from scratch?

  • 0
Posted (edited)
  On 3/11/2025 at 8:42 AM, sheson said:

It did create the smallnordtentlinear textures when running from scratch?

Expand  

Yes, it did. :)

Today, I updated xLODGen (from scratch), TexGen (from scratch), and DynDOLOD (from lazy) to new landscape and mountains textures, and it seems that while the logs say DynDOLOD created the linear textures, I loaded in and they looked like they were the old ones.  I checked in my DynDOLOD_Output mod, which I had overwritten with the new output via cut and paste (a good modder would clear the output, but I'm lazy) and the linear textures are the ones I made 3 days ago.  I checked the DynDOLOD's output at H:\MOD\DynDOLOD\DynDOLOD_Output (since it was a cut and paste, any files that would have not copied if I'd accidentally told it to skip instead of overwriting) and it was empty.

I also checked the TexGen textures (mountainslab01pbr and mountainslabpbr) and they are definitely using the new mountain textures I installed.

Here are those logs:
https://mega.nz/file/LNUxzaSI#wuZwXyVvbJNYsEGeWvH0awKRbMrtmuYoAe--FRIzYzU

I'll go ahead and update from scratch on DynDOLOD this time.

Is updating DynDOLOD supposed to update to new textures, or was I mistaken?  Should I offer more firstborns?

EDIT:  it looks like it generated all the textures when I ran it from scratch.

Edited by LiterallyACat
  • 0
Posted
  On 3/13/2025 at 6:05 AM, LiterallyACat said:

Yes, it did. :)

Today, I updated xLODGen (from scratch), TexGen (from scratch), and DynDOLOD (from lazy) to new landscape and mountains textures, and it seems that while the logs say DynDOLOD created the linear textures, I loaded in and they looked like they were the old ones.  I checked in my DynDOLOD_Output mod, which I had overwritten with the new output via cut and paste (a good modder would clear the output, but I'm lazy) and the linear textures are the ones I made 3 days ago.  I checked the DynDOLOD's output at H:\MOD\DynDOLOD\DynDOLOD_Output (since it was a cut and paste, any files that would have not copied if I'd accidentally told it to skip instead of overwriting) and it was empty.

I also checked the TexGen textures (mountainslab01pbr and mountainslabpbr) and they are definitely using the new mountain textures I installed.

Here are those logs:
https://mega.nz/file/LNUxzaSI#wuZwXyVvbJNYsEGeWvH0awKRbMrtmuYoAe--FRIzYzU

I'll go ahead and update from scratch on DynDOLOD this time.

Is updating DynDOLOD supposed to update to new textures, or was I mistaken?  Should I offer more firstborns?

EDIT:  it looks like it generated all the textures when I ran it from scratch.

Expand  

If a on demand textures like the *linear.dds already exists in the load order or the output folder it will not be created again.
For now you would have to delete them beforehand manually.

  • +1 1
  • 0
Posted
  On 3/13/2025 at 7:08 AM, sheson said:

If a on demand textures like the *linear.dds already exists in the load order or the output folder it will not be created again.
For now you would have to delete them beforehand manually.

Expand  

Thanks for the info, Sheson!  I appreciate you!

  • 0
Posted

Hi Sheson. I'm the guy with the lod problem from the Cathedral Discord.
I've updated everything at the recent version and followed the order (parallexgen first, xlodgem, txgen and dyndolod), but still when i use PBR textures a lot of my lods looks like vanilla until i get near. That's an example with a glacier. I use Faultier's skyrim. Any idea? 

https://imgur.com/a/mtA6lYf

  • 0
Posted
  On 3/25/2025 at 7:34 PM, Wyxill said:

Hi Sheson. I'm the guy with the lod problem from the Cathedral Discord.
I've updated everything at the recent version and followed the order (parallexgen first, xlodgem, txgen and dyndolod), but still when i use PBR textures a lot of my lods looks like vanilla until i get near. That's an example with a glacier. I use Faultier's skyrim. Any idea? 

https://imgur.com/a/mtA6lYf

Expand  

Read https://dyndolod.info/Official-DynDOLOD-Support-Forum#Post-Logs which DynDOLOD log and debug log to upload when making posts.
Also upload ..\DynDOLOD\Logs\DynDOLOD_SSE_Object_Report.txt

Post a useful screenshot of the full model with more informative console as explained in https://dyndolod.info/Official-DynDOLOD-Support-Forum#In-Game-Screenshots

https://dyndolod.info/Help/TexGen#Rendered-Object-LOD-Textures
Note that the list of rendered object LOD textures is not covering all vanilla rendered object LOD textures. It can update the rendered object LOD textures for the walled cities and most structures. However, far away mountains, icebergs and glaciers are not yet covered. If a mod makes changes to these relevant full textures, it should also include updated pre-rendered object LOD textures.

You may want to have a look at Icy Mesh Remaster - Ice Glaciers - LOD - other fixes as it comes with its own LOD assets with LOD textures that can be updated.

  • 0
Posted
  On 3/26/2025 at 12:31 AM, Wyxill said:

Here we go sir should be everything

https://ufile.io/urz83yxt

Expand  

The logs show that the vanilla LOD model is being used, which uses glacierpillarlod.dds. So the second half of my earlier post applies. The mod replacing the full models and/or its textures should also replace glacierpillarlod.dds etc. or include an updated LOD model with its own textures which can preferably be updated by TexGen, similar to what the already mentioned mod does.

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.