Houdini 21.0 Nodes Geometry nodes

Vellum Configure Tissue geometry node

Configures tissue geometry attributes and constraints for Vellum simulations.

On this page
Since 21.0

This node separates out the configuration aspect of the Tissue Solver Vellum SOP so that it can be combined with other Vellum configurations and run in a regular Vellum Solver SOP.

It creates a series of constraints on the geometry (Tissue and Core surface layers and solid layers) generated by the Tissue Solidify SOP node, uses the settings defined by the Tissue Properties SOP node to drive them.

When setting up the Tissue pass (Tissue Layers and Core Layers), it is important to understand the following constraint relationships it has with the bones, muscles, and between its own layers:

Parameters

Initialization Frame

Used to initialize tpose if it doesn’t exist. Should be equivalent to the starting frame of your Vellum Solver to ensure constraints are initialized correctly.

ARAP Volume Preservation (Optimized)

When on, an optimized volume preservation is applied to the tissue using the Scale-Invariant ARAP model. This means that the incoming tissue Volume Stiffness (solidvolumestiffness attribute) is ignored and an infinite stiffness is applied to the volume as primitives undergo changes in shape. When off, the solver takes on the extra expense of an additional Volume Constraint (making the solve less efficient) and this may cause anomalies when Volume Stiffness is weaker than Shape Stiffness. ARAP Volume Preservation (Optimized) is on by default.

Warning

We strongly recommend that you keep this parameter turned on, otherwise erratic tissue behavior may occur, especially when Shape Stiffness exceeds Volume Stiffness.

Collisions

Collide with Muscle and Bones

When on, the tissue collides with the solid muscle geometry and the bone surfaces.

Collision Radius Scale

Specifies the scale multiplier value for the space between the tissue and the skin. You can view this space in the viewport with the Visualize > Tissue Collision Radius parameter on this node.

Rest Position

These attributes inform the solver which attribute to use as the rest position when establishing constraints. Typically, a tpose attribute exists both on the simulation geometry and on the second input geometry.

T-Pose Attribute

Specifies which attribute to derive the rest position or t-pose from for the character when establishing its tissue constraints. This attribute is usually found on the simulation geometry.

Attach Geometry T-Pose Attribute

Specifies which attribute to derive the rest position or t-pose from for the character when establishing its tissue attachment constraints. This attribute is usually found on the second input geometry.

Rigid Group

Rigid Group

Specifies the name of a rigid skin point group to include in the tissue simulation. When you need parts of your tissue surface to attach as rigidly as possible to the bone surfaces and muscle solid geometry as well as ignore sliding, you can create a Group SOP node, connect it to your tissue network’s Tissue Solidify SOP node, and then use it to define a rigid tissue point group for your tissue network. If you define a rigid tissue point group like this, then type the Group Name you defined on the Group SOP in this parameter field.

Rigid Stiffness

Specifies how tightly or loosely the rigid points are attached to the bone surfaces and muscle solid geometry.

Rigid Damping Ratio

Determines how much energy is lost when applying the attach constraint. This allows you to control how freely or how sluggishly the rigid points are attached.

Tip

If your rigid points exhibit high frequency jittering, you can reduce this jitteriness by increasing the Rigid Damping Ratio or by decreasing the Rigid Stiffness.

Sliding

Surface Sliding Method

Specifies the sliding method that is used for finding the next closest position on the bone surface and muscle solid geometry when sliding the Tissue Surface Layer.

Closest Point

Choose the closest point on the target geometry to the projected sliding position. This approach is fast but can improperly jump across concavities in the bone surface and muscle solid geometry.

Traverse Polygons

Start from the current bone surface and muscle solid primitives and successively walk outwards, finding the closest point on the surrounding primitives. This approach is more expensive but handles concave Tissue Surface Layer geometry better.

Traverse Triangles (Optimized)

Similar to Traverse Polygons with its improved handling of concavities, but can be many times faster as it uses specialized triangle distance functions.

Dual Sliding Method Mask

When enabled, specifies the name of a point attribute that acts as the dual method mask. Points with mask attribute values of zero or less will employ Closest Point sliding; mask values greater than zero will employ Traverse Triangles sliding. If the mask attribute cannot be found, the mask value will be assumed to be zero and therefore Closest Point will be used.

Relax Internal Geometry

Enable Internal Pin Stiffness

By default, the internal attach geometry (usually the simulated muscles and animated bones) supplied by this node’s second input (input 2) is treated as rigid, static deforming geometry and a hard attach relationship (pin) is established between its animated position. However if you enable the Relax Internal Geometry parameters, then the internal attach geometry will instead establish a soft attach (spring) relationship to its animated position. This allows the simulated tissue geometry to exert forces and cause the internal attach geometry to react dynamically.

Pin Stiffness Multiplier

Specifies the name of the attribute you can use to mask the soft vs. hard attach relationship that the internal attach geometry has with its animated positions. Where this point attribute has a value of 0, there is zero attachment between the tissue’s interior surface and the internal attach geometry’s animated positions. The internal attach geometry will be free to react to any and all forces (including Gravity). Where this point attribute has a value of 1.0, the spring stiffness to the internal attach geometry’s animated position is very high and it is similar to using a hard pin constraint.

This parameter is only available when Relax Internal Geometry is turned on.

Solid Stiffness

When allowed to act dynamically, internal attach geometry consisting of tetrahedra (like muscle meshes) will use this stiffness value to affect its shape.

This parameter is only available when Relax Internal Geometry is turned on.

Solid Damping

When allowed to act dynamically, internal attach geometry consisting of tetrahedra (like muscle meshes) will use this damping ratio to resist changes to its shape.

This parameter is only available when Relax Internal Geometry is turned on.

Surface Stiffness

When allowed to act dynamically, internal attach geometry consisting of triangles (like bone geometry) will use this stiffness value to affect its shape.

This parameter is only available when Relax Internal Geometry is turned on.

Surface Damping

When allowed to act dynamically, internal attach geometry consisting of triangles (like bone geometry) will use this damping ratio to resist changes to its shape.

This parameter is only available when Relax Internal Geometry is turned on.

Inputs

Input 1

Tissue geometry. This includes: the Tissue Surface Layer (polygons), Tissue Solid Layer (tetrahedra), Core Surface Layer (polygons), and Core Solid Layer (tetrahedra).

Input 2

Constraints. Any existing vellum constraints from other vellum configure nodes can be passed along to the vellum solver through here.

Input 3

Collision Geometry. Any collision geometry other than bones can be passed along to the vellum solver through here.

Input 4

Internal attach geometry. The muscle simulation cache and the animated bone geometry.

Outputs

Output 1

Vellum Geometry. The tissue geometry prepared for the Vellum Solver.

Output 2

Vellum Constraints Geometry. All the constraints created by this node as well as those passed in via the second input.

Output 3

Collision Geometry. The Bone geometry from Input 4, as well as any other external colliders passed in via the third input.

See also

Geometry nodes