Biped Hierarchy
The biped hierarchy that is used to determine the relationships between the biped
parent and child body parts is different from the hierarchy presented by the max nodes
parent/child relationships. The reason for this difference is to make the biped move
more naturally when it is being animated. For example, the upper arm links inherit
their rotation from the center of mass, instead of from the clavicle, to which they
are connected. This enables you to animate the spine without counter rotating the
arms.
The internal biped body parts might have different parents for both rotation and
position. Here is a brief description about the hierarchy.
Rotation Hierarchy
- The base of the spine, the base of the neck, the upper arms and legs, and the feet
inherit their rotation from the center of mass.
- The clavicle inherits its rotation from the last spine link.
- The other biped body parts inherit their rotation from their parent INode.
Axis of Rotation
You can see the local axis of rotation for a bone by selecting the option from the Reference Coordinate System drop-down menu in the main toolbar. Typically,
these are the rotation characteristics.
- The X axis is through the length of the bone.
- Joints with one degree of freedom usually rotate along the Z axis.
- There are no thresholds for rotation except when Inverse Kinematics (IK) is applied
to a limb.
Position Hierarchy
- The base of the spine inherits its position from the center of the mass.
- The clavicle inherits its position from the last spine link.
- The upper leg link inherits its position from the pelvis.
- The other biped body parts inherit their position from the parent INode.
Biped Degrees of Freedom
The following biped body parts lack three degrees of freedom.
- The pelvis has two degrees of freedom.
- The clavicle has two degrees of freedom.
- The knee and elbow have one degree of freedom.
- The horse ankle in a four link leg have one degree of freedom.
- The finger and toe segments excluding the base have one degree of freedom.
Converting the Bone Transformation Hierarchy
To convert the bone transformation hierarchy of a biped by using the general SDK calls
on the nodes, perform the following steps:
- Traverse the bone link hierarchy and extract the local transformation matrices.
- Convert the transformation matrices into either quaternion or Euler angles by using
your own conventions.