All animation in 3ds Max is managed by a plug-in type called an animation controller (or controller for short). A controller manages the animation by returning a specific value given a specific time value.
Controllers are either keyframe based or procedure.
There are six basic controller types. Each one controls a specific data type:
Plug-in developers can create new controller types, or work with the properties of existing types.
A controller returns a specific value when given a time in the animation. In the following table controllers are categorized according to the type of value they produce, and correspondingly their SuperClass ID:
Type of Value | SuperClassID of associated controller |
float | CTRL_FLOAT_CLASS_ID |
Point3 (including color) | CTRL_POINT3_CLASS_ID |
position | CTRL_POSITION_CLASS_ID |
rotation | CTRL_ROTATION_CLASS_ID |
scale | CTRL_SCALE_CLASS_ID |
transform | CTRL_MATRIX3_CLASS_ID |
morph | CTRL_MORPH_CLASS_ID |
(user-defined) | CTRL_USERTYPE_CLASS_ID |
master (master point) | CTRL_MASTERPOINT_CLASS_ID |
masterblock | MASTERBLOCK_SUPER_CLASS_ID |