Jump to content

DynDOLOD 3.00 Alpha 180


sheson

Recommended Posts

Hello,

DynDOLOD 3 α84 + Resources α22 in SSE mode

[03:11] <Error: File not found>
[03:19] <Warning: File not found textures\effects\fxwhitewater02_falls_n.dds. Used by meshes\lod\waterfalls\fxwaterfallbodytallpassthru_lod.nif Skyrim.esm FXWaterfallBodyTall_static [STAT:000FC85E]>
  • First error message is worrisome but doesn't give any details. Exactly the same message appears in Debug log, without any more context or details. However it's almost certain that it's linked to the warning after it, because resolving the issue that causes the warning also suppresses the first error. Sometimes they appear in reverse order (Warning first, Error second) which may due to multiple processes or threads writing to the same output stream, I'm guessing.
  • Second warning message is confusing and misleading. It refers to a mesh provided by DynDOLOD Resources, but the actual mesh that's the root of the issue is in meshes/effects and is meshes/effects/fxwaterfallbodytall.nif.
  • Same issue occurs with fxwaterfallbodyslope.nif, fxwaterfallbodytall.nif and fxwaterfallbodytall02.nif.

These meshes come from Water Effects Brightness and Reflection Fix - Realistic Water Two Patch. They tweak some BSShaderProperty lighting/emission/reflection parameters and are otherwise identical to the meshes of Realistic Water Two SE.

As far as I can see in NifSkope, textures\effects\fxwhitewater02_falls_n.dds is not referenced by the mesh so I don't know why DynDOLOD thinks it needs it.  textures\effects\fxwhitewater02_falls.dds is used by the mesh as the 'Source Texture' property of a BSShaderProperty.

The corresponding mesh in RWT also uses the same texture in the 'Source Texture' property of the same BSShaderProperty, but doesn't cause any trouble to DynDOLOD.

My rough guess is that the patch mod's meshes don't match any known CRC32 special cases so DynDOLOD falls back to the generic passthru_lod.nif and snafu ensues somehow.

For the time being I removed the patch mod's meshes and reverted to the original RWT meshes to suppress the error/warning messages. But I'm wondering what the results were exactly? From DynDOLOD's point of view, despite the error and warning, everything was fine and the generation process ended successfully. What should I expect in-game in regards to those dynamic waterfall lods?

Full logs at https://drive.google.com/drive/folders/1fQvv6PVQ5uC3w_lQuFlT0K29O6BkgAeO

Should be easy to reproduce if you like: install RWT then the patch mod linked above.

Thanks for your attention.

Link to comment
Share on other sites

9 hours ago, Mousetick said:

Hello,

DynDOLOD 3 α84 + Resources α22 in SSE mode


[03:11] <Error: File not found>
[03:19] <Warning: File not found textures\effects\fxwhitewater02_falls_n.dds. Used by meshes\lod\waterfalls\fxwaterfallbodytallpassthru_lod.nif Skyrim.esm FXWaterfallBodyTall_static [STAT:000FC85E]>
  • First error message is worrisome but doesn't give any details. Exactly the same message appears in Debug log, without any more context or details. However it's almost certain that it's linked to the warning after it, because resolving the issue that causes the warning also suppresses the first error. Sometimes they appear in reverse order (Warning first, Error second) which may due to multiple processes or threads writing to the same output stream, I'm guessing.
  • Second warning message is confusing and misleading. It refers to a mesh provided by DynDOLOD Resources, but the actual mesh that's the root of the issue is in meshes/effects and is meshes/effects/fxwaterfallbodytall.nif.
  • Same issue occurs with fxwaterfallbodyslope.nif, fxwaterfallbodytall.nif and fxwaterfallbodytall02.nif.

These meshes come from Water Effects Brightness and Reflection Fix - Realistic Water Two Patch. They tweak some BSShaderProperty lighting/emission/reflection parameters and are otherwise identical to the meshes of Realistic Water Two SE.

