Spring Modifier

Summary

The Spring Modifier applies spring physics to each instance, creating bouncy, elastic motion effects. It can affect position, rotation, scale, or custom float attributes, simulating realistic spring behavior with configurable mass, spring constant, and damping.

You can enable spring physics independently for Position, Rotation, and Scale, or apply it to a custom float attribute by enabling Other. The spring behavior is controlled by the Mass, Spring Constant, and Damping Coefficient parameters.

The effect can be attenuated using a Falloff Attribute, and you can override the global mass parameter with a per-instance Mass Attribute for more granular control. This enables spatially varying spring effects where different instances respond differently to the same spring forces.

Parameters

Page: Spring

Group Group If there are input groups, specifying a group name in this field will cause this POPX to act only upon the group specified.
Do Falloff Dofalloff Enables falloff-based attenuation of spring effects.
Falloff Attribute Falloffattr Specifies which attribute to use for falloff values that attenuate spring intensity.
Position Position Applies spring physics to instance position.
Rotation Rotation Applies spring physics to instance rotation.
Scale Scale Applies spring physics to instance scale.
Other Other Enables spring physics for a custom float attribute.
Attribute (Float) Attr Specifies which float attribute to apply spring physics to when Other is enabled.
Use Mass Attribute Usemassattr Uses a per-instance mass attribute instead of the global Mass parameter.
Mass Attribute Massattr Specifies which attribute to use for per-instance mass values.
Mass Mass Mass value used in spring physics calculations. Higher mass results in slower response to spring forces.
Spring Constant Springconst Stiffness of the spring. Higher values create tighter, faster-responding springs.
Damping Coefficient Dampingcoef Controls how quickly spring motion decays. Values closer to 1 result in less oscillation.
Initialize Initializepulse Resets the spring simulation state to initial conditions.
Start Startpulse Begins the spring simulation from the current state.
Play Play Toggles spring simulation playback on or off.

Page: Falloff

Preview Falloff Previewfalloff Visualizes the Other float attribute as colors when Other is enabled.
Falloff Ramp Fallofframp Selects the color ramp used for visualizing the Other float attribute when Preview Falloff is enabled.
Heatmap heatmap
Blackbody blackbody
Infrared infrared
Custom custom
Open Custum Ramp Opencustumramp Opens the custom ramp editor for creating custom visualization gradients for the Other float attribute.
Reset Custom Ramp Resetcustomramp Resets the custom ramp to default gradient values.

Page: Common

Bypass Bypass Pass through the first input to the output unchanged.
Free Extra GPU Memory Freeextragpumem Free memory that has accumulated when output memory has grown and shrunk.
Render Primitives Renderprimitives Toggles rendering of POPX Geometry or shows it as point instances only.
SRT / RST Srtrst Sets the transform order when using POPX Geometry as built-in TouchDesigner instances.

Inputs

Input 0 POP POPX/POP Geometry

Outputs

Output 0 POP POPX_out1