Infection Falloff

Summary

The Infection Falloff creates dynamic, simulation-based falloff patterns by propagating values across geometry using infection-style spreading algorithms. Starting from seed points or regions, the infection spreads to neighboring points based on proximity or connectivity, creating organic growth patterns.

Supports both radius-based and connectivity-based infection methods, with control over infection rate, dissipation, resistance, and reinfection behavior. Distance-weighted spreading creates natural falloff gradients, while the simulation can be played, stepped, or controlled manually for precise timing.

Multiple Seed Fields: Seeds can be specified via the Seed POP parameter or Input 1, where each point defines a separate seed field - one point per seed. The attributes of the seed POP are named the same as parameter tokens in the Infection Falloff operator, and override the parameters for each seed. You need only to create a Point POP with attributes named as the Infection Falloff parameters, and then add a point per seed, and set their values. (An attribute P will override the Position parameter, and an attribute radius will override the Radius parameter.) Alternately you can generate points procedurally with attributes that match the Infection Falloff parameter names.

Optional transition ranges provide smooth seed boundaries, and the result can be combined with existing falloff attributes, previewed with color ramps, and optionally enhanced with procedural noise.

Parameters

Page: Infection

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.
Infect By Infectby Method used to determine how infection spreads between points.
Radius radius
Connectivity connectivity
Distribution Distribution Distribution method for radius-based infection.
Default default
Unique unique
Closest closest
Search Radius Searchradius Maximum distance for finding neighboring points to infect (radius mode only).
Max Connections Maxconnections Maximum number of connections each point can have for infection spreading.
Infection Rate Infectionrate Speed at which infection values spread from infected to uninfected points.
Distance Weighted Spread Distweight Enable distance-based falloff for infection spreading, creating smoother gradients.
Weight Amount Weightamount Strength of distance-based weighting (when Distance Weighted Spread is enabled).
Dissipation Rate Dissipationrate Rate at which infection values decrease over time, creating decay effects.
Enable Reinfection Enablereinfection Allow previously infected points to be reinfected after dissipation (requires Dissipation Rate > 0).
Threshold Threshold Minimum infection value required before a point can be reinfected (requires reinfection enabled).
Resistance Resistance Resistance to infection spreading, slowing down the infection process.
Initialize Initializepulse Reset the infection simulation to initial state.
Start Startpulse Start the infection simulation from current state.
Play Play Continuously run the infection simulation.
Step Steppulse Advance the infection simulation by one step.

Page: Seed

Display Seed Selection Displayseed Visualize the seed selection region for infection starting points.
Enable Dynamic Seed Dynamicseed Allow seed points to change dynamically during simulation.
Threshold Seedthreshold Minimum value required for a point to become a seed.
Use Seed Attribute Useseedattr Use an existing point attribute to define seed values instead of spatial selection.
Seed Attribute Seedattr Name of the attribute to use for seed values (when Use Seed Attribute is enabled).
Seed POP Seedpop Reference to a POP containing points to use as seeds when no second input is connected.
Position Position Center position of the seed selection region. Can be overridden per-seed using a P point attribute.
Position Positionx
Position Positiony
Position Positionz
Radius Radius Size of the seed selection region. Can be overridden per-seed using a radius point attribute.
Transition Range Transitionrange Determines a transition range for seed fields. Can be overridden per-seed using a transitionrange point attribute.
Transition Align Transitionalign Determines a transition offset for seed fields. Can be overridden per-seed using a transitionalign point attribute.
Transition Type Transitiontype Determines a transition function for seed fields. Can be overridden per-seed using a transitiontype point attribute.
Linear linear
Smooth Step smoothstep
Ease In Ease Out easeinout
Output Seed Attribute Outputseedattr Write the seed selection values to an output attribute.

Page: Falloff

