Jump to content

DynDOLOD 3.00 Alpha 180


sheson

Recommended Posts

11 minutes ago, sheson said:

You seem to report that different alpha version calculate a different CRC32 for the same full model.

Are you certain that you did not change the full models?
Use a 3rd party tool to check the CRC32 of the full model. 7z for example adds a context menu CRC SHA in explorer.
It should always be the same as long as the full model is the same file. Then run DynDOLOD latest version/test version to create a new tree report. It should show the same CRC32 for the same file.

I regenerate once more using alpha 149 test, and it succeeded in recognizing the 3d tree lods. No settings was changed.

Its seems the error is in my end somehow. Sorry :dead:.

Link to comment
Share on other sites

DynDOLOD 3a148 / Resources 3a45

Beware I have no idea of what I'm technically talking about so I'm using vague and inappropriate terms.

I'm using a treepineforestbranchcomp texture which has very thin features and is 95% transparent:

image.png

In-game shots of (vanilla) full models with this texture and Ultra Tree LODs:

image.jpegimage.jpegimage.jpegimage.jpegimage.jpeg

The textures make the full model trees look very "skinny". The tree LODs look less detailed of course though somewhat ok when viewed up close (using free camera), but they look very "blocky" and "lusher" when viewed from normal distance.

I would like to make the HD Tree billboards more "skinny" and less "blocky".

There are 2 settings that I searched for on https://dyndolod.info/ but couldn't find information about:

  • TreeMSAlphaThreshold in TexGen_[GAMEMODE].ini
; threshold to convert alpha channel to binary transparency - default is 128
TreeMSAlphaThreshold=96
  • TreeLODCreateAverageColor in DynDOLOD_[GAMEMODE].ini
; set to 1 to set transparent background of billboards to their average color, requires TreeLODDiffuseFormat with alpha channel like BC2 (DXT3), BC3 (DXT5) or A8R8G8B8
TreeLODCreateAverageColor=1

Would one of these two possibly help yield the results I'm looking for?

Am I trying to fit a square peg into a round hole?

Thanks in advance for your input.

Full logs: https://drive.google.com/file/d/1wy5jtgkpjTasYoID4hqTj30oxta0J1w0/view

Link to comment
Share on other sites

1 hour ago, Mousetick said:

DynDOLOD 3a148 / Resources 3a45

Beware I have no idea of what I'm technically talking about so I'm using vague and inappropriate terms.

I'm using a treepineforestbranchcomp texture which has very thin features and is 95% transparent:

image.png

In-game shots of (vanilla) full models with this texture and Ultra Tree LODs:

image.jpegimage.jpegimage.jpegimage.jpegimage.jpeg

The textures make the full model trees look very "skinny". The tree LODs look less detailed of course though somewhat ok when viewed up close (using free camera), but they look very "blocky" and "lusher" when viewed from normal distance.

I would like to make the HD Tree billboards more "skinny" and less "blocky".

There are 2 settings that I searched for on https://dyndolod.info/ but couldn't find information about:

  • TreeMSAlphaThreshold in TexGen_[GAMEMODE].ini
; threshold to convert alpha channel to binary transparency - default is 128
TreeMSAlphaThreshold=96
  • TreeLODCreateAverageColor in DynDOLOD_[GAMEMODE].ini
; set to 1 to set transparent background of billboards to their average color, requires TreeLODDiffuseFormat with alpha channel like BC2 (DXT3), BC3 (DXT5) or A8R8G8B8
TreeLODCreateAverageColor=1

Would one of these two possibly help yield the results I'm looking for?

Am I trying to fit a square peg into a round hole?

Thanks in advance for your input.

Full logs: https://drive.google.com/file/d/1wy5jtgkpjTasYoID4hqTj30oxta0J1w0/view

See https://dyndolod.info/Official-DynDOLOD-Support-Forum#In-Game-Screenshots how to make useful screenshots of full models with more informative console.

Those seem to be 3D tree LOD models and not billboards. You generated ultra tree LOD with Level0 for LOD level 4.
Are those the vanilla full model trees but with a texture replacer?

