Path Constraints

A path constraint adjusts bone transforms using a path. Bones can be moved along a path and have their rotation adjusted to point along the path. Path constraints can replace translation keys, allowing movement to be defined more easily using a path. Many other uses involve constraining multiple bones to a path, then controlling the bones by manipulating the path rather than adjusting each bone individually. For example, bones can be spaced evenly along a path or can be scaled up from zero, causing them to appear to grow.

Setup

To create a path constraint, select the bones to be constrained, then click New... in the properties below the tree, choose Path Constraint, then choose an existing path to be the target. The bones can be anywhere in the bone hierarchy, as long as they are not ascendants of the target path.

The path constraint does not actually target a path, instead it targets a slot. The path constraint will use the path visible for that slot, if any. This provides extra flexibility because a single path constraint can work with multiple paths.

The path constraint has many settings to configure how the constrained bones are manipulated.

Clicking the bones will open a select box. Click a bone name in the select box to select that bone, or drag bones to change the order the path constraint will position the bones. Right clicking a bone name will select that bone without opening the select box.

The bones and target cannot be changed. A new constraint must be created to use a different set of bones or target.

Position mode

The position mode controls how the first bone is positioned along the path:

  • Fixed position places the bone at a fixed distance along the path from the start of the path.
  • Percent position places the bone at a distance along the path from the start of the path equal to a percentage of the total path length.

Position

The position of the first bone can be changed via the slider or by dragging the arrow icon which is placed on the first constrained bone in the editor area.

For a path that is not closed, the position can before (negative) the start of the path or past the end of the path. In this case, the position is determined using a straight line in the direction the start or end of the path is pointing.

Spacing mode

The spacing mode controls how bones after the first bone are positioned along the path:

  • Length spacing places bones at a distance along the path from the previous bone equal to the length of the previous bone. This is useful when different spacing between each bone is desired.
  • Fixed spacing places the bones at a fixed distance along the path from the previous bone.
  • Percent spacing places bones at a distance along the path from the previous bone equal to a percentage of the total path length. This can be useful to space bones equally along a path or otherwise have the spacing dependent on the length of the path.

Spacing

The spacing slider adjusts the spacing value. For Length spacing, the spacing value is added to the bone length.

Rotate mode

The rotate mode controls how bones are rotated, translated, and scaled to match the path:

  • Tangent rotate mode rotates the bone to point in the direction of the path at the bone's position. When the path bends, the tip of the bone won't fall on the path and the bone won't point to the position of the next bone.

  • Chain rotate mode first translates the bone to be at the tip of the previous bone, then it rotates the bone so it points to the position along the path of the next bone (which is dependent upon the spacing mode). When the rotation offset is not zero, the translation is not applied. When the path bends sharply, the previous bone tip might not fall on the path. Chain rotate mode is useful when bones need to be placed at the tip of the previous bone and the bones represent something rigid, such as tank treads.

  • Chain Scale rotate mode first rotates the bone so it points to the position along the path of the next bone (which is dependent upon the spacing mode), then it scales the bone so its tip is exactly at that position. This ensures all bone positions and tips fall on the path. Chain Scale rotate mode is useful when bones need to be placed at the tip of the previous bone and the bones represent something flexible, such as a snake.

Rotate mix

The rotate mix slider controls how much the bones are affected by the rotate mode. When the mix is 0, the rotate mode has no effect. When the mix is 100, the rotate mode adjustments are fully applied. A mix between 0 and 100 results in a transform between the bone's own transform and the rotate mode's adjustments. The rotate mix is generally at either 0 or 100 and is only transitioned between 0 and 100 briefly to have the path constraint smoothly take control of or release control of the bones.

Translate mix

The translate mix slider controls how much the bones' position is affected by the path constraint. When the mix is 0, the bone's position is used and the path constraint has no effect. When the mix is 100, the bone is positioned solely by the path constraint. A mix between 0 and 100 results in a position between the bone's own position and the path constraint's position.

When Link sliders is checked, the rotate and translate mix sliders will have the same value.

Rotate offset

The rotate offset is added to the rotation as computed by the rotate mode. This is provided for convenience, to avoid needing an extra bone solely to point in a different direction.

Keying

Changing the position, spacing, rotate mix, or translate mix sliders causes the key icon near the slider to turn orange. Clicking the key icon sets a key for the slider. The rotate and translate mixes are always keyed together.

Color

The path constraint color uses the color of the first constrained bone.

Next: Views Previous: Transform Constraints