I've created a track with skeletal animation. I have a bone, that has Spline IK constraint, which target is bezier curve. This bezier curve has curve modifier, which target is also bezier. All I need is export animation of this track working into fbx for UE4, but after inserting keyframes, nothing happens. I also notices, that locaton and translation of bones changes only visualy after I move the Spline IK's bezier curve. I' ve tried many of variations, but nothing helps.
If the track is made from pieces parented to bones:
- Select all track pieces
- Object > Animation > Bake Action
- Check all the boxes and hit OK
- Now the animation is baked and should export without problems.
If the track is single piece deformed by Armature modifier:
- You will have to bake the animation of bones (same as above but bake to Pose)
- Or convert it into Shapekey animation with this script. This will also export fine.
This is a scaling artifact that happens when Y-stretch is enabled. The bones scale get applied additively down the chain, because the bones are parented to each other, resulting in an odd shape.
What you need to do is: Copy the SplineIK bone chain, delete the SplineIK constraint in this new chain and unparent all the bones from each other. Than add copy transform constraints to every bone in the chain, targeting the matching bone in the SplineIKchain. Make this new chain deform the mesh and disable deform for all the bones in the original splineIK bone chain.