-
-
Notifications
You must be signed in to change notification settings - Fork 562
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MelonDS permits non-normalized bone weights on models when hardware does not #2242
Comments
It's weird because I'd expect this sort of calculation to be done in software. It'd be interesting to have more details as to why non-normalized bone weights are failing on hardware. |
I'm a little uncertain on the best way to provide additional details with hardware. I did at least discover that with EveryFileExplorer, its NSBMD settings viewer can be used as a diagnostic at least in terms of seeing if something is malformed. It threw this exception here:
If you wanted to see the area the stacktrace was referring to, it can be found here |
would be interesting to have a test ROM along with malformed files and good ones, so I could test this, but I also offer no guarantee however, that stack trace gives a bit of insight -- something about the matrix restore command? it's weird, because I thought I had fixed the matrix stack stuff to mirror hardware behavior, but maybe there are odd edge cases I wasn't aware of. |
Would it be possible for me to send the problematic files through any sort of private message? My Discord handle is the same as my GitHub account name. |
you can contact me over Discord or IRC, or on the forums |
my instinct is it could be the gx hanging, or some quirk related to partially gx command submission. |
I see! Thanks for the insight! |
As the title states, something I ran into while testing a project I was working on is that a rigged NSBMD I had created is that while it would work OK on MelonDS, when I tried using it on hardware, it always appeared to softlock. I realized that some vertices didn't have a sum of 1.0 for their weights, and as a result, it didn't function properly on hardware. Upon making sure my weighting was normalized, it then worked, but regardless of the legality of my weights, MelonDS permitted it.
The text was updated successfully, but these errors were encountered: