Skip to content
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

What's the meaning of preRotation , postRotation , rotation in FBX? #4035

Closed
CaichaoGitHub opened this issue Aug 18, 2021 · 2 comments
Closed
Labels
Question Global flag to mark questions from users

Comments

@CaichaoGitHub
Copy link

Hi guys
i'm loading a fbx model using Assimp , but i found some extension in Node Tree
in FBX converter:
image

in Processed Model:
image

Would anyone explain how to handle the extension info please?

@CaichaoGitHub CaichaoGitHub added the Feature-Request Global flag to mark feature requests label Aug 18, 2021
@kimkulling kimkulling added Question Global flag to mark questions from users and removed Feature-Request Global flag to mark feature requests labels Aug 20, 2021
@RichardTea
Copy link
Contributor

The FBX format stores node transforms using an expanded sequence of transforms. These aiNodes represent that sequence.
They are simply aiNode that have no mesh and a single child for the next stage of the FBX transform.

Either treat them the same as any other aiNode that has no mesh, or multiply the transforms together to collapse them into a single aiNode.
I believe there's an FBX importer property to get assimp to do the latter.

As I understand it, FBX does this because it was originally created for motion capture, and it's useful to have the decomposed transform when working with motion capture data because it's not possible to decompose a transform matrix back into the original set of rotation etc, only an equivalent.

@AndrewChan2022
Copy link

The FBX format stores node transforms using an expanded sequence of transforms. These aiNodes represent that sequence. They are simply aiNode that have no mesh and a single child for the next stage of the FBX transform.

Either treat them the same as any other aiNode that has no mesh, or multiply the transforms together to collapse them into a single aiNode. I believe there's an FBX importer property to get assimp to do the latter.

As I understand it, FBX does this because it was originally created for motion capture, and it's useful to have the decomposed transform when working with motion capture data because it's not possible to decompose a transform matrix back into the original set of rotation etc, only an equivalent.

I use this to collapse the node:
importer.SetPropertyBool(AI_CONFIG_IMPORT_FBX_PRESERVE_PIVOTS, false);

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Question Global flag to mark questions from users
Projects
No open projects
Development

No branches or pull requests

4 participants