See https://dyndolod.info/Help/3D-Tree-LOD-Model and what it explains about the alpha threshold in the 3D tree LOD model to make textures appear thicker/thinner. Change in steps of +- 16.

Link to comment
Share on other sites

Thanks for your reply.

2 hours ago, sheson said:

Those seem to be 3D tree LOD models and not billboards. You generated ultra tree LOD with Level0 for LOD level 4.
Are those the vanilla full model trees but with a texture replacer?

Yes. That is correct. I warned you I didn't know what I was talking about. That was no joke. Now that I've gotten slightly wiser than previous post I can tell you what was shown in the screenshots are vanilla full models with a texture replacer (Pine Branches Redone), and Ultra Tree LOD Level 4 with 3D tree LOD models from DynDOLOD Resources.

2 hours ago, sheson said:

See https://dyndolod.info/Help/3D-Tree-LOD-Model and what it explains about the alpha threshold in the 3D tree LOD model to make textures appear thicker/thinner. Change in steps of +- 16.

If I'm understanding correctly, this would require editing the 3D tree LOD models from DynDOLOD Resources in NifSkope and adjusting the NiAlphaProperty of the branches, in steps of +/- 16. Is this correct? Should it be increased or decreased in order to make the LOD texture look "thinner" (i.e. more transparent I guess)?

image.png

Thanks.

Link to comment
Share on other sites

On 9/13/2023 at 8:02 AM, sheson said:

Thanks for the complete report. Let me know if this test version fixes it https://mega.nz/file/MAAV3KRD#cPvZoQSvF2ktV80WMfskYmrTjUj3rPdA-2BrnHO-CQk

https://dyndolod.info/Mods/Beyond-Skyrim-Bruma is unrelated to this error.

Hey Sheson sorry I was offline for a few days and I think that link when dead, would you mind reposting it please and thank you.

Link to comment
Share on other sites

9 hours ago, Mousetick said:

Thanks for your reply.

Yes. That is correct. I warned you I didn't know what I was talking about. That was no joke. Now that I've gotten slightly wiser than previous post I can tell you what was shown in the screenshots are vanilla full models with a texture replacer (Pine Branches Redone), and Ultra Tree LOD Level 4 with 3D tree LOD models from DynDOLOD Resources.

If I'm understanding correctly, this would require editing the 3D tree LOD models from DynDOLOD Resources in NifSkope and adjusting the NiAlphaProperty of the branches, in steps of +/- 16. Is this correct? Should it be increased or decreased in order to make the LOD texture look "thinner" (i.e. more transparent I guess)?

image.png

Thanks.

You can see changes in NifSkope. To make it appear thinner lower the threshold.

Link to comment
Share on other sites

5 hours ago, sheson said:

You can see changes in NifSkope. To make it appear thinner lower the threshold.

Good thing you said the changes can be seen in NifSkope. It appears the threshold needs to be increased actually.

When I save an edited 3D tree LOD mesh from DynDOLOD Resources, NifSkope tells me "One or more blocks have had their Name sanitized". Is this going to be a problem?

For example, treepineforest02passthru_lod.nif:

  • 9  BSTriShape (Name) = 'TreePineForest02_LOD_FLAT:9'
  • 13 BSTriShape (Name) = 'TreePineForest02_LOD_FLAT:13'
  • 17 BSTriShape (Name) = 'TreePineForest02_LOD_FLAT:17'

Thanks for your help.

Link to comment
Share on other sites

51 minutes ago, Mousetick said:

Good thing you said the changes can be seen in NifSkope. It appears the threshold needs to be increased actually.

When I save an edited 3D tree LOD mesh from DynDOLOD Resources, NifSkope tells me "One or more blocks have had their Name sanitized". Is this going to be a problem?

For example, treepineforest02passthru_lod.nif:

  • 9  BSTriShape (Name) = 'TreePineForest02_LOD_FLAT:9'
  • 13 BSTriShape (Name) = 'TreePineForest02_LOD_FLAT:13'
  • 17 BSTriShape (Name) = 'TreePineForest02_LOD_FLAT:17'

Thanks for your help.

Disable Auto Sanitize before Save in the File menu.

