POPX

Spring Modifier

v1.3.0
Modifiers

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

GroupGroup
If there are input groups, specifying a group name in this field will cause this POPX to act only upon the group specified.
Target Points Update POPPointsupdatepop
Reference to a POP node downstream in the network when Solver Mode is set to Advect. This reference will cause a feedback loop and re-injects the points next frame.
Do FalloffDofalloff
Enables falloff-based attenuation of spring effects.
Falloff AttributeFalloffattr
Specifies which attribute to use for falloff values that attenuate spring intensity.
PositionPosition
Applies spring physics to instance position.
RotationRotation
Applies spring physics to instance rotation.
ScaleScale
Applies spring physics to instance scale.
OtherOther
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 AttributeUsemassattr
Uses a per-instance mass attribute instead of the global Mass parameter.
Mass AttributeMassattr
Specifies which attribute to use for per-instance mass values.
MassMass
Mass value used in spring physics calculations. Higher mass results in slower response to spring forces.
Spring ConstantSpringconst
Stiffness of the spring. Higher values create tighter, faster-responding springs.
Damping CoefficientDampingcoef
Controls how quickly spring motion decays. Values closer to 1 result in less oscillation.
InitializeInitializepulse
Resets the spring simulation state to initial conditions.
StartStartpulse
Begins the spring simulation from the current state.
PlayPlay
Toggles spring simulation playback on or off.
Preview FalloffPreviewfalloff
Visualizes the Other float attribute as colors when Other is enabled.
Falloff RampFallofframp
Selects the color ramp used for visualizing the Other float attribute when Preview Falloff is enabled.
HeatmapheatmapBlackbodyblackbodyInfraredinfraredCustomcustom
Open Custom Ramp EditorOpencustumrampeditor
Opens the custom ramp editor for creating custom visualization gradients for the Other float attribute.
Reset Custom RampResetcustomramp
Resets the custom ramp to default gradient values.
BypassBypass
Pass through the first input to the output unchanged.
Free Extra GPU MemoryFreeextragpumem
Free memory that has accumulated when output memory has grown and shrunk.
Render PrimitivesRenderprimitives
Toggles rendering of POPX Geometry or shows it as point instances only.
Convert to Point PrimitivesConverttoptprim
Converts points to primitive points when Render Primitives is toggled off.
SRT / RSTSrtrst
Sets the transform order when using POPX Geometry as built-in TouchDesigner instances.

Inputs

Input 0POP
POPX/POP Geometry

Outputs

Output 0POP
POPX_out1