Jump to content
  • Advertisement
Sign in to follow this  
OscarYu

A scaling issue occured when retrieving animation matrix

This topic is 1066 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

Hi there,

 

I spent quite a while to get my fbx animation importer works with fbx sdk and directX 11. However it still has an issue that the model is scaled 100 times as big as the original one defined by its control points.

 

Here is how I obtain the inversed base bind pose matrix:

fbxCluster->GetTransformMatrix(referenceGlobalInitPosition);
fbxCluster->GetTransformLinkMatrix(clusterGlobalInitPosition);

fbxGlobalBoneBaseMatrix = clusterGlobalInitPosition.Inverse() * referenceGlobalInitPosition;
bone.globalBindposeInverseMatrix = fbxGlobalBoneBaseMatrix;

?

 

Here is how I get transform matrix of each bone in real time:

FbxAMatrix fbxCurrMatrix = fbxNode->EvaluateGlobalTransform(time);

FbxAMatrix fbxFinalMatrix = fbxCurrMatrix * globalBindposeInverseMatrix;
fbxFinalMatrix = fbxFinalMatrix.Transpose();

After I applied the final matrix to the vertices, the model was scaled 100 times as big as it was before.

Any ideas about that and what I was missing here? Thanks

Edited by OscarYu

Share this post


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

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!