Inverse Kinematics
Manikin and IK
In the previous tutorial we turned a character rig into a ragdoll, driven by your animation.
In this tutorial, we'll have a look at how we apply this to the IK controls of a rig.
Version 1.1 - Up to date
Written for Ragdoll 2021.12.10
and above.
Estimated Time
- 🕐 10 minutes
You will learn
- ✔️ How to assign markers to joints
- ✔️ How to retarget joints to controls
Where to find help
If you find or run into any issues with these tutorials, here's what you can do.
- ✔️ Ask in the chat
- ✔️ Ask on the forums
Bring Your Own Rig
Follow this tutorial either using our provided Manikin rig, or your own character. It can have any number of limbs.
Setup
Let's start fresh, with a non-dynamic character rig. In this case, the IK controls are disabled per default, so let's enable them.
- Select
master_ctl
- Set
Left Leg Fk Ik = 1
- Set
Right Leg Fk Ik = 1
Assign to Upper Body
As per usual, let's assign markers onto the FK controls in the upper body.
Find IK Joints
The legs are different. We don't want to pass the position of the IK controls in the solver, instead what we want are the joints they drive.
Where are the joints in my rig?
The location of these will differ in every rig. What's important is that they are the ones that move when you move your IK controls. Any joints that do that will suffice.
In the case of the Manikin, these will be located under the skeleton_grp
.
Assign to IK Joints
Once you've found a suitable set of joints, assign to them as per usual. Starting from the hip.
Recording
Per default, Ragdoll will record onto the control you assign.
However, we don't want keyframes on our IK joints. We want keyframes on our IK controls. Therefore, we aren't ready to record just yet.
Notice how our IK controls didn't get any keyframes?
Retarget
Because we did not assign to our IK controls, we'll need to retarget the joints onto the controls.
Now when we record, our retargeted IK controls will be getting keyframes from our simulated IK joints.
Not Just IK
This will work between any controls or joints. Even from one rig to another, or more complex IK like Spline IK. The Record Simulation
command uses a native Maya Parent Constraint
between the assigned and retargeted controls, so anywhere you could manually do this will work with this command.
Finalise
That's it for this tutorial! Here's some test animation.
Shapes
Grab the manipulator and tweak those shapes to fit your character.
Test Animation
Then drop some keys on our IK rig to see it in action.