Spring CHOP

From TouchDesigner 099 Wiki


The Spring CHOP creates vibrations influenced by the input channels, as if a mass was attached to a spring.

It acts as if, for every channel, there is a mass at the end of a spring, affected by a distance from the actual position (the output of the channel at the previous frame) to the desired position (the input channel at the current frame). When the distance (output - input) is zero, there is no force and therefore no movement.

Alternately, when Input Effect is force, the input is used as a force on the spring/mass, and the CHOP reacts to this force plus the force of the spring/mass. In this case, the mass would always stabilize at value 0 if the input is a force of 0.

The damping acts to make the spring system lose energy, so that higher damping makes everything come to rest sooner.

Its behavior is best understood by feeding it a chop that steps from one constant value to another in sequence, then playing with the constants.

PythonIcon.png springCHOP_Class


Spring Constant - The strength of the spring. Larger spring constants produce higher frequency oscillations.

Mass - The mass of the object on the end of the spring. Higher masses will produce lower frequency oscillations, have higher amplitudes, and be more resistant to damping.

Damping Constant - The amount of damping (resistance) applied to the spring action. Higher damping causes oscillations to die off more quickly.

Input Effect - Determines whether the input channel(s) represents a position or a force.

Initial Conditions From Channel - If on, the initial position and velocity are calculated from the values at the beginning of the channel.

Initial Position - The initial position of the mass attached to the spring.

Initial Speed - The initial velocity of the mass attached to the spring.

Standard Options and Local Variables

Local Variables: $C, $NC