Link to comment
Share on other sites

I've gotten even wiser and now I understand the 3D tree LOD textures are generated by LODgen, nothing to do with TexGen. Duh!

I initially tried NiAlphaProperty Threshold 112 -> 144, which made a small difference but not enough. So I cranked it up to 176.

Comparison in DynDOLOD_Tamriel.dds atlas: 112 > 176

image.pngimage.png

The 3D tree LOD models from DynDOLOD Resources are quite good by themselves, but the difference in "lushiness" between full model and LOD because of the textures was jarring, especially during LOD -> full model transitions:

LOD on left half, full on right half: Before (112) > After (176)

image.pngimage.png

This is much better, thank you. I may need to crank the threshold up even more, we'll see. I need to apply the same changes to the snowy and ashy variants. And to the aspen trees too, with which I'm using a similarly very thin, very transparent texture replacer.


The other hurdle I've been facing is the brightness of the tree LODs. I'm confused by all the options:

  • Direct & Ambient lighting settings in TexGen.
  • Billboard brightness* setting in DynDOLOD.
  • CrownBrightness, TrunkBrightness and FlatTrunkBrightness settings in DynDOLOD_[GAMEMODE].ini:
; Vertexcolor multipliers for tree LOD models used in object LOD, see https://dyndolod.info/Help/Ultra-Tree-LOD
CrownBrightness=1
TrunkBrightness=1
FlatTrunkBrightness=1

My understanding is that the CrownBrightness, TrunkBrightness, and FlatTrunkBrightness are used exclusively with 3D tree LOD, which is not affected by Billboard brightness. I'm going to try and lower them because I think my Level0 tree LODs look too bright compared to full models.

Conversely Billboard brightness only affects the brightness of Ultra Tree LODs using billboards.

What to do with the TexGen settings, how do they interact/combine with the Ultra Tree LOD Billboard brightness? Should they be left alone, at default, and brightness be adjusted only in DynDOLOD?

* By the way, there is small typo in the tooltip for this setting: "Adjust brighntess of tree LOD billboards [...]"

Thanks.

Link to comment
Share on other sites

14 minutes ago, Mousetick said:

I've gotten even wiser and now I understand the 3D tree LOD textures are generated by LODgen, nothing to do with TexGen. Duh!

https://dyndolod.info/Help/LODGen
LODGen is a command line tool that generates terrain LOD and object LOD meshes.

21 minutes ago, Mousetick said:
  • Direct & Ambient lighting settings in TexGen.
  • Billboard brightness* setting in DynDOLOD.
  • CrownBrightness, TrunkBrightness and FlatTrunkBrightness settings in DynDOLOD_[GAMEMODE].ini:
; Vertexcolor multipliers for tree LOD models used in object LOD, see https://dyndolod.info/Help/Ultra-Tree-LOD
CrownBrightness=1
TrunkBrightness=1
FlatTrunkBrightness=1

My understanding is that the CrownBrightness, TrunkBrightness, and FlatTrunkBrightness are used exclusively with 3D tree LOD, which is not affected by Billboard brightness. I'm going to try and lower them because I think my Level0 tree LODs look too bright compared to full models.

Conversely Billboard brightness only affects the brightness of Ultra Tree LODs using billboards.

What to do with the TexGen settings, how do they interact/combine with the Ultra Tree LOD Billboard brightness? Should they be left alone, at default, and brightness be adjusted only in DynDOLOD?

* By the way, there is small typo in the tooltip for this setting: "Adjust brighntess of tree LOD billboards [...]"

Thanks.

https://dyndolod.info/Help/TexGen#Grass-HD-Grass-Tree-HD-Tree-Rendered
Tree LOD billboards are required for standard tree LOD generation or ultra tree LOD generation.
HD Tree LOD billboards are for the optional ultra tree LOD generation.
Rendered billboards are for the optional ultra tree LOD generation. They are rendered from special models in the ..\DynDOLOD\Edit Scripts\DynDOLOD\Render\Billboards\ folder. They generate trunk textures for hybrid tree LOD models for example.

Use the preview buttons to see.

