Support triangles strip and quads strip geometry for obj2dl and md5_to_dsma#47
Open
Warioware64 wants to merge 2 commits into
Open
Support triangles strip and quads strip geometry for obj2dl and md5_to_dsma#47Warioware64 wants to merge 2 commits into
Warioware64 wants to merge 2 commits into
Conversation
Added triangle stripification functionality and updated MD5 mesh conversion process.
Added functions for parsing face vertices and stripifying triangles and quads. Updated the main conversion logic to support vertex color and strip generation options.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
These enhancements will support strip geometry by strip generation options for both obj2dl and md5_to_dsma.
Why this can be useful and significant feature ?
Nintendo DS has limited GPU vertices limit (6144) and every vertex economy is a big deal.
Strip can reduce the vertices count avoiding duplicate vertices.
The reduction can be ~30% vertices.
For example in retail game, Dementium II that have impressive 3D graphics and render on DS use a lot stripping allow to economize vertices count to ensure to respect both 60fps performance and 6144 vertices limits with immersive atmosphere.
How to enable/use this ?
This is enabled by default on obj2dl and md5_to_dsma.
To disable stripping and return to classic geometry the flags "--no-strip" can do this.
This feature was tested?
Yes, I tested this feature with teapot and robot assets example from the library and it work totally fine the geometry and UV is preserved no weirdness and teapot look more good that the original.
Of course further test can be made but this seem to be functional.