Blender FBX Animation Bones Default to Parent Translation

So, I’ve run into an issue importing FBX files from Blender and I’m trying to figure out if the issue should be reported to Unreal or Blender. Edit: Using Blender version 2.73a.

The issue is that if a bone in an armature in an animation has no change (location, rotation, scale), then frequently, the resulting deformation in UE4 ends up being distorted, where child bones may default to the position of the non-changing parent bone.

Here’s an example where the thigh bones default to the position of the root bone:

In order to fix the incorrect deformations, I have to add a some token change to the root bone to fix the thigh bones. In this case, I had to add key change of a micrometer to the root bone’s translation on frame 60.

However, as you can see, now the shoulders seem to be distorted. This leads to a whack-a-mole of adding small trivial changes to the animations to fix those incorrect animations. In a final change, I rotate the shoulder a fraction of a degree.

I’ve attached the Blender files that outline the problem and the changes I’ve made successively to fix the arising issues.
[link text][4]

Which version of Blender are you using? In Blender 2.73 there seems to be a known issue with their FBX exporter that causes bone deformations upon importing to other programs.

Yes, I am using Blender 2.73a.

If you have a copy of blender 2.72 or 2.70 does this error still occur?

Export from 2.70 works ok, but then 2.70 only export to 6.1 ASCII format. Export from 2.72 breaks using FBX binary format as per the error described.

Including exported fbx files for reference:
link text

Hi Alphanumber,

Thus far I haven’t been able to reproduce the error with the model you sent. Can you show me what import settings you are using?

Here are my export settings:

I mean the import settings when you import the model into UE4. These may help to determine what is occurring.

Are you by any chance using disconnected bones?

edit:

Yes you are. I’ve had this exact issue using disconnected bones as well. The bone will maintain it’s offset when it’s connected to the root bone, but when disconnected it’ll “fall down” to the root bone.

I believe the issue lies with Blender’s FBX exporter. Exact same result is seen in assimp.

Apologies. Here are my import settings:

I’ve spent a good two weeks exploring many possibilities, even making sure that the deforming bones are all connected from root to leaf bones.

Here’s a rig where all the deform bones are connected and the corresponding result in UE4:

[link text][2]

Hi Alphanumber,

I apologize for the delay in getting back to you, I was out of the office for a few days. However I have some great news! We were able to get your asset to work in the editor after exporting using the 6.1 ascii exporter in blender 2.73 with some very specific settings. Below are the settings we used in Blender and in the Editor to export/import. Additionally, you may want to ensure that your base pose is at a proper T pose by zeroing out any transformation values. Finally, make sure that your hand IK targets are zeroed out. These may be causing some of your errors on export.