FBX not imported correctly

Hi,
I tried to import a few animated FBXs into Flax, so I went to Sketchfab and download some free models for test.
However, all the models I tested ended up being imported wrongly in Flax, I have yet to find a sketchfab model which animates correctly in Flax.
Again these models are imported correctly both in Unity and Unreal, so I think there is something wrong with Flax FBX parser/importer code.

These are 2 of the models that you can test

These are how they were imported in Flax :


  • The “adult guy” model has mismatch Bone and Base pose → this causes wrong Blending weights so the animation becomes wrong too
  • The “anime girl” model’s hair is placed wrongly from her face, and when animated, the model just deforms badly

How to reproduce:

  • Download FBX from the Sketchfab links above
  • Import to Flax as SkinnedModel
  • Import the same model (because the animation is inside the same FBX) as Animation
  • Create new AnimationGraph and attach the animation above
  • Attach AnimationGraph to SkinnedModel
  • Hit Play

Flax Version :
1.6.6344

Yes, it looks like the bones of the man character is from the static pose and not from the T-POSE, maybe unrelated but I read that FBX importer for multiple objects was fixed into the daily branch, could you eventually give a try and see if other FBX’s related issues were fixed ?

1 Like

@ftkguy
Thanks for your reply.
I will try to test it in the “Daily Branch” you mentioned.
But please let me clarify, I’ve checked the github page but couldn’t found any info about “daily branch”
Did you mean the 1.7 branch? or is there a specific Fork for it?

I believe when you try to add a version of the engine from the starter screen, the daily branch is listed there…if I am not wrong

it is called “master branch (daily)”

Ah I see, thanks for the instructions.
I’ll try to test and post update later!

I’ve reimported both models in “master branch(daily)” version,
but unfortunately it still gave the same result : both models have mismatch bones between static pose and Tpose base pose.

After further test,
it seems like this is the condition for SkinnedModel to actually work correctly in current version of Flax :

  • The initial mesh pose must be the same with initial bone pose
    for example, if the initial mesh pose is a T-Pose but the initial bone pose is not a T-Pose
    then the mesh will be skinned incorrectly

You can test it using this model in Sketchfab :

With this model, the initial pose is A-Pose and is the same with the initial pose of the bones.
So it works in Flax


1 Like

thank you for the follow-up, good to see how we can fix the models that cannot be imported correctly.

1 Like

fixed: Skinned or animated FBX not imported correctly · Issue #1525 · FlaxEngine/FlaxEngine · GitHub

2 Likes

@mafiesto4
Thanks so much, Good job :smiley: :+1:

@mafiesto4
Hi, I’ve confirmed with the latest master branch
that the models are indeed imported correctly, thanks for your work :+1:

However, I tested other models as well and unfortunately this model is not imported correctly
(even with the latest Flax build)

Unity : imported correctly

Unreal : imported correctly

Flax : latest master build

Can you look at this as well?
meanwhile I will try to test with other models.

@mafiesto4
I am terribly sorry, the above link is the FBX that I first imported to Unreal
(Unreal somehow import this correctly) then re-export it as a new “Fixed” FBX

This is the original raw FBX that is not imported correctly in Flax