Animated FBX Export Glitch - Foot Bones Jerking
Closed, ResolvedPublic

Description

System Information
Windows 8.1 64 bit; EVGA GTX 970

Blender Version
Broken: (2.78c e92f235283)

Short description of error

Hi, I've come across a troubling issue that I have not been able to solve. When trying to export an animated FBX file from Blender, the resulting file produces weird glitches in the foot bones of the character rig, despite the animation playing perfectly fine inside Blender initially.

Exact steps for others to reproduce the error
I have attached a link to a video of the rig with a ultra-simplified box-type mesh for an example. You can see the animation plays fine in Blender, but when you export the FBX and then re-import the FBX file you will see the feet glitching wildly. This behavior was first discovered inside UE4, but it is identical inside Blender after you import the FBX and watch the animation.

Thanks so much for your time in looking into this. If this behavior in the FBX can somehow be avoided by modifying the rig, please let me know. I have tried exporting over 30 times with different settings in both the FBX exporter and the rig itself, but have not been able to fix this.

-Adam

Details

Type
Bug

After further investigation, I believe my issue is directly related to this issue. Apparently, when exporting to FBX, you cannot both scale and rotate the parent bone, even if the child has Inherit Scale and Inherit Rotation turned off. It would be great to see a fix for this present limitation somehow.

Adam Janz (Copperplate) closed this task as Resolved.May 25 2017, 6:37 PM
Adam Janz (Copperplate) claimed this task.

I thank God for showing me the solution! All you have to do is add a "false foot" bone that is NOT a deform bone to each leg. I named this bone FootParent.

Connect this bone to the Lower_Leg bone (which has an IK constraint). Set FootParent's Inherit Rotation and Inherit Scale to off, and add a Copy Rotation constraint which copies your Foot_IK bone (X + Y invert, Target: Local With Parent, Owner: Local).

Now duplicate this FootParent bone (or add a new one in the exact same location and orientation) and name it Foot. This will be your deform bone, and is NOT connected to anything.

Finally add 3 constraints: Copy Location of the FootParent bone (Target: Local With Parent, Owner: Local); Copy Rotation of your Foot_IK bone (X + Y invert, Target: Local With Parent, Owner: Local), and optionally Copy Scale of your Foot_IK bone (Target: Local, Owner: Local). Now all your animations will export to FBX the way you created them in Blender!