As far as I can see in NifSkope, textures\effects\fxwhitewater02_falls_n.dds is not referenced by the mesh so I don't know why DynDOLOD thinks it needs it.  textures\effects\fxwhitewater02_falls.dds is used by the mesh as the 'Source Texture' property of a BSShaderProperty.

The corresponding mesh in RWT also uses the same texture in the 'Source Texture' property of the same BSShaderProperty, but doesn't cause any trouble to DynDOLOD.

My rough guess is that the patch mod's meshes don't match any known CRC32 special cases so DynDOLOD falls back to the generic passthru_lod.nif and snafu ensues somehow.

For the time being I removed the patch mod's meshes and reverted to the original RWT meshes to suppress the error/warning messages. But I'm wondering what the results were exactly? From DynDOLOD's point of view, despite the error and warning, everything was fine and the generation process ended successfully. What should I expect in-game in regards to those dynamic waterfall lods?

Full logs at https://drive.google.com/drive/folders/1fQvv6PVQ5uC3w_lQuFlT0K29O6BkgAeO

Should be easy to reproduce if you like: install RWT then the patch mod linked above.

Thanks for your attention.

The error happens because DynDOLOD tries to automatically create new LOD textures based on the replaced full model. This fails since the (default) LOD model requires diffuse/normal map while the replaced full model uses a shader that only uses a diffuse.

See https://dyndolod.info/Mods/Waterfalls

Need to check the new mod/patch and update DynDOLOD Resources and add the mod to the that list.

This issue affects further away static object LOD for the waterfalls, so it may be not that obvious if at all.

Link to comment
Share on other sites

7 hours ago, DankTemplar said:

Newest version of Dyndolod 3 alpha has solved my "out of memory issues" so far. Whatever you did Sheshon, it worked! Thanks for the update!

The promised logs and no concrete information about the what and when were provided, nothing was or could be done.

The https://dyndolod.info/Changelog explains what was fixed or changed.

Link to comment
Share on other sites

1 hour ago, sheson said:

The message is verbatim reporting a problem, there is nothing misleading or confusing about it: fxwaterfallbodytallpassthru_lod.nif uses textures\effects\FXwaterTile02_n.dds, which is a vanilla texture and it seems to be missing from the data folder.

But it's not missing. It's there:

image.png

1 hour ago, sheson said:

To see which LOD models are actually used for which base record, check the ..\DynDOLOD\Log\ DynDOLOD_SSE_Object_Report.txt

Relevant excerpt:

Spoiler

FXWaterfallBodyTall [MSTT:0001AC8D] Meshes\effects\fxwaterfallbodytall.nif [CRC32:0DA88E1A] using textures\effects\fxwhitewater02_falls.dds, textures\effects\fxfluidtile01.dds, textures\effects\cloudtile.dds
	fxwaterfallbodytallpassthru_lod.nif FXWaterfallBodyTallInner01 = textures\effects\fxwatertile01.dds -> textures\effects\fxwhitewater02_falls.dds
	fxwaterfallbodytallpassthru_lod.nif FXWaterfallBodyTallFoam = textures\effects\fxwhitewater01.dds -> textures\effects\fxwhitewater02_falls.dds
	Level0: meshes\lod\waterfalls\fxwaterfallbodytallpassthru_lod.nif using textures\effects\fxwatertile01.dds, textures\effects\fxwatertile02_n.dds, textures\effects\fxwhitewater01.dds
	Level1: meshes\lod\waterfalls\fxwaterfallbodytallpassthru_lod.nif using textures\effects\fxwatertile01.dds, textures\effects\fxwatertile02_n.dds, textures\effects\fxwhitewater01.dds
	Level2: meshes\lod\waterfalls\fxwaterfallbodytallpassthru_lod.nif using textures\effects\fxwatertile01.dds, textures\effects\fxwatertile02_n.dds, textures\effects\fxwhitewater01.dds
	Dynamic: meshes\dyndolod\lod\effects\fxwaterfallbodytall_dyndolod_lod.nif using textures\effects\fxwhitewater03.dds, textures\effects\fxwatertile06_n.dds, textures\water\wenb_tint02.dds, textures\effects\fxwhitewater01.dds
	LOD4: Level0
	LOD8: Level1
	LOD16: Level2
	LOD32: Level2
FXWaterfallBodyTallnoLOD [STAT:02017F7A] Meshes\effects\fxwaterfallbodytall.nif [CRC32:0DA88E1A] using textures\effects\fxwhitewater02_falls.dds, textures\effects\fxfluidtile01.dds, textures\effects\cloudtile.dds
	fxwaterfallbodytallpassthru_lod.nif FXWaterfallBodyTallInner01 = textures\effects\fxwatertile01.dds -> textures\effects\fxwhitewater02_falls.dds
	fxwaterfallbodytallpassthru_lod.nif FXWaterfallBodyTallFoam = textures\effects\fxwhitewater01.dds -> textures\effects\fxwhitewater02_falls.dds
	Level0: meshes\lod\waterfalls\fxwaterfallbodytallpassthru_lod.nif using textures\effects\fxwatertile01.dds, textures\effects\fxwatertile02_n.dds, textures\effects\fxwhitewater01.dds
	Level1: meshes\lod\waterfalls\fxwaterfallbodytallpassthru_lod.nif using textures\effects\fxwatertile01.dds, textures\effects\fxwatertile02_n.dds, textures\effects\fxwhitewater01.dds
	Level2: meshes\lod\waterfalls\fxwaterfallbodytallpassthru_lod.nif using textures\effects\fxwatertile01.dds, textures\effects\fxwatertile02_n.dds, textures\effects\fxwhitewater01.dds
	Dynamic: meshes\dyndolod\lod\effects\fxwaterfallbodytall_dyndolod_lod.nif using textures\effects\fxwhitewater03.dds, textures\effects\fxwatertile06_n.dds, textures\water\wenb_tint02.dds, textures\effects\fxwhitewater01.dds
	LOD4: Level0
	LOD8: Level1
	LOD16: Level2
	LOD32: Level2
FXWaterfallBodyTall_static [STAT:000FC85E] Meshes\effects\fxwaterfallbodytall.nif [CRC32:0DA88E1A] using textures\effects\fxwhitewater02_falls.dds, textures\effects\fxfluidtile01.dds, textures\effects\cloudtile.dds
	fxwaterfallbodytallpassthru_lod.nif FXWaterfallBodyTallInner01 = textures\effects\fxwatertile01.dds -> textures\effects\fxwhitewater02_falls.dds
	fxwaterfallbodytallpassthru_lod.nif FXWaterfallBodyTallFoam = textures\effects\fxwhitewater01.dds -> textures\effects\fxwhitewater02_falls.dds
	Level0: meshes\lod\waterfalls\fxwaterfallbodytallpassthru_lod.nif using textures\effects\fxwatertile01.dds, textures\effects\fxwatertile02_n.dds, textures\effects\fxwhitewater01.dds
	Level1: meshes\lod\waterfalls\fxwaterfallbodytallpassthru_lod.nif using textures\effects\fxwatertile01.dds, textures\effects\fxwatertile02_n.dds, textures\effects\fxwhitewater01.dds
	Level2: meshes\lod\waterfalls\fxwaterfallbodytallpassthru_lod.nif using textures\effects\fxwatertile01.dds, textures\effects\fxwatertile02_n.dds, textures\effects\fxwhitewater01.dds
	Dynamic: meshes\dyndolod\lod\effects\fxwaterfallbodytall_dyndolod_lod.nif using textures\effects\fxwhitewater03.dds, textures\effects\fxwatertile06_n.dds, textures\water\wenb_tint02.dds, textures\effects\fxwhitewater01.dds
	LOD4: Level0
	LOD8: Level1
	LOD16: Level2
	LOD32: Level2

 

 

1 hour ago, sheson said:

So the mod I'm using is understandably not listed there. Therefore:

  • The CRC32 (0DA88E1A) of its fxwaterfallbodytall mesh doesn't match any of the premade lod meshes in meshes/lod/waterfall from DynDOLOD Resources.
  • DynDOLOD falls back to meshes\lod\waterfalls\fxwaterfallbodytallpassthru_lod.nif which corresponds to the vanilla model.
  • Am I correct so far?

For some reason DynDOLOD doesn't find textures\effects\fxwatertile02_n.dds even though it does exist as a loose file inside the Data folder. It can find the other textures such as fxwatertile01.dds, which sit next to it in the Data folder as shown in the screenshot above, and also used by fxwaterfallbodytallpassthru_lod.nif, just fine.

What about the "<Error: File not found>" message reported previously, you don't think it's strange/spurious?

There's something funky going on here.

Does meshes\lod\waterfalls\fxwaterfallbodytallpassthru_lod.nif actually require the vanilla version of textures\effects\fxwatertile02_n.dds based on its CRC32 too? Does DynDOLOD actually go and fetch this texture specifically from the vanilla BSA archives? Or can it use any version present in the load order?

Link to comment
Share on other sites

1 hour ago, Mousetick said:

But it's not missing. It's there:

image.png

Relevant excerpt:

  Reveal hidden contents

 

So the mod I'm using is understandably not listed there. Therefore:

  • The CRC32 (0DA88E1A) of its fxwaterfallbodytall mesh doesn't match any of the premade lod meshes in meshes/lod/waterfall from DynDOLOD Resources.
  • DynDOLOD falls back to meshes\lod\waterfalls\fxwaterfallbodytallpassthru_lod.nif which corresponds to the vanilla model.
  • Am I correct so far?

For some reason DynDOLOD doesn't find textures\effects\fxwatertile02_n.dds even though it does exist as a loose file inside the Data folder. It can find the other textures such as fxwatertile01.dds, which sit next to it in the Data folder as shown in the screenshot above, and also used by fxwaterfallbodytallpassthru_lod.nif, just fine.

What about the "<Error: File not found>" message reported previously, you don't think it's strange/spurious?

There's something funky going on here.

Does meshes\lod\waterfalls\fxwaterfallbodytallpassthru_lod.nif actually require the vanilla version of textures\effects\fxwatertile02_n.dds based on its CRC32 too? Does DynDOLOD actually go and fetch this texture specifically from the vanilla BSA archives? Or can it use any version present in the load order?

Please ignore my initial braindead answer I wrote before I had my first coffee and see the revised post.

I am creating new LOD models with correct CRC32 for the new patch mod right now for the next DynDOLOD Resources SE 3 version.

Link to comment
Share on other sites

29 minutes ago, sheson said:

I am creating new LOD models with correct CRC32 for the new patch mod right now for the next DynDOLOD Resources SE 3 version.

That sounds great but you may want to hold off on that and wait a bit until this mod is deemed "stable". It's very new and might be subject to changes/fixes in the near future.

Anyway, it's your call but I wouldn't mind using a workaround to make the lod fallback mechanism work, if that's possible. It's ok if the lods don't match the full models for the time being for testing/evaluation purposes, as long as I'm aware of the differences. If I can just ignore the error and warning emitted by DynDOLOD and assume everything is working correctly with the fallback waterfall lod meshes, I'll go with that for now.

Thanks.

Link to comment
Share on other sites

31 minutes ago, Mousetick said:

That sounds great but you may want to hold off on that and wait a bit until this mod is deemed "stable". It's very new and might be subject to changes/fixes in the near future.

Anyway, it's your call but I wouldn't mind using a workaround to make the lod fallback mechanism work, if that's possible. It's ok if the lods don't match the full models for the time being for testing/evaluation purposes, as long as I'm aware of the differences. If I can just ignore the error and warning emitted by DynDOLOD and assume everything is working correctly with the fallback waterfall lod meshes, I'll go with that for now.

Thanks.

DynDOLOD Resources SE 3 Alpha-23 has the new LOD models for the patch.

Link to comment
Share on other sites

4 hours ago, sheson said:

DynDOLOD Resources SE 3 Alpha-23 has the new LOD models for the patch.

Success with Resources SE α23 and the newly added waterfall lod meshes. Thanks as always for your help and kudos for your dedication and quick turnaround.

I haven't checked the results in game yet. Will report back if I find any that could be traced back to DynDOLOD [Resources].

Out of curiosity, would you mind shedding some light on what exactly caused DynDOLOD to become schizophrenic and not to find a texture that was right under its nose, so to speak? It's fine if you don't want to elaborate, no grudges will be held against you :)

I'm probably going off assumptions that are completely wrong, so for the sake of understanding, is the CRC-less waterfall lod model (e.g. fxwaterfallbodytall_passthru_lod.nif) a fallback to vanilla lod when no matching CRC is available for the full model? Or is it something else?

If it's not designed as a fallback mechanism, and waterfall lods are only designed to work by CRC-matching them with their full models counterparts, I'd like to offer a suggestion for possible improvement that you didn't ask for and may not care about. Here it is anyway:

If a waterfall lod model (or other similar object lod model if applicable) cannot be found by matching the CRC32 of the full model, DynDOLOD should fail and issue an error message reporting the reason, such as: "Unsupported mod or unsupported version of mod for <insert full model name here>. Requires matching lod from DynDOLOD Resources. Refer to https://dyndolod.info/Mods/Waterfalls".

Thanks.

Link to comment
Share on other sites

38 minutes ago, Mousetick said:

Success with Resources SE α23 and the newly added waterfall lod meshes. Thanks as always for your help and kudos for your dedication and quick turnaround.

I haven't checked the results in game yet. Will report back if I find any that could be traced back to DynDOLOD [Resources].

Out of curiosity, would you mind shedding some light on what exactly caused DynDOLOD to become schizophrenic and not to find a texture that was right under its nose, so to speak? It's fine if you don't want to elaborate, no grudges will be held against you :)

I'm probably going off assumptions that are completely wrong, so for the sake of understanding, is the CRC-less waterfall lod model (e.g. fxwaterfallbodytall_passthru_lod.nif) a fallback to vanilla lod when no matching CRC is available for the full model? Or is it something else?

If it's not designed as a fallback mechanism, and waterfall lods are only designed to work by CRC-matching them with their full models counterparts, I'd like to offer a suggestion for possible improvement that you didn't ask for and may not care about. Here it is anyway:

If a waterfall lod model (or other similar object lod model if applicable) cannot be found by matching the CRC32 of the full model, DynDOLOD should fail and issue an error message reporting the reason, such as: "Unsupported mod or unsupported version of mod for <insert full model name here>. Requires matching lod from DynDOLOD Resources. Refer to https://dyndolod.info/Mods/Waterfalls".

Thanks.

If no CRC32 match is found, the process always falls back to the default/vanilla static object LOD model, for example fxwaterfallbodytall_passthru_lod.nif in this case.
As is typical, it uses a diffuse and a normal map texture.

The full model has different diffuse texture assigned compared to the vanilla full model, either directly in the NIF or via texture sets.
Because of that, the process tries to automatically switch the object LOD textures to the different texture as well.
Since the new stitched object LOD texture does not exist, it tries to generate it on the fly.
Since the replaced full model NIF has no normal map texture defined, the first file not found with nothing was shown, the filename is empty.
Then it tries to assume the filename as [diffuse filename]_n.dds, which is then also not found.

It is an edge case that a full model has the shader changed for a shape that also has object LOD. I would say it only ever happens with the 3 main waterfalls anyways.

Anyways, now with dedicated LOD models none of this happens anymore.

  • Like 1
Link to comment
Share on other sites

24 minutes ago, NephilimOokami said:

I am having a bug that some parts of the terrain(in some locations) has no textures at all(can walk in the air)

Attached is one of the cells that this happen.

Skyrim - Turdas, 11꞉13 AM, 21st of Last Seed, 4E 201.png

https://dyndolod.info

"Dynamic Distant Objects LOD (DynDOLOD) is the advanced and easier version of xLODGen to generate a comprehensive LOD mod for the entire load order of the different Skyrim and Enderal game versions for drastically enhanced and better matching tree LOD and object LOD plus optional dynamic LOD, glow LOD, grass LOD, occlusion data and terrain underside in a few simple steps."

