Constraints

Summary

The Constraints operator generates the constraint data required by the Soft Body Simulation operator. It prepares the relationships between points including distance, stiffness, rest length, damping, and other physical properties that the soft body solver uses to simulate realistic deformation and behavior.

This operator creates various types of constraints that define how geometry should behave during soft body simulation. You can configure stretch (distance along edges), bend (across triangles), struts (internal support), pressure (volume preservation), cloth (combined stretch and bend), string (one-dimensional constraints), attach to geometry, glue (proximity-based), and pin to target constraints. Each constraint type includes controls for stiffness, damping ratio, rest length/angle scaling, and optional plasticity for permanent deformation.

Parameters

Page: Geometry

Visualize Geometry Visualizegeometry Display the input geometry in the viewport for debugging.
Group Type Geogrouptype Specify whether to use point or primitive groups for geometry selection.
Point point
Primitive primitive
Group Geogroup Name of the group to process. Leave empty to process all geometry.
Mass Mass How to calculate point mass.
Unchanged unchanged
Set Uniform setuniform
Calculate Uniform calcuniform
Calculate Varying calcvarying
Set Mass Setmass Uniform mass value per point when Mass is set to Set Uniform.
Density Density Material density used when calculating mass from geometry volume or surface area.
Visualize Mass Visualizemass Display point mass values as color visualization for debugging.
Thickness Thickness How to calculate thickness.
Unchanged unchanged
Set Uniform setuniform
Calculate Uniform calcuniform
Calculate Varying calcvarying
Set Thickness Setthickness Uniform thickness value when Thickness is set to Set Uniform.
Edge Length Scale Edgelengthscale Multiplier for edge lengths when calculating varying thickness.
Visualize Thickness Visualizethickness Display thickness values as color visualization.
Normal Drag Normaldrag Drag coefficient perpendicular to the surface. Higher values slow motion normal to the surface.
Tangent Drag Tangentdrag Drag coefficient along the surface. Controls sliding friction.
Group Type Pinanimategrouptype Specify whether to use point or primitive groups for pinned points.
Point point
Primitive primitive
Group Pinanimategroup Group name of points to pin to their animated positions.
Visualize Pinned Point Visualizepinnedpoint Highlight pinned points in the viewport.
Enable Partition Enablepartition Enable partitioning geometry into separate pieces for independent constraints.
Partition Method Partitionmethod Method for dividing geometry into separate pieces.
From Connectivity connectivity
From Attribute pieceatt
Number of Pieces Detected Numpieces Read-only display of how many pieces were detected.
Minimum Points per Piece Minpointsperpiece Minimum number of points required for a piece to be valid when using connectivity partitioning.
Search Passes Searchpasses Number of connectivity search passes for finding connected components.
Attribute Class Attrclass Attribute class when using From Attribute method.
Point point
Vertex vertex
Primitive primitive
Piece Attribute Pieceattr Name of the attribute containing piece IDs.
Visualize Pieces Visualizepieces Display each piece with a unique color.
Visualization Seed Visualizationseed Random seed for piece color generation.

Page: Constraints

