Controllers are plug-ins that handle the animation tasks in 3ds Max.
Specifically, a controller can:
- Store animation key values.
- Store procedural animation settings.
- Interpolate between animation key values.
Most animatable parameters don't receive a controller until you animate them. As soon as you change an animatable parameter
at any frame other than 0 with the Auto Key button on, or click the parameter track to choose Curve Editor Add Keys, 3ds Max assigns a default controller to the parameter.
You can work directly with controllers in two different places:
- Track View: Controllers are indicated in the Hierarchy list by the various controller icons. Each controller has its own individual icon.
Using Track View, in either Curve Editor or Dope Sheet mode, you can view and work with the controllers for all objects and
all parameters. See Track View .
- Motion panel: Contains special tools for working with transform controllers. The Motion panel contains many of the same controller functions
as the Curve Editor, plus controls necessary for working with special controllers such as IK Solvers. Using the Motion panel
you can view and work with the transform controllers of a single selected object. See Motion Panel.
Categories of Controllers
There are two main categories of controllers. These categories are easy to identify when looking at the Track View - Curve
Editor Hierarchy list.
Single-Parameter Controllers: Control animation values of a single parameter. Regardless of whether the parameter has a single component, such as the number
of sides of a cylinder, or multiple components, such as the RGB values of a color, the controller is handling a single parameter.
Compound Controllers: Combine or manage multiple controllers. Compound controllers include high-level Transform controllers, such as PRS, the Euler XYZ Rotation controller, the Transform Script controller, and the List controller.
A compound controller appears in the Hierarchy list as a controller icon with subordinate-level branches of other controllers.
Controllers and Constraints
In addition to controllers, 3ds Max can animate using constraints. These items are located in the Animation Constraints menu. The constraints include the following: Attachment, Surface, Path, Link, Position, Orientation, and LookAt.
When you assign a controller in the Motion panel or in Track View, you will see these constraints appearing in the list of
available controllers. You can assign them the same as the other controllers, but they are also assignable from the Animation
Constraints submenu. For more information, see Animation Constraints.
If you assign a controller using the Animation
Controller submenu, a list controller is automatically applied to the object, with the selected controller applied beneath
the list controller. This is different than controllers that are applied via the Motion panel.
Viewing Controller Types
You can view the controller type assigned to a parameter in both the Curve Editor and in the Motion panel. Before you can
view the controller types in Track View, you must do the following:
- On the Curve Editor toolbar, click the Filters icon. Then in the Filters dialog Show group, turn on Controller Types.
You can then see the name of the Controller type in the Hierarchy view.
- Assign controllers to parameters. You can do this on the Assign Controller rollout of the Motion panel, or through the right-click menu in the Hierarchy list in Track View.
The Parameters mode of the Motion panel always displays the transform controller types for the selected object.
Reading Controller Types
You can tell a lot about how a parameter is animated by looking at the controller type.
Parameter Name: Is always visible and is always to the right of the controller icon. It tells you what is animated.
Interpolation Type: Usually follows the parameter name. It tells how animation values are calculated. The label Diffuse: Bezier Color indicates a Diffuse color parameter using Bezier interpolation with Color data.
Data Type: Usually follows the interpolation type. It tells what type of data is used. The label Height: Linear Float indicates a Height parameter using Linear interpolation with a floating point value.