DynDOLOD does not generate or affects terrain LOD in any way.

Wherever the player walks, is active cells. They do not show any LOD. DynDOLOD does not affect terrain in loaded cells.

The DynDOLOD SkyUI MCM - You Are Here page shows the current player position and calculates the cell coordinates and LOD filenames based on that.
What is the purpose of posting that screenshot?

Why do you believe the problem has something to do with the DynDOLOD output?

Link to comment
Share on other sites

1 hour ago, sheson said:

It is an edge case that a full model has the shader changed for a shape that also has object LOD. I would say it only ever happens with the 3 main waterfalls anyways.

Thanks for the detailed and clear explanation. I understand it's a corner case that's not worth worrying too much about or working too hard to resolve.

1 hour ago, sheson said:

Anyways, now with dedicated LOD models none of this happens anymore.

Right. But I'm still a bit worried, perhaps overly so, about the following scenario.

Let's say you're on vacation or unavailable for whatever reason for a couple of weeks (sometimes I wonder if you ever sleep or take a break off DynDOLOD). It happens that some new mod with the latest and greatest waterfalls has been released and users are trying it out with DynDOLOD 3. These users will be faced with the missing CRC-matched lods and the weird DynDOLOD behavior. They probably won't notice the 'file not found' error message but they may see the missing texture warning in the Summary report, and become utterly confused as to what's going on and what could be the root cause. They may also wonder why the waterfall lods are missing in game.

So, what can users do in this case where you're not available for support?

This is why I think a clearer diagnostic from DynDOLOD in this particular case could be helpful.

Link to comment
Share on other sites

1 hour ago, Mousetick said:

Thanks for the detailed and clear explanation. I understand it's a corner case that's not worth worrying too much about or working too hard to resolve.

Right. But I'm still a bit worried, perhaps overly so, about the following scenario.

Let's say you're on vacation or unavailable for whatever reason for a couple of weeks (sometimes I wonder if you ever sleep or take a break off DynDOLOD). It happens that some new mod with the latest and greatest waterfalls has been released and users are trying it out with DynDOLOD 3. These users will be faced with the missing CRC-matched lods and the weird DynDOLOD behavior. They probably won't notice the 'file not found' error message but they may see the missing texture warning in the Summary report, and become utterly confused as to what's going on and what could be the root cause. They may also wonder why the waterfall lods are missing in game.

So, what can users do in this case where you're not available for support?

This is why I think a clearer diagnostic from DynDOLOD in this particular case could be helpful.

There won't be missing LOD in the game. If there is no CRC32 match it will fall back to the default file convention.

Obviously the code will be updated to handle the edge case and just create the missing stitched texture with the default_n.dds.

Users and mod authors could read the documentation and create their own LOD models and textures in case there are mismatches.

Lots of these things are already explained at https://dyndolod.info/Mod-Authors for example.

 

  • Thanks 1
Link to comment
Share on other sites

5 hours ago, sheson said:

https://dyndolod.info

"Dynamic Distant Objects LOD (DynDOLOD) is the advanced and easier version of xLODGen to generate a comprehensive LOD mod for the entire load order of the different Skyrim and Enderal game versions for drastically enhanced and better matching tree LOD and object LOD plus optional dynamic LOD, glow LOD, grass LOD, occlusion data and terrain underside in a few simple steps."

DynDOLOD does not generate or affects terrain LOD in any way.

Wherever the player walks, is active cells. They do not show any LOD. DynDOLOD does not affect terrain in loaded cells.

The DynDOLOD SkyUI MCM - You Are Here page shows the current player position and calculates the cell coordinates and LOD filenames based on that.
What is the purpose of posting that screenshot?

Why do you believe the problem has something to do with the DynDOLOD output?

I did'nt believe it's a DynDOLOD related bug, but I've searched for the same "bug", and found that one person with the same problem has comented here. Sorry if this it's not the right place to find solutions to my problem now, btw, any clue on what may be causing this bug? Or any redirections at all?

Edited by NephilimOokami
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.