Page MenuHome

Animation exported to FBX is not the same when imported back into Blender (or other software)
Closed, ArchivedPublic

Description

System Information
Operating system: Windows-10-10.0.19041-SP0 64 Bits
Graphics card: GeForce GTX 1070 Ti/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 451.67

Blender Version
Broken: version: 2.91.0, branch: master, commit date: 2020-11-25 08:34, hash: rB0f45cab862b8

Addon Information
Name: FBX format (4, 21, 3)
Author: Campbell Barton, Bastien Montagne, Jens Restemeier

Short description of error
I am exporting an animation of a skeletal mesh to FBX for import into Unreal Engine. The animation looks different/incorrect when imported into the following programs:

  • Back into blender 2.91.0 itself in a separate blend file
  • Unreal Engine 4.26
  • Maya 2020

The animation is broken in a consistent way in all three pieces of software, leading me to suspect this may be is an issue w/ the FBX exporter in blender. Please let me know if this is something stupid that I am doing that is incompatible w/ FBX. When I export to COLLADA and then import into Maya 2020, it looks correct.

Exact steps for others to reproduce the error

  1. Open the attached blend file.
  2. Play the animation (Action.005 in the NLA editor) and observe the arms move up and down along with the rifle. Video Link
  3. Note that the left arm moves in sync w/ the rifle, as though attached (no discrepancy in their motion).
  4. Disable the "Child Of" constraint on the rifle armature in preparation for export.
  5. Select the scene (except the camera). Just the Armature, character mesh, and rifle armature + mesh.
  6. Export to FBX w/ the following settings: Link (I have attached the resulting file as all.fbx)
  7. In a new blender instance, import the FBX.
  8. Attach the rifle to the "u_weapon_socket_r" bone of the character Armature w/ a Child Of constraint. (I have done this and attached this new blend file as "reimported.blend" if you want an example).
  9. Play the animation and observe that the left hand no longer moves consistently w/ the right (or the rifle). Video Link Now it drifts around a bit relative to the rifle. The effect is a bit subtle, so I recommend opening the blend file and watching to observe.

This same result can be obtained when importing into Unreal Engine 4.26, and Maya 2020. Video Link of the same issue happening when importing the all.fbx file into Maya 2020 (played back slightly sped up).

Notably, if I export as Collada and then import into Maya and add a similar child-of constraint, it looks correct. When importing the DAE file though, Maya prints the following warnings (which may be insightful):

While reading or writing a file the following notifications have been raised.
...
	Warning: The transform of node "Armature" is not compatible with FBX, so it is baked into TRS.
	Warning: The transform of node "Armature_pelvis" is not compatible with FBX, so it is baked into TRS.
	Warning: The transform of node "Armature_spine_01" is not compatible with FBX, so it is baked into TRS.
	Warning: The transform of node "Armature_spine_02" is not compatible with FBX, so it is baked into TRS.
	Warning: The transform of node "Armature_spine_03" is not compatible with FBX, so it is baked into TRS.
	Warning: The transform of node "Armature_neck_01" is not compatible with FBX, so it is baked into TRS.
	Warning: The transform of node "Armature_head" is not compatible with FBX, so it is baked into TRS.
	Warning: The unsupported technique element with profile "blender" in node element "Armature_head"
	Warning: The unsupported technique element with profile "blender" in node element "Armature_neck_01"
	Warning: The transform of node "Armature_clavicle_l" is not compatible with FBX, so it is baked into TRS.
	Warning: The transform of node "Armature_upperarm_l" is not compatible with FBX, so it is baked into TRS.
	Warning: The transform of node "Armature_lowerarm_l" is not compatible with FBX, so it is baked into TRS.
Truncated ...

Not sure why it is printing about FBX when importing the DAE file, but I thought it might be relevant. It does not print these warnings when importing the FBX (but does look incorrect).



Thanks very much for any assistance (and for developing Blender!).

Related Objects

Event Timeline

Gareth (gxcode) added a comment.EditedMar 25 2021, 7:42 PM

As a quick follow up, I noticed two additional things:

  • For whatever reason, when Maya imports the DAE file the spine rotation is gone. The relative pose of the arms is still correct though.
  • If I then convert the DAE file to FBX using Maya, the arms are correct in Unreal Engine (ignoring the spine).

EDIT: I also tried this plugin, and it works fine: https://blendermarket.com/products/better-fbx-importer--exporter

Philipp Oeser (lichtwerk) changed the task status from Needs Triage to Needs Information from User.Jan 21 2022, 2:45 PM

Hi and thx for the report (sorry this has taken ages to respond!)

I can confirm the behavior, however I am unsure if this might relate to the many invalid driver warnings that I am getting : P2751
Most (if not all) of these bones dont even seem to exist?
Could you clarify what is up with that? I am just trying to prepare this as best as I can and to remove unnecessary noise from the file.

Thx in advance!

Philipp Oeser (lichtwerk) closed this task as Archived.Jun 26 2022, 3:45 PM

No activity for more than a week. As per the tracker policy we assume the issue is gone and can be closed.

Thanks again for the report. If the problem persists please open a new report with the required information.