You can assign controllers to any parameter in Track View using the Assign Controller button in the Track View toolbar.
You can also assign the same controller type to a selection of multiple parameters as long as all the selected parameters can use the same type of controller. For example, you could select the Length, Width, and Height parameters for multiple Box objects and assign the same controller type to all of them. They all use controllers that work on floating point data.
When you select a track with a controller assigned to it, the Properties button in the toolbar becomes active if that controller has parameters that you can set.
You can assign different controllers to animated loft deformation points. For example, if you’ve animated the points of a loft object's Scale deformation, you can go into the Track View and assign some other controller besides the default Bezier Point 3.
The IK Controller is not assigned using the Assign Controller button. It is applied when a Bones hierarchy is created.
Attachment Controller: A Position controller 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 able to convert itself to a mesh).
Audio Controller: Allows you to animate a parameter or object using a sound file.
Bezier Controller: Assign a Bezier controller when you want all of the function curves between transform keys to be smooth, to give the effect of continuous, natural movement. The Bezier Controller is the default controller for position and scale.
Barycentric Morph Controller: Applied during the creation of a morph object. Each morph key represents a series of weights for all morph targets.
Color RGB Controller (Point 3 XYZ Controller): Creates 3 separate tracks for red, green and blue.
Euler XYZ Rotation Controller: A compound controller that combines separate, single-value float controllers to specify an angle of rotation about each of the X, Y, and Z axes. The order in which the axes are rotated can be specified.
Expression Controller: Use mathematical expressions to control object parameters such as length, width, and height, or to control transform and modifier values such as the object's position coordinates.
IK Controller: Automatically assigned to a Bones hierarchy during the creation of Bones. Objects can be linked to a Bones hierarchy to take advantage of this controller.
Linear Controller: Makes the function curves between each of the keyframes into straight lines.
List Controller: This controller allows you to combine controllers.
Link Controller: Animates the transfer of hierarchical links from one object to another. You can, for example, have the same object passed from object to object.
Look At Controller: Takes over the entire Transform controller of an object, and then forces that object to constantly look at another.
Motion Capture Controller: Allows you to control and record an objects motion or parameter using an external device. Supported devices are mouse, keyboard, MIDI device, and joystick.
Noise Controller: Generates random values, which you can see as peaks and valleys in the function curve.
On\Off Controller: Provides only binary on and off control.
Path Controller: Allows you to assign a spline as a trajectory (path) for an object so that the object follows the path.
Position XYZ Controller: Splits the X, Y, and Z components into three separate tracks.
PRS Transform Controller: A compound controller that creates sub controllers for position, rotation and scale.
Script Controller: Similar to an Expression Controller. You can use the Max Scripting language to control objects and parameters.
Smooth Rotation Controller: Creates smooth rotations.
Surface Controller: Positions an object along the surface of another object.
TCB Controller: Provides Tension, Continuity, and Bias controls for the function curves between keys.
Waveform Controller: A float controller that provides regular, periodic waveforms. Blinking lights and rhythmic object motion are two examples of where this controller could be used.
Assign Controller: Choose a controller type from the Assign Controllers dialog. Depending on the type of track you have selected, the Choose Controller dialog displays a subset of the different types of controllers.
If a parameter has already been animated, then assigning a new controller has one of the following effects: