An animation constraint is a special type of controller that can help you automate the animation process. You can use constraints to control an object’s position, rotation, or scale through a binding relationship with another object.
A constraint requires an animated object and at least one target object. The target imposes specific animation limits on the constrained object.
For example, to quickly animate an airplane flying along a predefined path, you can use a Path constraint to restrict the airplane’s motion to a spline.
You can use keyframe animation to toggle the constraint’s binding relationship with its targets over a period of time.
Common uses for constraints include:
Constraints can be applied to bones as long as an IK controller is not controlling the bones. If the bones have an assigned IK controller, you can only constrain the root of the hierarchy or chain.
The Attachment constraint is a position constraint that attaches an object's position to a face on another object (the target object doesn't have to be a mesh, but must be convertible to a mesh).
A Link constraint is used to animate an object linking from one target object to another.
The LookAt constraint controls an object’s orientation so that it’s always looking at another object. It locks an object’s rotation so that one of its axes points toward the target object. The LookAt axis points toward the target, while the Upnode axis defines which axis points upward. If the two coincide, a flipping behavior may result. This is similar to pointing a target camera straight up.
An Orientation constraint causes an object’s orientation to follow the orientation of an object or averaged orientation of several objects.
A path constraint restricts an object's movement along a spline or at an averaged distance between multiple splines.
A position constraint causes an object to follow the position of an object or the weighted average position of several objects.
The Surface constraint restricts an object to the surface of another object. Its parameters include U and V Position settings as well as an alignment option.