The Rotation controller is a component of the Transform controller. Rotation is a data type that can use most of the standard controllers such as TCB, Linear, and Noise.

Rotations in 3D are very complex. Even the standard controller types behave differently when used for rotation. The most common
way of calculating rotations in 3D animation uses four components to define rotation about an arbitrary axis. This is the
*quaternion* method.

The benefits of using quaternion rotation include:

- It produces a direct one-to-one relationship between the quaternion values and how objects interactively rotate in the scene.
- It produces smoother rotation than other methods.

The drawbacks of using quaternion rotation include:

- Rotation values in key information can be difficult to understand.
- Quaternion rotation controllers do not display function curves in Track View — Curve Editor. For this reason Euler XYZ is now the default rotation controller assigned to all objects.

You can use the following controllers only as rotation controllers.

Use Smooth Rotation when you want rotation to have a smooth and natural look. Smooth rotation uses nonadjustable curved interpolation, and has the following characteristics:

- You can move keys in Track View to change timing.
- You can directly rotate objects in the viewports to change rotation values.
- You cannot display controller or key properties, or function curves.

Use the Euler XYZ Rotation controller when you want individual function curve control for each axis of rotation. Euler XYZ is 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. Euler XYZ Rotation is the default controller applied to all objects.

Euler XYZ is not as smooth as quaternion rotation, but it is the only rotation type that you can use to edit rotation function curves.

Euler angles are well suited for animating mechanical rotations. They can also be a good choice for an object in an inverse kinematics chain because IK Rotational joints are defined as Euler angles. X, Y, and Z function curves displayed by this controller in Track View represent rotations in "world" or "parent" space which is the rotation system used by most 3D animation packages.

Customers upgrading from earlier versions of 3ds Max might find some difficulty in adapting to using Euler XYZ rotation controllers. If you find yourself experiencing unexpected rotation behavior, this might be the reason. Reassign TCB rotation as the default rotation controller and you will be able to regain your customary workflow.