Save File To Filesave File path to save the generated constraint geometry.
Save Geometry Savegeometry Pulse to save the current constraint geometry to the specified file.
Geometry File Geofile File path to load pre-generated constraint geometry from.
Load Geometry Loadgeometry Pulse to load constraint geometry from the specified file.
Constraint Type Constrainttype Type of constraint to generate.
None none
Distance Along Edges distalongedges
Bend Across Triangles bendacrosstri
Struts struts
Pressure pressure
Cloth cloth
String string
Attach to Geometry attachtogeo
Glue glue
Pin to Target pintotarget
Visualize Constraints Visualizeconstraints Display constraint connections as lines in the viewport.
Constraints Color Constraintscolor Color for visualizing constraints. Enabled only when Constraint Type is not set to None.
Constraints Color Constraintscolorr
Constraints Color Constraintscolorg
Constraints Color Constraintscolorb
Stiffness Scale Stretchstiffscale Scale factor for stiffness (powers of 10). Higher values create more rigid constraints.
1e+10 1e+10
1e+9 1e+9
1e+8 1e+8
1e+7 1e+7
1000000 1000000
100000 100000
10000 10000
1000 1000
100 100
10 10
1 1
0.1 0.1
0.01 0.01
0.001 0.001
0.0001 0.0001
0.00001 0.00001
0.000001 0.000001
1e-7 1e-7
1e-8 1e-8
1e-9 1e-9
1e-10 1e-10
Stiffness Stretchstiff Multiplier for stretch stiffness.
Damping Ratio Stretchdampratio Damping ratio (0-1) for stretch constraints. Higher values reduce oscillation.
Rest Length Scale Stretchrestscale Multiplier for the rest length. Values above 1.0 create pre-stretched constraints.
Enable Plasticity Stretchplasticity Allow permanent deformation of stretch constraints when threshold is exceeded.
Threshold Stretchthreshold Strain threshold before plastic deformation begins.
Rate Stretchrate Rate of plastic deformation per frame once threshold is exceeded.
Ratio of Current Rest Length Stretchratiorestlen When enabled, rate is relative to current rest length instead of absolute.
Hardening Stretchhardening Increase in stiffness as plastic deformation accumulates.
Enable Output Group Stretchenablegroup Create a primitive group containing stretch constraints on the constraint geometry.
Output Group Stretchgroup Name of the group to store stretch constraints.
Stiffness Scale Bendstiffscale Scale factor for stiffness (powers of 10). Higher values create more rigid constraints.
1e+10 1e+10
1e+9 1e+9
1e+8 1e+8
1e+7 1e+7
1000000 1000000
100000 100000
10000 10000
1000 1000
100 100
10 10
1 1
0.1 0.1
0.01 0.01
0.001 0.001
0.0001 0.0001
0.00001 0.00001
0.000001 0.000001
1e-7 1e-7
1e-8 1e-8
1e-9 1e-9
1e-10 1e-10
Stiffness Bendstiff Multiplier for bend stiffness.
Damping Ratio Benddampratio Damping ratio (0-1) for bend constraints. Higher values reduce oscillation.
Rest Angle Scale Bendrestscale Multiplier for the rest angle. Values above 1.0 create pre-bent constraints.
Enable Plasticity Bendplasticity Allow permanent deformation of bend constraints when threshold is exceeded.
Threshold Bendthreshold Angular strain threshold before plastic deformation begins.
Rate Bendrate Rate of plastic deformation per frame once threshold is exceeded.
Ratio of Current Rest Length Bendratiorestlen When enabled, rate is relative to current rest angle instead of absolute.
Hardening Bendhardening Increase in stiffness as plastic deformation accumulates.
Bend Output Group Bendenablegroup Create a primitive group containing bend constraints on the constraint geometry.
Output Group Bendgroup Name of the group to store bend constraints.
Group Type Pingrouptype Type of group for pin constraints: Point or Primitive.
Point point
Primitive primitive
Group Pingroup Group name for points/primitives to pin to target positions.

Constraint per Point Constperpoint Number of strut constraints to create per point.
Jitter Strutsjitter Random variation in strut search direction.
Any Hit Anyhit Use first hit instead of closest hit for strut connections.
Detach Point Chance Detach Probability (0-1) of randomly excluding points from strut creation.
Seed Strutsseed Random seed for strut generation and jitter.
Jitter Seed Attachseed Random seed for attach position jitter.
Jitter Amplitude Attachamp Maximum distance for random attachment position offset.
Jitter Exponent Attachexp Exponent for jitter distribution. Values above 1.0 bias toward smaller offsets.
Minimum Distance Mindist Minimum search distance for glue constraints.
Maximum Distance Maxdist Maximum search distance for glue constraints.
Max Constraints per Point Maxlinesperpoint Maximum number of glue constraints to create per point.
Uniform Distribution Uniformdist Distribute glue constraints evenly around each point.
Max Temp Neighbors Maxtempneighbors Maximum number of temporary neighbors to consider during glue constraint search.

Page: Common

Free Extra GPU Memory Freeextragpumem Free memory that has accumulated when output memory has grown and shrunk.

Inputs

Input 0 POP Geometry
Input 1 POP Constraints
Input 2 POP Collision Geometry

Outputs

Output 0 POP Geometry
Output 1 POP Constraints
Output 2 POP Collision Geometry