On this page

The full body IK tool in the animate state applies full body inverse kinematics to character rigs, letting you pose characters by adjusting high-level targets rather than manipulating individual joints. This helps to streamline complex character posing and motion editing while preserving natural joint behavior.

Posing with full body IK

Pose a character

To enter the full body IK tool, click on the top toolbar, or select Full Body IK from the radial menu (press C over the viewport). When you move the character’s joints, its other joints are pulled along with it:

Pin joints

You can pin joints to keep them in place. To pin a joint, select the joint and press H over the viewport. When you pin a joint, it changes color (see the Pin Type parameter). In the video below, the character’s right hand and foot are pinned:

To unpin a joint, select the joint and press ⌃ Ctrl + H over the viewport.

Adjust the influence of a pinned joint

To adjust the amount of influence that a pinned joint has on the rest of the joints, change the Weight and Priority parameters.

Priority

The priority determines the joints that take precedence when posing with full body IK - the position of a higher priority joint is more strictly enforced. If you want certain joints to drive the character’s pose, set a higher priority on those joints.

In the example below, the character’s right hand is pinned with a priority of 1, and the right foot is pinned with a priority of 2:

On the left video below, the hand that is pulled has a priority of 2, so it has more influence over the other hand, but not as much influence over the pinned foot. On the right video, the hand that is pulled has a priority of 3, so it has a lot more influence on the other pinned joints.

Note

A lower priority joint cannot move a higher priority joint.

Weight

The weight determines how strongly a joint influences the rest of the joints' movement and allows the rest of the body to partially follow the joint. A higher weight makes it harder to pull the joint away from its current position. Specify a weight when you want the joint to influence the character’s pose less rigidly than a priority.

If you want to enforce a strict order of precedence and resolve conflicts between multiple joints (for example, hand vs. foot vs. head), set a priority. If you want to fine-tune the influence of a specific joint, set a weight (for example, keeping the wrist at roughly the same position but allowing for some flexibility).

Limit the number of affected joints

To limit the number of joints that are affected by a joint’s movement, turn on Use Depth in the full body IK parameters, and set a value for Depth, which is the number of affected joints up the skeleton hierarchy, starting with the selected joint. For example, if Depth is set to 3, moving the character’s hand affects the hand, elbow, and shoulder joints:

Depth of 3 (left), depth of 5 (right)

Save the pose

To save the character’s new joint position, select the joint and press Enter over the viewport. This will keep the new joint position when you exit the full body IK tool.

Parameters and settings

Full body IK parameters

The following parameters are in the Full Body IK tab of the parameters HUD (press G over the viewport). These parameters are available when a pinned joint is selected:

Parameter

Description

Pin Type

Specifies how to pin the joint. You can pin the joint’s position, orientation, or both position and orientation. The joint changes color depending on the type of pin that is set:

  • Position - red

  • Orientation - blue

  • Position and orientation - yellow

  • Unpinned - white

Priority

Determines the joints that take precedence when posing with full body IK. Higher priority joint positions are more strictly enforced. See adjusting the influence of a pinned joint for more information.

Weight

Determines how strongly a joint influences the rest of the joints' movement. A higher weight makes it harder to pull the joint away from its current position. See adjusting the influence of a pinned joint for more information.

Use Depth

When turned on, limits the number of affected joints to the value specified in Depth. When turned off, all the joints in the skeleton are affected by the joint’s movement.

Depth

When Use Depth is turned on, this is the number of joints up the hierarchy that are affected by a joint’s movement, starting with the selected joint.

Reset Target

Resets the joint parameters to their default values.

Full body IK settings

The following settings are in the Full Body IK tab of the settings HUD (press ⌃ Ctrl + G over the viewport):

Setting

Description

Iterations

The number of iterations of the solve to perform.

Tolerance

The margin of error allowed for the full body IK solver. Once the tolerance is reached, the solver exits early from its iterations. When Tolerance is set to 0, the solver performs the full number of iterations.

Damping

Larger values produce more stable results when the target joint is unreachable. A value that is too large, however, requires more iterations for convergence. A suitable initial value is 0.5.

Reset Solver

Resets the settings to their default values.

How-to

To...Do this

Pin a joint

Select the joint and press H.

Unpin a joint

Select the joint and press ⌃ Ctrl + H.

Set keys on the joint position

Press Enter over the viewport.

Pin a joint’s position or orientation

In the parameters HUD, Full Body IK tab, set the Pin Type.

Limit the number of affected joints

In the parameters HUD, Full Body IK tab, turn on Use Depth and set a value for Depth.

KineFX

Overview

Preparing character elements

Rigging with APEX graphs

Building rig graphs with APEX Script

Rigging with rig components

Animating in the viewport

SOP-based animation

Deformation

Animation retargeting

Pre-H20

Panes

Appendix