Constraints

Rig Tools includes two new constraint types that work with Rig Tools joint chains, the Deform Field Constraint and the Spline Constraint.

Rig Tools Constraint

The deform field constraint constrains a transform node to a Rig Tools deform field. The transform will translate and rotate exactly as if it were a mesh vertex deformed by the field. Because the transform is driven by the deform field that deforms the mesh, rather than by the mesh itself, it will match the mesh’s deformation regardless of its position relative to the mesh. Figure 1.

../_images/fig01_deformFieldConstraint.png

Figure 1

To add a deform field constraint, select the joint socket of the chain you wish to constrain to, then the transform to be constrained, and choose Rig Tools ► Tools ► Create Rig Tools Constraint from the menu.

The Rig Tools Constraint is useful in a number of situations, such as:

  • Driving items of clothing, such as buttons, or jewelry that lies close to the skin.

  • Adding adjustment controls to the rig. The constraint will ensure they move with the rest of the Rig Tools-deformed mesh.

  • Driving other Rig Tools nodes, for instance constraining a Rig Tools joint to a different Rig Tools chain. Constraining the hip overshoot joint to the spine is a common example.

  • Making simple muscle rigs by driving the beginning and end of a Rig Tools chain with two other chains, such as rigging the pectoral or latissimus dorsi muscles to stretch between the spine and arm.

  • Driving rigid joints with a Rig Tools deformer so you can take advantage of Rig Tools deformation in a situation where only conventional joints are viable, such as a game engine.

  • “Deforming” a character that is actually made up of lots of little pieces of geometry, like dragon scales. Figure 2.

../_images/fig02_seaDragon.png

Figure 2

Spline Constraint

The Spline constraint attaches a transform directly to the spline. The transform will move with, orient along, and twist with the spline. Figure 3.

../_images/fig03_splineConstraint.png

Figure 3

To add the constraint, first select the joint socket of the spline you wish to bind to, then a transform node, then choose Rig Tools ► Tools ► Create Rig Tools Spline Constraint. The transform will be moved to the closest point on the spline when the constraint is created.

The position of the transform along the arc length of the spline can be changed by adjusting the Parameter attribute. The Parameter is relative to the joints that drive the spline. 0 represents the position of the first joint, 1 the second, and so forth until the last joint. To constrain to a position halfway along the spline between the first and second joints, the parameter would be set to 0.5, to a position halfway between the second and third it would be set to 1.5, etc. Figure 4.

../_images/fig04_splineConstraintParameter.png

Figure 4

The Spline deformer is useful for cases where you want to drive conventional joints or transforms with the flexibility and control over twist of the Rig Tools spline, but don’t need the mesh spreading and volume gain of the deform field. This is also a very useful technique for creating engine-compatible rigs with Rig Tools.

For an example where the Rig Tools spline constraint is used to drive a Maya pose interpolator, see Using Rig Tools With Other Deformers.

Removing Constraints

Rig Tools constraints can be removed by selecting and deleting the constraint node.