POPX

Apply Attributes

v1.3.0
Tools

Summary

Apply Attributes is the core transformation engine of POPX, taking packed primitives and applying template point attributes to drive transformations. This operator is the fundamental building block for most POPX operations, handling the application of position, rotation, scale, and pivot data from template points to geometry instances.

The operator uses the popxFalloff point attribute (or custom falloff attribute) to blend transformations smoothly. Orientations are blended using slerp (spherical linear interpolation) for natural rotation interpolation, while translations and scales are linearly interpolated. This ensures smooth, predictable motion even with complex falloff patterns.

Apply Attributes supports both absolute and relative transformations through its Local Space option, and offers flexible rotation and scale modes. The operator can also copy arbitrary point attributes from template geometry to instances, and automatically manages orient and scale attributes for downstream operators. The Create popxId Attribute option ensures each instance has a unique identifier for tracking and reference.

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.
Do FalloffDofalloff
When enabled, uses a falloff attribute to blend transformations smoothly.
Falloff AttributeFalloffattr
Name of the falloff attribute to use for blending transformations (default: popxFalloff).
Do TranslateDotranslate
Enables translation transformations from template points.
Do RotateDorotate
Enables rotation transformations from template points using slerp interpolation.
Do ScaleDoscale
Enables scale transformations from template points.
Do PivotDopivot
Enables pivot point transformations from template points.
Local SpaceLocalspace
When enabled, applies transformations relative to the instance's current transform.
Rotate ModeRotmode
Determines how rotations are applied to instances.
AddaddSetset
Rotate OrderRord
Order in which rotation axes are applied.
XYZxyzXZYxzyYXZyxzYZXyzxZXYzxyZYXzyx
Scale ModeScalemode
Determines how scale values are applied to instances.
MultiplymultReplacereplace
Copy AttributesCopyattrs
When enabled, copies point attributes from template geometry to instances.
Attributes To CopyAttrstocopy
Space-separated list of attribute names to copy from template points.
Create popxId Attribute if MissingCreateid
Automatically creates unique popxId attributes for instances that don't have one.
Output Orient AttributeOutputorientattr
Outputs orientation data as an attribute for downstream operators.
Output Scale AttributeOutputscaleattr
Outputs scale data as an attribute for downstream operators.
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
Input 1POP
Template Points

Outputs

Output 0POP
POPX_out1