FBX export bug (restpose missing, wrong rotations) #85496

Open
opened 2021-02-09 11:21:16 +01:00 by Aleksei · 11 comments

System Information
Operating system: Windows-10-10.0.17134-SP0 64 Bits
Graphics card: Intel(R) HD Graphics 530 Intel 4.5.0 - Build 25.20.100.6326

Blender Version
Broken: version: 2.91.2, branch: master, commit date: 2021-01-19 16:15, hash: blender/blender@5be9ef4177
Worked: (newest version of Blender that worked as expected)

Short description of error
When exporting only animation to .fbx, the rest position is not exported.

Exact steps for others to reproduce the error

  1. Check armature with animation.
  2. Export only animation to fbx.
  3. Import animation from fbx.
  4. Rest pose of imported armature not available.
  5. If choose action with animation to same armature without animation, animation incorrect.
**System Information** Operating system: Windows-10-10.0.17134-SP0 64 Bits Graphics card: Intel(R) HD Graphics 530 Intel 4.5.0 - Build 25.20.100.6326 **Blender Version** Broken: version: 2.91.2, branch: master, commit date: 2021-01-19 16:15, hash: `blender/blender@5be9ef4177` Worked: (newest version of Blender that worked as expected) **Short description of error** When exporting only animation to .fbx, the rest position is not exported. **Exact steps for others to reproduce the error** 1. Check armature with animation. 2. Export only animation to fbx. 3. Import animation from fbx. 4. Rest pose of imported armature not available. 5. If choose action with animation to same armature without animation, animation incorrect.
Author

Added subscriber: @AlloteSoftware

Added subscriber: @AlloteSoftware

#72140 was marked as duplicate of this issue

#72140 was marked as duplicate of this issue
Member

Added subscriber: @lichtwerk

Added subscriber: @lichtwerk
Member

Changed status from 'Needs Triage' to: 'Needs User Info'

Changed status from 'Needs Triage' to: 'Needs User Info'
Member

Could you share the .blend file from which you export?

Could you share the .blend file from which you export?
Author

test.blend
expsettings.jpg - export settings.

[test.blend](https://archive.blender.org/developer/F9838426/test.blend) ![expsettings.jpg](https://archive.blender.org/developer/F9838442/expsettings.jpg) - export settings.
Member

Changed status from 'Needs User Info' to: 'Confirmed'

Changed status from 'Needs User Info' to: 'Confirmed'
Member

Can confirm there is something wrong.

(havent figured out what exactly tbh, but FBX can be incredibly complex to debug, this needs another look with more time)

Can confirm there is something wrong. (havent figured out what exactly tbh, but FBX can be incredibly complex to debug, this needs another look with more time)
Philipp Oeser changed title from Animation export bug to FBX export bug (restpose missing, wrong rotations) 2021-02-25 14:17:32 +01:00
Member

Added subscriber: @mulkyz

Added subscriber: @mulkyz
Member

I think this may be an FBX format limitation with the features that the FBX IO addon currently supports.

FBX IO imports armature rest poses from FBX Bind Poses. FBX IO also exports FBX Bind Poses, but Bind Poses include the mesh(es) and the bones that deform the mesh(es) (and their parent bones). No meshes exported means no Bind Poses are exported. The FBX files I have that were produced by external software and have no meshes also have no Bind Poses, so I think this is expected behaviour.

The FBX SDK documentation does mention that Rest Poses are a thing too, and it sounds like they would resolve this issue, but I'm yet to see one in an actual file, so I don't know if the FBX IO addon's importer will do anything with them, nor what sort of support other software has for them.

Until we have examples of FBX files using Rest Poses or examples of FBX files using Bind Poses without meshes (I'm not sure this is possible), I don't think there's anything we can do to fix this, aside from creating a custom solution that isn't part of the FBX standard, e.g. writing rest pose transformation to a Custom Property (FBX User Property) on each bone.

I think this may be an FBX format limitation with the features that the FBX IO addon currently supports. FBX IO imports armature rest poses from FBX Bind Poses. FBX IO also exports FBX Bind Poses, but Bind Poses include the mesh(es) and the bones that deform the mesh(es) (and their parent bones). No meshes exported means no Bind Poses are exported. The FBX files I have that were produced by external software and have no meshes also have no Bind Poses, so I think this is expected behaviour. The FBX SDK documentation does mention that Rest Poses are a thing too, and it sounds like they would resolve this issue, but I'm yet to see one in an actual file, so I don't know if the FBX IO addon's importer will do anything with them, nor what sort of support other software has for them. Until we have examples of FBX files using Rest Poses or examples of FBX files using Bind Poses without meshes (I'm not sure this is possible), I don't think there's anything we can do to fix this, aside from creating a custom solution that isn't part of the FBX standard, e.g. writing rest pose transformation to a Custom Property (FBX User Property) on each bone.

@Mysteryem , did some testing in both Maya and Blender.... and yeah, seems that Blender is doing all is can, under the circumstances. Maya is no better (needs a mesh). Also asked around a bit and received confirmation that things are working as expected. As much as I was hoping for a built-in solution, it doesn't seem like there's a way to store a "rest" (aka "bind") pose in FBX without a mesh.

So I'd say you can close this ticket.

Thanks for digging in!

@Mysteryem , did some testing in both Maya and Blender.... and yeah, seems that Blender is doing all is can, under the circumstances. Maya is no better (needs a mesh). Also asked around a bit and received confirmation that things are working as expected. As much as I was hoping for a built-in solution, it doesn't seem like there's a way to store a "rest" (aka "bind") pose in FBX without a mesh. So I'd say you can close this ticket. Thanks for digging in!
Sign in to join this conversation.
No Milestone
No project
No Assignees
6 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender-addons#85496
No description provided.