



Understanding skeleton posing |
When you pose and animate a skeleton, you are specifying the skeleton's motion. The term for the specification of motion is kinematics. Posing and animating skeletons involves two types of kinematics: forward kinematics (FK) and inverse kinematics (IK). Although the terms sound complicated, what they refer to is easy to understand. Forward kinematics is ideal for creating detailed arc motions because it requires the direct specification of each joint rotation. Inverse kinematics is ideal for creating goal-directed motion because it only requires the specification of a position and orientation that the joints in a joint chain will rotate to reach.
Forward kinematics (FK) |
In forward kinematics (FK), when you pose a joint chain you rotate each joint individually. For example, if you want a joint chain to reach for a particular location in space, you have to rotate each joint individually so that the joint chain can reach the location. To do this, you would rotate the joint chain's parent joint, then the next joint, and so on down the joint chain. When you animate a skeleton posed with forward kinematics, Maya interpolates the joint rotations starting with the root joint, then the root's child joints, and so on down through the skeleton's action hierarchy. Maya proceeds "forward" through the action hierarchy, starting at the root joint.
Posing and animating skeletons with forward kinematics is an excellent approach for specifying detailed arc motions, but it can take a fair amount of time if you are animating a large, complicated skeleton. Also, forward kinematics is often not very intuitive for specifying goal-directed motion. When you think about moving your hand to some location in space, you don't normally think about how you are going to rotate all the joints in your arm.
For more information on forward kinematics (FK) posing, see "Posing with forward kinematics (FK)" on page 260.
Inverse kinematics (IK) |
In inverse kinematics (IK), you can pose a joint chain based on a location in space you want the joint chain to reach. Inverse kinematics is more intuitive for goal-directed motion than forward kinematics because you can focus on the goal you want a joint chain to reach without worrying about how each joint will have to rotate. However, unlike forward kinematics, inverse kinematics requires that you use special tools for posing and animating. These tools are called IK handles and IK solvers.
An IK handle is like a wire that can run through a joint chain, providing a way for you to pose the entire joint chain in one action. As you pose and animate the joint chain with the IK handle, the IK handle automatically figures out how to rotate all the joints in the joint chain by using its IK solver.
The IK solver is the motor intelligence behind the IK handle. For example, if you want a joint chain to reach a particular location in space, you can move the entire chain by using the IK handle that runs through the chain. Given where you want the joint chain to reach, the IK solver figures out how to rotate all the joints in the joint chain for you by means of Maya's inverse kinematics methods.
For more information on inverse kinematics (IK) posing, see "Posing with inverse kinematics (IK)" on page 261.
IK handles and IK chains |
An IK handle runs through a selected joint chain like a wire, providing you with a way to move the entire joint chain. The joint the IK handle starts at is called the start joint. The last joint in the joint chain controlled by the IK handle is called the end joint.
The start joint could be the skeleton's root joint, or any joint in the skeleton's action hierarchy above the end joint. The IK handle can pose all the joints in the chain, from the start joint to the end joint. A joint chain that has an IK handle is called an IK chain. IK chains are easy to use. However, some background on how they work can help you get the most out of posing and animating with inverse kinematics.
The end of the IK handle, which is located at the end joint by default, is called the end effector. The reason the end of the IK handle is called the "end effector" is because it helps to bring about how the IK handle rotates the joints in the joint chain so that the end of the chain can reach some location in space. By telling the IK handle's IK solver where the end of the IK handle is, the end effector provides information the IK solver needs to figure out how to rotate all the joints for you.
When you are posing and animating an IK chain, you also need to tell the IK solver the position and orientation in space where you would like the end effector to move to next. That information is provided by the IK handle's goal. When you interactively pose an IK chain, what you are really doing is moving the IK handle's goal. The IK solver looks at where the goal is, looks at where the end effector is, and figures out how to rotate all the joints in the IK chain to get the end effector to be where the goal is.
A skeleton can have as many IK handles as you think you need for posing and animating its joint chains. However, be sure you are happy with which joint is the skeleton's root joint before you begin creating IK handles. The skeleton's root must not be between an IK chain's start joint and end joint. You cannot create an IK chain that includes the root joint unless that joint is the start joint. Also, if you change which joint is the root joint, you will invalidate IK chains that include the new root joint unless the joint is the start joint of an IK chain.
IK solvers and systems |
IK solvers provide the motor intelligence of IK handles. IK solvers figure out how to rotate all the joints in a joint chain controlled by an IK handle. Maya's interface offers three types of solvers:
Additionally, two other IK solvers, the IK multi-chain (MC) solver and the IK Power Animator (PA) solver are available only through MEL commands. The rotate plane, single-chain, and IK spline solvers are the best choices for IK solvers.
Maya's default IK solvers are organized by an IK system that controls how Maya evaluates the solvers. For more information on using IK solvers and systems, see "Using IK solvers and systems" on page 261.
Related MEL commands |
You can use MEL commands to create hotkeys, custom shelf buttons, and scripts. By using MEL commands you can improve your workflow, and access more of Maya's features.
MEL commands related to posing with IK handles include the following:
For more information about these commands, please refer to the online MEL Command Reference documentation.
Dependency graph nodes |
Maya carries out inverse kinematics posing with certain dependency graph nodes. As you perform inverse kinematics posing, you can view and select these dependency graph nodes by using the Hypergraph (Window > Hypergraph).
The dependency graph nodes for inverse kinematics posing can include the following:
For more information about these nodes, please refer to the online DG Node Reference documentation.