Link to comment
Share on other sites

2 hours ago, sheson said:

https://dyndolod.info/Help/LODGen
LODGen is a command line tool that generates terrain LOD and object LOD meshes.

Well this goes to show I'm still very much ignorant.

The pine branches LOD textures found in the DynDOLOD object LOD atlas clearly show they are a downsampled version of the original treepineforestbranchcomp.dds texture, taking into account the NiAlphaProperty threshold of the 3D tree LOD models. I have not run TexGen since one month ago. So they must be generated by something, which is neither TexGen nor LODgen. But what exactly shall remain a mystery. Maybe Texconv during DynDOLOD generation.

treepineforestbranchcomp.dds > DynDOLOD_Tamriel.dds

image.pngimage.png

2 hours ago, sheson said:

https://dyndolod.info/Help/TexGen#Grass-HD-Grass-Tree-HD-Tree-Rendered
Tree LOD billboards are required for standard tree LOD generation or ultra tree LOD generation.
HD Tree LOD billboards are for the optional ultra tree LOD generation.
Rendered billboards are for the optional ultra tree LOD generation. They are rendered from special models in the ..\DynDOLOD\Edit Scripts\DynDOLOD\Render\Billboards\ folder. They generate trunk textures for hybrid tree LOD models for example.

I'm sorry but this doesn't help at all.

I was wondering how the Direct + Ambient lighting settings in TexGen, which indirectly affect brightness, and the Billboard brightness setting in DynDOLOD, affect each other in combination, and how/why one might be used rather than the other.

Quote

Direct, Ambient, Smoothness

These settings change the direct (default from top) and ambient lighting strength for the created diffuse texture and the smoothness of the created normal map textures. Lower numbers mean less light strength = darker.

Quote

Billboard Brightness
Use the Billboard brightness dropdown on the advanced mode in case the tree LOD billboards are too dark or too bright.

 

But it's ok. I appreciate the time and patience you've given me, especially during a week-end. I won't be bothering you any more and wasting your time with "stupid" questions.

Link to comment
Share on other sites

41 minutes ago, Mousetick said:

Well this goes to show I'm still very much ignorant.

The pine branches LOD textures found in the DynDOLOD object LOD atlas clearly show they are a downsampled version of the original treepineforestbranchcomp.dds texture, taking into account the NiAlphaProperty threshold of the 3D tree LOD models. I have not run TexGen since one month ago. So they must be generated by something, which is neither TexGen nor LODgen. But what exactly shall remain a mystery. Maybe Texconv during DynDOLOD generation.

treepineforestbranchcomp.dds > DynDOLOD_Tamriel.dds

image.pngimage.png

I'm sorry but this doesn't help at all.

I was wondering how the Direct + Ambient lighting settings in TexGen, which indirectly affect brightness, and the Billboard brightness setting in DynDOLOD, affect each other in combination, and how/why one might be used rather than the other.

 

But it's ok. I appreciate the time and patience you've given me, especially during a week-end. I won't be bothering you any more and wasting your time with "stupid" questions.

https://dyndolod.info/Help/3D-Tree-LOD-Model
DynDOLOD reads the alpha threshold from the NiAlphaProperty from the models used for LOD and adjusts the textures before it is added to the atlas texture

https://dyndolod.info/DynDOLOD-Reference
... xLODGen scans the world for applicable references, builds the required texture atlases ...
DynDOLOD improves the texture atlas creation.

https://dyndolod.info/DynDOLOD-Reference#8-Generate-object-LOD

In 3D there is by default a direct light (sun) and ambient light. You can see/test this better in NifSkope but also in the TexGen preview.
Ambient comes from all directions so its like brightness of the scene and direct light illuminates things from a specific direction. This controls the 3D scene for the render. Normal maps are a bump map, so the smoothness controls the max height of the rendered bump map. Again, this can be previewed in TexGen.
These things are fundamental 3D stuff that you can google and then read tons and tons of papers and wikis about it.

The brightness drop down for billboards is the same as the xLODGen brightness dropdown and affects the billboard textures before they are being added to the atlas. It a combination of adding (brightness) and multiplying (contrast) that Zilav originally came up with.

Link to comment
Share on other sites

Thanks for your answers.

16 hours ago, sheson said:

https://dyndolod.info/Help/3D-Tree-LOD-Model
DynDOLOD reads the alpha threshold from the NiAlphaProperty from the models used for LOD and adjusts the textures before it is added to the atlas texture

Is there a DynDOLOD configuration setting, like there are in TexGen for Stitched/Rendered textures, to control the size of the generated 3D tree LOD model textures before they're added to the atlas? If not, what is the fixed size?

16 hours ago, sheson said:

In 3D there is by default a direct light (sun) and ambient light. You can see/test this better in NifSkope but also in the TexGen preview.
Ambient comes from all directions so its like brightness of the scene and direct light illuminates things from a specific direction. This controls the 3D scene for the render. Normal maps are a bump map, so the smoothness controls the max height of the rendered bump map. Again, this can be previewed in TexGen.
These things are fundamental 3D stuff that you can google and then read tons and tons of papers and wikis about it.

The brightness drop down for billboards is the same as the xLODGen brightness dropdown and affects the billboard textures before they are being added to the atlas. It a combination of adding (brightness) and multiplying (contrast) that Zilav originally came up with.

Yes, that's all very clear, thanks. But that still doesn't address my query :) Let's see if I can formulate it differently:

To an uneducated outsider reading the DynDOLOD documentation, both TexGen's Direct/Ambient and DynDOLOD Billboard brightness settings have, superficially, the same effects:

  • TexGen: "Lower numbers mean less light strength = darker."
  • DynDOLOD: "Negative Billboard Brightness values will make the billboard tree LOD darker."

Each use their own method (external illumination of 3D model before rendering vs. transformation of texture pixels), but their result is descriptively and in appearance similar.

In other words, these features/settings seem redundant to an uneducated outsider, which is the source of my confusion. But they must exist and be provided for separate reasons and purposes.

So I'd like you to explain, with your expertise and insight, when should one method be used rather than the other, and why, and whether it makes sense to use both at the same time.

Hope this is clearer this time? Thanks for your attention.

Link to comment
Share on other sites

2 hours ago, Mousetick said:

Is there a DynDOLOD configuration setting, like there are in TexGen for Stitched/Rendered textures, to control the size of the generated 3D tree LOD model textures before they're added to the atlas? If not, what is the fixed size?

https://dyndolod.info/Help/Advanced-Mode#Object-LOD
Max tile size LOD sets the maximum resolution a single object LOD texture can occupy on the object LOD texture atlas. Typically set to match the vertical screen resolution, e.g 1024 for 1080p/1440p, 2048 for 2160p etc.
Max tile size full sets the maximum resolution a single full texture can occupy on the object LOD texture atlas. Typically set to 1/4 of the vertical screen resolution, e.g. 256 for 1080p/1440p, 512 for 2160p etc.

2 hours ago, Mousetick said:

To an uneducated outsider reading the DynDOLOD documentation, both TexGen's Direct/Ambient and DynDOLOD Billboard brightness settings have, superficially, the same effects:

  • TexGen: "Lower numbers mean less light strength = darker."
  • DynDOLOD: "Negative Billboard Brightness values will make the billboard tree LOD darker."

Each use their own method (external illumination of 3D model before rendering vs. transformation of texture pixels), but their result is descriptively and in appearance similar.

In other words, these features/settings seem redundant to an uneducated outsider, which is the source of my confusion. But they must exist and be provided for separate reasons and purposes.

So I'd like you to explain, with your expertise and insight, when should one method be used rather than the other, and why, and whether it makes sense to use both at the same time.

Hope this is clearer this time? Thanks for your attention.

Shining light onto a 3D model that is the rendered to a texture is fundamentally different to changing the RGB values of a texture. The features are explained for anyone to use how they see fit.

Similar results can be achieved if all you want is to make textures bit darker or brighter, however TexGen settings only apply to the textures it generates.

Again, the brightness setting in DynDOLOD is the same as from xLODGen. It exists since years before there was TexGen. It applies to all installed billboards.

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.