Jump to content
  • 0

Re-UV Crown Meshes


z929669

Question

@sheson

I have some hybrid models that I recently constructed using hybrid.bat. The final models are triggering re-uv process and "out of bounds" messages in DynDOLOD_SSE_Tamriel.log as well as some errors probably related to 'bad' strung names and other issues (probably all associated with the crowns of the hybrids).

Is it practical or possible to run the crowns through re-uv.bat to correct the UV issues and then rebuild the hybrids using hybrid.bat? I'm hoping that this will allow DynDOLOD to process object LOD using these hybrids, less the added effort to re-UV each run (to speed up object LODGen and reduce redundant log messages).

If so, I want to do this, but need some guidance on how to configure re-uv.txt settings to process as much as possible via the automation (I don't see doc on this process as you have for hybrids.bat process). Here is the default config with some comments I'd like addressed:

Worldspace=None <!--what goes here? Tamriel worldspace name? What is the format?-->
GameMode=Convert5 <!--what goes here?-->
UseOptimizer=True <!--Will this do basic corrections to mesh (e.g., bad string names) or to textures or both-->
DontMergeShapes=True <!--what is being merged? Different from trunk/crown merge using hybrid.bat? Uses merge.bat and merge.txt settings?-->
DontFixTangents=False <!--can you explain this?-->
DontGenerateTangents=False <!--can you explain this?-->
DontGenerateVertexColors=False <!--can you explain this?-->
TextureAtlasMap=re-uv-miniatlas.txt <!--assume this is a default config that doesn't need modification?-->
AtlasTolerance=0.2 <!--can you explain this?-->
//Ignore all vertices with z <= ScaleXY
//RemoveUnseenFaces=True
//ScaleXY=-120.0
PathData=.\ <!--Is this TexGen_Output location or /meshes/ source?-->
PathOutput=.\output\
0	0	0.0	0.0	0.0	0.0	0.0	0.0	1.0	tiled.nif <!--can you explain this?-->

Should I run crowns through NIF optimizer before/after?

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

The UV of the crowns should be "fixed" manually. Typically the coordinates are just slightly outside of 0.0 and 1.0 and moving them a bit is not really that visible in the distance.

Do not change Worldspace (obviously there is none)
GameMode=Convert[4|5|SSE|FO4], however I can not guarantee all game modes do work properly. Convert with CAO afterwards if required and ConvertSSE does not work.
UseOptimizer= true = merges "duplicate" vertices (same 3D position, UV) with similar vertex colors/normals/tangents into a single vertex. 
DontMergeShapes = true = do not merge shapes with same shader/texture (which is what object LOD does, because of texture atlas)
DontFixTangents= true = do not recalculate bi/tangents similar to NifSkope spell
DontGenerateTangents = true = do not generate bi/tangents if they are missing
TextureAtlasMap=point to mnini atlas map with stitched LOD texture information for re-uv
AtlasTolerance= if UV is < 0.0 - AtlasTolerance or > 1.0 +AtlasTolerance it is "outside"
PathData= path to data / assets / source

Last line means do not move/rotate/scale the model like object LOD data would. tiled.nif model to process

 

Link to comment
Share on other sites

  • 0
13 minutes ago, sheson said:

The UV of the crowns should be "fixed" manually. Typically the coordinates are just slightly outside of 0.0 and 1.0 and moving them a bit is not really that visible in the distance.

Do not change Worldspace (obviously there is none)
GameMode=Convert[4|5|SSE|FO4], however I can not guarantee all game modes do work properly. Convert with CAO afterwards if required and ConvertSSE does not work.
UseOptimizer= true = merges "duplicate" vertices (same 3D position, UV) with similar vertex colors/normals/tangents into a single vertex. 
DontMergeShapes = true = do not merge shapes with same shader/texture (which is what object LOD does, because of texture atlas)
DontFixTangents= true = do not recalculate bi/tangents similar to NifSkope spell
DontGenerateTangents = true = do not generate bi/tangents if they are missing
TextureAtlasMap=point to mnini atlas map with stitched LOD texture information for re-uv
AtlasTolerance= if UV is < 0.0 - AtlasTolerance or > 1.0 +AtlasTolerance it is "outside"
PathData= path to data / assets / source

Last line means do not move/rotate/scale the model like object LOD data would. tiled.nif model to process

 

Thanks for the response and explanation.

When you say that UV crowns should be manually 'fixed', are you saying that running the crowns through the re-uv automation will not do the same?

If I am having the issues I mentioned with the crowns, practical way to address is to(?):

  1. Manually fix UV coordinates that are > [+/- ]0.2 (or is this redundant with next step?)
  2. run re-uv.bat using settings in default re-uv.txt, or do you suggest setting some of those to 'true'?
  3. Use NIF optimizer on the output crowns from #2
  4. Rebuild hybrids from modified crowns
  5. test

 

 

Link to comment
Share on other sites

  • 0

The Re-UV function does not move UV coordinates. It splits and increases the triangle count by adding additional vertices. A mini atlas with stitched LOD textures helps to reduce the amount of new triangles. However, keeping the full textures in the hybrid crown is preferred for alpha adjustments and automatic coverage-to-alpha for mipmaps etc.

Much better to move the UV coords that are outside to the inside. Can be easily done with NifSkope.  Did it that way for the vanilla trees, just took a couple minutes.

Link to comment
Share on other sites

  • 0
47 minutes ago, sheson said:

The Re-UV function does not move UV coordinates. It splits and increases the triangle count by adding additional vertices. A mini atlas with stitched LOD textures helps to reduce the amount of new triangles. However, keeping the full textures in the hybrid crown is preferred for alpha adjustments and automatic coverage-to-alpha for mipmaps etc.

Much better to move the UV coords that are outside to the inside. Can be easily done with NifSkope.  Did it that way for the vanilla trees, just took a couple minutes.

Checking and changing these hundreds of vertices manually only took you a couple of minutes for 20+ trees?

image.png

Link to comment
Share on other sites

  • 0
29 minutes ago, sheson said:

Use the UV Editor.

Right click BSTriSHape / Texture / Edit UV

Thanks for the tip ... so drag each of these to left by hand with mouse? There are about 20 nodes here ... tried to select all and move at once, but it's eluding me.

image.png

EDIT: I found that I can click/drag cursor over this area, and all nodes are selected and move at same time that way. Now just want to confirm that moving to left just inside vertical reference is all that's needed.

Thanks in advance

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
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

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