Combine Operation Combineop Mathematical operation used to combine this falloff with existing falloff values.
Add add
Substract sub
Multiply mult
Divide div
Screen screen
Overlay overlay
Maximum max
Minimum min
Set set
Combine Falloff Attribute Combattrscope Specifies which falloff attribute to combine with when Combine Operation is not set to Set.
Swap Operation Order Swaporder Reverses the order of operands in the combine operation (A op B becomes B op A).
Combine Strength Combstrength Blending factor for the combine operation, ranging from 0 (no effect) to 1 (full effect).
Output Falloff Attribute Outputfalloffattr Name of the attribute where the final falloff values will be stored.
Preview Falloff Previewfalloff When enabled, visualizes falloff values using a color ramp.
Falloff Ramp Fallofframp Color ramp preset used for visualizing falloff values when Preview Falloff is enabled.
Heatmap heatmap
Blackbody blackbody
Infrared infrared
Custom custom
Open Custom Ramp Opencustumramp Opens the custom color ramp editor for defining a custom falloff visualization gradient.
Reset Custom Ramp Resetcustomramp Resets the custom color ramp to its default state.

Page: Noise

Apply Noise Applynoise When enabled, adds procedural noise to the falloff values for organic variation.
Combine Operation Combineopnoise How noise values are combined with the base falloff (Add or Multiply).
Add add
Multiply mult
Type Type Noise algorithm type (Perlin, Simplex, etc.).
Perlin 2D (GPU) perlin2d
Perlin 3D (GPU) perlin3d
Perlin 4D (GPU) perlin4d
Simplex 2D (GPU) simplex2d
Simplex 3D (GPU) simplex3d
Simplex 4D (GPU) simplex4d
Seed Seed Numerical value that initializes the randomization.
Period Period Period (scale) of the noise field.
Harmonics Harmon The number of higher frequency components to layer on top of the base frequency. 0 harmonics give the base shape.
Harmonic Spread Spread The factor by which the frequency of a harmonic increases relative to the previous harmonic.
Harmonic Gain Gain Amplitude of the Harmonics layered on top of the base frequency.
Amplitude Amp The noise values amplitude (a scale on the values output).
Exponent Exp Sets the exponent. The internal value is raised by the power of the exponent.
Offset Offset Adds an offset to the resulting value.
Transform Order Xordnoise Sets the overall transform order for the transformations.
Scale Rotate Translate srt
Scale Translate Rotate str
Rotate Scale Translate rst
Rotate Translate Scale rts
Translate Scale Rotate tsr
Translate Rotate Scale trs
Rotate Order Rordnoise Sets the order of the rotations within the overall transform order.
Rx Ry Rz xyz
Rx Rz Ry xzy
Ry Rx Rz yxz
Ry Rz Rx yzx
Rz Rx Ry zxy
Rz Ry Rx zyx
Translate Tnoise Translate the points through the noise space.
Rotate Rnoise Rotate the points around the corresponding X, Y and Z axes. Angles are given in degrees.
Scale Snoise These three fields scale the Source geometry in the three axes.
Pivot Pnoise The pivot point for the transform rotates and scales.
Translate 4D T4dnoise Translates the points through the 4th noise dimension.

Page: Remap

Clamp Clamp When enabled, constrains falloff values to the 0-1 range.
Fit Fit Enables remapping of falloff values from an input range to an output range.
Auto Input Min Max Auto Automatically determines input range from actual min/max falloff values.
Input Min Inputmin Minimum value of the input range for remapping.
Input Max Inputmax Maximum value of the input range for remapping.
Output Min Outputmin Minimum value of the output range for remapping.
Output Max Outputmax Maximum value of the output range for remapping.
Invert Invert Reverses the falloff values (1 - value).
Enable Remap Ramp Enableremapramp Applies a custom curve defined by a ramp to remap the falloff values.
Open Remap Ramp Openremapramp Opens the ramp editor for defining the custom remapping curve.
Reset Remap Ramp Resetremapramp Resets the remap ramp editor.
Remap TOP Remaptop Reference to an external TOP for remap control. When specified, overrides the internal ramp editor.

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
Input 1 POP Seed

Outputs

Output 0 POP POPX_out1