Spring Controller

The Spring controller adds secondary dynamics effects to any point or object position. The end result is secondary mass/spring dynamics similar to the Flex modifier. This constraint adds realism to generally static animations.

When you apply Spring to an animated object, the controller preserves the original motion and applies secondary, velocity-based dynamics. You can control the object's mass and drag. When you first apply the controller, it constructs a virtual spring between the object's original position and where it would end up after forces are applied to it.

You can adjust spring tension and dampening. Increasing the tension creates a tighter spring, while increasing the dampening evens out jitters in the motion. You can add external forces like Gravity and Wind to affect the motion, and also add additional objects whose motions act as springs.

Note: You can also assign the Spring controller to animated vertices in Track View: Open the object's Point Controller Container hierarchy, select the vertices, and assign the Spring controller.

Interface

When you assign a Spring controller to an object, its rollouts automatically appear in the Motion panel. In addition, the rollouts open in a floating dialog. If you close the dialog, you can reopen it by right-clicking the track in the Motion panel Assign Controller rollout or in the Track View hierarchy and choosing Properties, or clicking the Properties button on the Track View toolbar.

Spring Dynamics rollout

Point group
Mass
The mass of the object to which the Spring controller is applied. Increasing the mass causes the "bouncing" spring motion to become more exaggerated.
Drag
Acts as air friction on the spring motion. A low Drag setting results in a greater "bouncing" effect, while a high Drag results in subdued bouncing. Default=1. Range=0 to 10.
Springs group

Add springs to an object using the Spring controller when you want the object to be affected by the motion of other objects in your scene. This effectively creates virtual springs between objects.

Add
Click this button, and then select one or more objects whose motion relative to the spring-controlled object will act as springs on that object. To finish adding springs, click Add again, right-click in a viewport, or press Esc.
Remove
Removes highlighted spring objects from the list.
Note: You cannot remove the Self Influence list entry, which is the spring-controlled object's influence on itself.
(List)
Lists all spring objects by name, and displays each object's Tension and Dampening settings separated by a slash (/). The spring-controlled object's influence on itself appears as Self Influence, and cannot be deleted. However, you can effectively remove the object's influence on itself by setting Tension and Dampening to 0, resulting in no motion.

To set Tension and Dampening for one or more objects in the list, highlight them in the list and then adjust the settings.

Tension
The "stiffness" of the virtual spring between the controlled object and the highlighted spring object(s).
Dampening
Acts as a multiplier of an internal factor that determines how quickly the object comes to rest.

With the Self Influence spring, changing Dampening has the same effect as changing Drag. With other springs, Dampening affects only the movement caused by that spring.

Internally, the dampening value is proportional to the tension, so as you increase the tension and make the solution more stiff, the dampening is increased to maintain system stability.

Relative/Absolute
With Relative chosen, changing the Tension and Dampening settings causes the new settings to be added to the existing values. With Absolute chosen, the new settings replace the existing values.

Forces Limits and Precision rollout

External Forces group
Add
Click this button, and then select one or more space warps in the Forces category that are to affect the object's motion. To finish adding space warps, click Add again, right-click in a viewport, or press Esc.
Remove
Removes highlighted space warps from the list.
[List]
Lists all spring space warps by name.
Calculation Parameters group
Start Frame
The frame at which the Spring controller first takes effect. Default=0.
Iterations
The accuracy of the controller application. If you get unexpected results, try increasing this setting. Default=2. Range=0 to 4.
X/Y/Z Effect
These settings let you control the percentage of the effect on the individual world axes. Default=100.0. Range=0 to 1000.0.