🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Animations slightly off.

Started by
1 comment, last by Wilhelm van Huyssteen 4 years, 2 months ago

Hi,

Im busy working on a game using my own game engine, I wrote a Blender export script to export models from blender into my engines custom model format. Animations worked fine but the models (and their skeletons) I used up to now were quite simple (not that many bones). I now have much more detailed models with more detailed skeletons and importing them into my game I notice that the animations are a little wrong in some places, and very wrong in others (compared to how it looks in blender). The place were things go wrong the most is “Twist/Turn” bones, bones that only rotate on the Y axis (Y being up), like a bone that twists/turns the arm or the wrist as opposed to the bones that bend the arm and the wrist. My earlier placeholder models never had “Twist/Turn” bones so I never really noticed the problem. apart from the “twist/Turn” bones most other bones are either fine or only slightly off when animating.

for each bone i export a 3x3 matirx for it's local rest rotation and also its length (the engine will read the length and construct a vector3 (0,length,0) that will be the bones translation) Im not sure if storing and using the bone data like this is might be the problem.

To export an animations rotations I Export an quaternion for each keyframe of each bone thats used in the animation.

This might be a long shot but I'd appreciate any insights as to what might cause this, And/or helping me to confirm that the way i store bone/animation data is correct/incorrect.

I tried to keep it brief but please ask for more information if needed, I can also upload some screenshots to illustrate the problem if it would help.

Thank you for your time!

Advertisement

Found the issue, Blender doesn't normalize the quaternions representing rotations in animations, but for the most part they end up being pretty close to normalized, that's why things were mostly fine except in certain cases. All I had to do was normalize the rotation quaternions.

This topic is closed to new replies.

Advertisement