Blending Between FK and IK Animation

 
 
 

When you're animating a skeleton, you may need to use both FK (bone orientation) and IK (effector position) animation methods on the same chain. For example, arms bend at the elbow like hinges when you use IK, but to get a proper swing from the shoulder, you need to use FK.

In Softimage, there are two main ways in which you can have both IK and FK:

You can use FK/IK blending for:

How Does FK/IK Blending Work?

The FK is calculated and the bone orientations (preferred angles) from that solution (A) are used to calculate the IK to give a solution (B). The Blend FK/IK parameter then interpolates between solutions A and B in quaternion space to come up with a new set of bone orientations.

Keep in mind that if you pass through a critical zone with the FK, then the chain is likely to flip (not necessarily related to the blending).

Up-vector constraints are taken into account for the IK component of the solution that is blended.

Blending FK and IK Animation

To blend between FK and IK animation on a chain

  1. Animate the chain in FK (key the bone's rotation parameters), as well as in IK (key the effector's position parameters or use a position constraint, for example).

  2. Open the chain's Kinematic Chain property editor (select any chain element and press Ctrl+R).

  3. Drag the FK/IK Blend slider to set the value you want between FK (0) and IK (1). A value of 0 is 100% FK, while 1 is 100% IK.

    As you move the slider back and forth, you can see the smooth interpolation between the IK position and the FK-driven chain. You can then decide where you want the blend to start and finish by setting keys for this parameter.

  4. Set keys for the FK/IK Blend slider's values at the appropriate frames where you want the blend to start and finish.

    TipIf you have Affected By Last Bone selected for the effector's orientation (see Setting the Effector's Orientation Inheritance), you can select Link with IK/FK Blending (see Blending and Linking the Effector's Orientation). This option ties the effector's FK/IK blend with the chain's overall FK/IK blend you set here.

Plotting FK/IK Blending

If you want to plot the blended FK/IK animation on a chain, you need to do the following:

  1. Mark the correct parameters to get the correct results:

    • To plot FK, mark the bones' local rotation parameters.

    • To plot IK, mark the effector's local position parameters.

  2. Choose Tools Plot Marked Parameters from the Animate toolbar.

See Plotting (Baking) Animation [Animation] for more information.

TipYou can create marking sets on the bones' rotation and effector's position parameters to make it faster to plot the animation repeatedly — see Marking Parameters for Animation [Animation].

Blending and Constraints

FK/IK blending works in conjunction with constraint blending, allowing you to blend the FK/IK against multiple constraints. These constraints could be blended themselves, so you can create fairly complex behaviors.

  • On the effector, you can combine FK/IK blending with constraints that are also blended.

  • You cannot use FK/IK blending if you use constraints to control a bone's orientation with other objects: the bone's orientation must be directly controlled with either fcurves or expressions. You can work around this by rigging with expressions from an object.

See Blending Constraints [Animation] for more information.

Blending IK with Motion Capture Data (FK)

If you are using motion capture data, it is almost always in FK because FK records the full motion of the bones. Instead of combining the worlds of IK and FK with a special blending rig (one rig for IK, one for FK, and a blend set of controls to a third target rig), you can use the FK/IK Blend slider, saving you a lot of time and effort.

You load the motion capture data either directly driving the bone rotations or as an action source in the animation mixer where you can manipulate it. Then you can move and key the effectors (or whatever drives the chain in IK). Usually, you want to key the blend to make a smooth transition from 100% FK to the IK correction, and back again.

Example

This example shows how you can author new IK on top of FK, which is a fairly common case, but you can also do the reverse: take existing IK animation and create new FK moves to blend against. However, with this method, remember that you need to set FK poses at the start and end of where you want to blend the FK in and out from the IK to avoid any pops.

  1. Load a standard character and make a simple FK animation on the character's arm (see Getting Started with Ready-made Characters for these).

  2. Change the position of the hand effector at some point: position-constrain the effector to a target, and then alter the FK/IK Blend value (on the chain's Kinematic Chain page) to see it blend between IK (constrained) to the FK (full motion from the preset clip).

  3. Key the FK/IK Blend value at 0 (full FK) where you want to start the transition to IK, then key it at 1 (full IK) where you want to end the transition.

    In this way, you are using IK to alter the effect of an existing FK motion, and blending to avoid any snaps. Similarly, you can key the transition back from IK to FK.

    A

    Position constraint is set on right arm's effector to the cube (with a slight offset). The FK/IK Blend slider is set to 0 (100% FK).

    B

    FK/IK Blend is at 0.5.

    C

    FK/IK Blend is set to 1 (100% IK).

Ghosting FK/IK Blending

To help you see the how the chain is blending between its IK and FK states, you can use ghosting. Ghosts are shown for the full FK and full IK positions of the chains.

A

The blue ghost above the arm shows the chain at full FK (FK/IK Blend value of 0).

B

The arm chain in the middle has the FK/IK Blend value set to approximately 0.5.

C

The red ghost between the arm and the body shows the chain at full IK (FK/IK Blend value of 1).

For more information on animation ghosting in general, see Ghosting Animated Objects [Animation].

To ghost the chain's FK and IK states

  1. Select the chain that has FK/IK blending on it and open its Kinematic Chain property editor (press Ctrl+R).

  2. Select a ghost display type from the FK/IK Ghosting list:

    • Chain ghosts the chain's root, bones, and effector.

    • Branch ghosts all children of the chain root.

  3. Do one of the following:

    • Choose the Skeleton FK/IK Ghosting command in the Display Mode menu in any 3D view.

      or

    • Choose Display Options in the Display Mode menu to open the Camera Display property editor. Then click the Ghosting tab and select Enable Skeleton FK/IK Ghosting.

      TipIf you activate ghosting in a 3D view but still don't see the ghosts, check that ghosting is active for the scene layer to which the objects belong — see Activating Ghosting for Scene Layers and Groups [Animation].
  4. On the Ghosting page in the Camera Display property editor, set the ghost colors using the Before Color / FK Color and After Color / IK Color controls in the Keyframe Options group.