You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
These animation FBX work fine in other engines, but look incorrect in Godot and Blender because the baked Node "Lcl Rotation" values are incorrect / based on the animation rather than the T-pose.
FBX seems to have a convention in which the poses included in the file should be ignored, and the first frame of the first AnimStack object is used instead.
Expected behavior in other engines is for the initial rest pose to be the first frame of the first animation stack object. This can be observed for example in Unity by swapping the order of the AnimStack objects in the ASCII FBX and observing that the humanoid configuration screen no longer puts the model into T-pose by default, when Pose -> Reset is selected.
FBX2glTF uses EvaluateLocalTransform passing the default time of infinite, which ignores animation curves.
Given the possibility that this could break or change existing content, it may make sense to be an optional setting (use first animation keyframe). It may help to do more testing/research on more FBX compatible software.
Steps to reproduce
Open the project
Open the idle / jump / run animation FBX
These converted FBX should be in T-pose so the retargeting system can run, but instead they are in the first frame
Godot version
4.1.dev 2c89516
System information
Windows 10
Issue description
These animation FBX work fine in other engines, but look incorrect in Godot and Blender because the baked Node "Lcl Rotation" values are incorrect / based on the animation rather than the T-pose.
FBX seems to have a convention in which the poses included in the file should be ignored, and the first frame of the first AnimStack object is used instead.
Expected behavior in other engines is for the initial rest pose to be the first frame of the first animation stack object. This can be observed for example in Unity by swapping the order of the AnimStack objects in the ASCII FBX and observing that the humanoid configuration screen no longer puts the model into T-pose by default, when Pose -> Reset is selected.
FBX2glTF uses EvaluateLocalTransform passing the default time of infinite, which ignores animation curves.
Given the possibility that this could break or change existing content, it may make sense to be an optional setting (use first animation keyframe). It may help to do more testing/research on more FBX compatible software.
Steps to reproduce
Minimal reproduction project
fbx files and project are available in:
kenney_fbx_animations.zip
The text was updated successfully, but these errors were encountered: