• Advertisement
Sign in to follow this  

Animation Bone-Local Coordinate System Transformation

This topic is 1543 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

This is a re-post from the Math/Physics board. It got no response, so I wondered if this board was more appropriate.

 

I have a working animation system that is loaded through the FBX 2012 SDK provided by Autodesk. The FBX API is giving me right handed and z-up meshes and animations, but I need to convert them over to a left-handed y-up coordinate system for DirectX.

 

The FBX SDK's coordinate system conversion doesn't work! I've been able to transform a mesh into the correct bind pose, but the animation curves are not converted.

In the past I just transformed the final bone matrices by a coordinate system conversion matrix, and it looks fine visually when the meshes are drawn. I've run into a problem when trying to attach other models to animated bones though. I want to attach other game objects to bones based on position/rotation/scaling values and not matrices, so I can't just apply the conversion matrix.

How do I convert the coordinate system of a bone's local position/rotation/scale transforms? I want to do this at load-time and get rid of all coordinate system conversions at run-time. The position and scale are vec3's, and the rotations are Euler angles that are turned into quaternions.

Thanks!

Edited by DementedCarrot

Share this post


Link to post
Share on other sites
Advertisement
Sign in to follow this  

  • Advertisement