Constraining the Preferred Axis of Rotation

 
 
 

2D and 3D chains have a preferred axis of rotation around which the chain's joints try to rotate when you translate the effector. The default axis of rotation is the Z axis of the chain's root. In a 2D chain, the second and subsequent joints in the chain then rotate like a hinge to change positions in the plane perpendicular to the Z axis, which is the XY plane.

You can predict the behavior of a chain because of this preferred axis of rotation. For example, draw a 2D chain in the Front view to create a leg. When you translate its effector around its root (as shown in the illustration on the left), the leg moves forward and backward, but not side to side.

When you change the preferred axis of rotation of a chain, Softimage tries to rotate the chain around the new axis when you animate the effector.

To constrain the chain's preferred axis

The process for constraining the preferred axis to a control object is the same as for the up vector (see Constraining the Up Vector to an Object) except that you choose either Create Skeleton Chain Preferred Axis or Constrain Chain Preferred Axis, and the constraint is offset by 90 degrees.

On the left, the preferred axis constraint.

On the right, the up-vector constraint.

Notice that they're both the same type of constraint, just using a different axis.

The values for the Preferred Axis X, Y, Z settings on the Resolution Plane page (see next page) show the position in global space where the preferred axis should point, but you won't be able to move the object using those settings: they only indicate the position of the control object.

Creating a Preferred-Axis Constraint without a Control Object

If you want to create a preferred-axis constraint without using a control object, the process is the same as for the up vector (see Constraining the Up Vector without an Object) except that you select Preferred Axis from the Res. Plane list and then change the Preferred Axis X, Y, Z settings to define the position of the constraint in global space.

Note
  • If you have both preferred-axis and up-vector constraints on a chain, the last one applied takes precedence.

  • If you perform any action that controls the rotation of a joint (key the rotation, use an orientation constraint, or use an expression on rotation), it takes precedence over the preferred-axis constraint.