In brief
- The Vellum Constraints SOP creates constraints between points for fabric, hair, and soft bodies.
- The first two inputs of the Vellum Solver take the surface geometry and its corresponding constraint geometry; the third input is for collision geometry.
- For excessive stretching, SideFX recommends trying a Substeps value of 2 or 5.
- SideFX documentation specifies 10 Collision Passes for most cases and 10 Smoothing Iterations by default.
SideFX’s official Houdini documentation describes the roles of Vellum Constraints SOP and Vellum Solver in fabric, hair, and soft-body simulations. Both nodes are listed as “Since 17.0” in the documentation. This guide covers the basic steps, from matching Vellum’s input geometry to adjusting constraint and solver settings. Option names and recommendations are limited to those described in SideFX’s documentation.
1. Match the surface geometry and constraints
In a Vellum simulation, visible geometry and constraint geometry are carried through separate inputs and outputs. Vellum Constraints SOP creates the selected constraint types on the incoming geometry. The surface geometry is on the first input and output, while the constraint geometry is on the second input and output. The two geometries must have a one-to-one point correspondence.
Prepare the surface geometry to be simulated.
Use Vellum Constraints SOP to create constraints appropriate for the geometry.
Connect the surface geometry to the Vellum Solver’s first input and the geometry carrying the matching points and constraint relationships to its second input. Points can be matched by their numbers or by the
idattribute.Connect collision geometry to the third input. Its topology must match from frame to frame; SideFX notes that some types of packed geometry are also recognized.
This connection setup is more than a formal configuration detail: the solver uses this correspondence to associate the simulated points with the points affected by the constraints. Changing other settings before verifying the match can make it harder to identify the source of a problem.
2. Choose the constraint type based on the material’s behavior
For fabric, the Cloth option creates both distance constraints along edges and bend constraints across triangles. For hair simulation, Hair includes edge distance and bending between edges, as well as torsion. String is a lighter hair constraint and does not include a torsion constraint, allowing the edges to rotate freely.
For soft bodies, Tetrahedral Volume creates a constraint intended to preserve the volume of each tetrahedron. However, this option does not include shear and stretch constraints. If those behaviors also need to be controlled, additional distance constraints are required. When working with tetrahedral geometry, adding Tet Conform SOP before the rest of the network is required to prepare the structure; Max Tet Scale determines the resolution of the tetrahedral mesh.
In fabric settings, Stretch Type selects the type of stretch constraint. The documentation says Triangle Stretch can converge to the target stiffness more quickly at high fabric resolutions, but does not support anisotropy through Enable Warp/Weft. Among the Bend Type options, Angle preserves the initial dihedral angle between triangles and is largely independent of topology. Distance can be faster, but affects the initial angle and topology behavior, and cannot recover when triangles flip over.
3. Configure the solution model and simulation steps
The Model setting is available for Triangle Stretch, Tetrahedral Stretch, and Tetrahedral Fiber. SideFX describes Linear ARAP as generally performing better for stiff, minimally stretching materials. Scale-Invariant ARAP aims to produce similar stiffness behavior at different scales and is described in the documentation as generally suitable for most materials. Consider the choice alongside the constraint type being used and the desired behavior.
Substeps determines how many substeps each frame is divided into. Fast collisions or sudden forces may require more substeps. If the simulation stretches too much, SideFX recommends trying a Substeps value of 2 or 5. Constraint Iterations determines how many times constraints are applied at each substep; stiff constraints may require more passes. The documentation suggests using the geometry diameter—the number of edges between the furthest points—as a starting reference.
| Setting | Recommended value | Effect |
|---|---|---|
| Substeps | Try 2 or 5 to start | Helps improve the solution for excessive stretching, fast collisions, and sudden forces. |
| Collision Passes | 10 in most cases | Determines the number of collision checks between constraint passes. |
| Smoothing Iterations | 10 passes by default | Helps distribute unconverged error more evenly; may need to be increased with high Constraint Iterations values. |
| Post Collision Passes | Number of layers + 2 | An approximate estimate given in the documentation for a final collision cleanup. |
Because collision passes are costly, investigate the type of problem instead of automatically increasing Collision Passes. SideFX considers 10 passes appropriate in most cases and notes that using more Substeps is often a better way to improve quality. For overlapping layers, adding 2 to the number of layers provides an approximate starting estimate for Post Collision Passes.
4. How can this be adapted to architectural and visualization workflows?
Teams producing simulated fabric or soft-body elements in architectural scenes can use these settings to determine which movements are constrained. For example, evaluating stretch and bend options separately for fabric can help control how the scene geometry responds. This does not mean Vellum was designed specifically for architectural visualization; the focus here is how the general simulation tools described in the documentation can be considered within a visual production workflow.
In a test scene, first check the geometry-to-constraint match, then the constraint type, and finally the solver settings. This makes it easier to track the effects of setting changes. Global Substeps can be used when exporting substepped geometry or when custom substeps are required for colliders. The trade-off is higher memory use per frame, as all substeps are stored. SideFX’s documentation does not provide information about licensing terms or hardware requirements, so these points need to be verified separately.
Common mistakes
Starting the simulation without checking the point correspondence between the surface and constraint geometry. Points must match by their numbers or by the
idattribute.Assuming that the Tetrahedral Volume constraint also solves stretch and shear. This constraint is intended to preserve volume; additional distance constraints may be needed.
Increasing Collision Passes for every collision problem. Collision passes are costly; in some cases, increasing Substeps may be more appropriate.
Using Global Substeps without considering its memory impact. This option retains all intermediate steps and requires more memory per frame.
Choosing Triangle Stretch for Cloth constraints and expecting anisotropy through Enable Warp/Weft. The documentation states that this combination does not support anisotropy.
Sources
2 sourcesSource texts are not republished; short quotes are marked, everything else is our own summary and commentary.
When evaluating Vellum settings in offices, the most useful approach is to first understand what the constraints preserve, then increase solver passes. This makes it possible to test fabric or soft-body behavior more deliberately and avoid applying the same setting to every problem.
Memory planning is especially important when using Global Substeps: SideFX’s documentation states that this option uses more memory per frame. It therefore makes sense to test the required resolution and substep needs in the scene first. The cited sources do not cover licensing or hardware requirements; these should be checked separately before making an investment decision.
Frequently asked questions
Which setting should you try if a Houdini Vellum simulation stretches too much?
First check the point correspondence between the surface and constraint geometry. If the problem persists, try a Substeps value of 2 or 5, one of SideFX’s recommended starting points.
What should be connected to the Vellum Solver’s three inputs?
The first input takes the surface geometry to be simulated, and the second carries the matching points and constraint relationships. The third input is for collision geometry, whose topology must match from frame to frame.
Is Tetrahedral Volume alone enough for soft-body simulation?
No. According to SideFX’s documentation, this constraint preserves volume but does not include shear and stretch constraints. Additional distance constraints are required for those behaviors.



