Blender to UE4: Squash and Stretch Bone Heirarchy Scaling
I have been having an issue with getting a squash and stretch rig to behave correctly in UE4 after exporting from Blender. Particularly the issue is that the child bones for a character skeleton inherit the scale of the squash and stretch bones. As you can see here:
The setup is two stretchy bones in the leg then two non-stretchy bones in the foot, then there are some extra bones to form a pelvis and root bone. What is odd is that the foot bone appears to be inheriting the scale of the stretching shin bone.
Originally I created a simpler squash and stretch rig with one stretchy bone weighted to the cube and one non-stretchy child bone weighted to the sphere, shown below:
In this case however the child does not inherit the scale, so I am not sure why the leg behaves the way it does.
I have a feeling this is an issue to do with the IK setup on the leg. From other threads I have browsed it seems this seems to be an issue on the Blender export side of things. But perhaps there is a way to stop bones inheriting the scale values of parent bones inside Unreal?
If anyone has some advice on how to solve this I would be very grateful. Thank you.
asked Aug 24 '16 at 11:07 AM in Everything Else
We have found a solution! The solution discovered is to use constraints inside the 4.17 Animation Graph to copy the ideal scale from one bone to the offending bones.
For example say you have a stretchy spine_01 bone and you want the spine_02 bone to maintain its one to one scale. Apply a constraint to your spine_02 bone and copy the scale of a bone that holds a scale of one.
In an ideal scenario you would export an extra control bone that holds the correct transforms of your spine_02 bone and use that as your constraint.
Here is the result of the Squash and Stretch Rig!
And here is the constraint setup in the animation graph.
In this example I have a constraint node for the spine_02 bone and the head, I have set these nodes to constrain their scale values to the root since the root will always have a scale of one.
I'm so excited to have this working and I cant wait to get animating with it!!
answered Sep 21 '17 at 11:54 AM
Follow this question
Once you sign in you will be able to subscribe for any updates here