Houdini 21.0 Muscles and tissue

Muscles and tissue troubleshooting

On this page

Note

The Vellum muscles and tissue system uses a legacy workflow. See the Otis muscles and tissue system for a simplified workflow and recipe examples.

Muscles detach from their bones during their animation

Problem

Your muscles can’t keep up with their high-velocity animated bones.

This may be from the Damping parameter settings on your muscle attachment constraints. For any Vellum constraint, as a point’s position is subjected to various influences (forces, collisions, velocity change), the Vellum solver tries to satisfy all these factors to determine where the point should end up and whether or not the constraint is successful. The damping ratio that is applied to the muscle attachment constraints is designed to reduce the energy or contribution of the constraints during each substep of their muscle simulation. If the damping ratio is set to too high a value, then the contributions of the attachment constraints will be impeded.

Solutions

First, try the following:

  • Decrease the Damping value for the Muscle End attach constraint.

    For example, if your damping value is 0.01, then try decreasing it to 0.001.

If that does not solve the issue, then also try the following:

Degradation in the crease/fold areas of your tissue simulation

Problem

You are seeing long triangles, tissue surface non-uniform stretching, and tetrahedral tangling in the areas where your tissue creases or folds in on itself like the elbow and knee bend areas of bipeds and quadrupeds.

This is caused by the solver not being able to resolve an extreme tissue constraint vs. collision configuration. For example, when the iteration frequency for the tissue’s constraints and collision passes are set to drastically different values. The visual result of this error is an uneven distribution of energy in the tissue.

Solution

The default Constraint Iterations value is 100 and the Collision Passes value is 10, which gives you 1 collision pass for every 10 constraint iterations. So with these settings, the constraints will always win over the collision passes as the constraints get to update their points 10 times as often as the collisions.

To generate a much better result in the crease/fold areas of your tissue, try the following:

  • Increase the number of Collision Passes. However, collisions are expensive to compute.

  • Make sure the ratio between your tissue’s Constraint Iterations and Collision Passes values is much closer to a 1:1.

  • Alternatively, you can try increasing the number of Substeps instead of the number of Collision Passes.

Muscle Constraint Properties Vellum troubleshooting

Muscle Ends

To...Do this

Visualize your muscle ends attachments to a bone

  1. Create a Muscle Solver Vellum SOP node.

  2. Connect the Muscle Constraint Properties Vellum SOP output to the input1 of the Musclve Solver Vellum SOP. Connect your bones to the input2.

  3. In the Guides tab, select the checkbox for Attachment Constraints, then the checkbox for Muscle Ends.

Fix a muscle end that fails to attach to a bone

Follow the Visualize your muscle ends attachments to a bone procedure to visualize your muscle end issues.

Increase the Distance Threshold parameter in the Muscle Ends tab of Muscle Constraint Properties Vellum SOP gradually until the muscle end attaches to a nearby bone.

Fix a muscle end that attaches to a wrong bone

Follow the Visualize your muscle ends attachments to a bone procedure to visualize your muscle end issues.

  1. Decrease the Distance Threshold parameter in the Muscle Ends tab of Muscle Constraint Properties Vellum SOP to prevent muscle ends from searching too far for attachment points.

  2. Use the Muscle Paint SOP to manually adjust the areas where muscle ends are allowed to attach

    • Make sure the Muscle Paint SOP is placed after the MUscle Constraint Properties Vellume SOP in your node network.

Fix a muscle end that twists unnaturally

  1. Make sure Axial Ramp Correction in Muscle Constraint Properties Vellum SOP is on to help maintain consistent muscle orientation.

  2. Increase the Tangent Stiffness parameter in the Muscle Ends tab of Muscle Constraint Properties Vellum SOP. This also helps the muscle orientation.

Fix a muscle end that appears to be poking out of the skin

  1. Decrease the Compression Stiffness parameter in the Muscle Ends tab of Muscle Constraint Properties Vellum SOP]. This helps the muscles appear less stiff and conform better to the bones.

  2. You can also adjust the Rest Length Scale to a value slightly less than 1 to pull the muscle closer to the bone.

Muscle to muscle

To...Do this

Fix constraints forming between unrelated muscles

  1. Decrease the Distance Threshold parameter in the Muscle to Muscle tab of Muscle Constraint Properties Vellum SOP. This limits how far internal points can search for connections.

  2. Set Attachment Candidates to control which muscles should connect.

Strengthen constraints that detach easily or fail to stay connected during simulation

  1. Increase the Stiffness parameter in the Muscle to Muscle tab of Muscle Constraint Properties Vellum SOP. This helps the connection between muscles become stronger during movement.

  2. Increase the Compression Stiffness parameter in the Muscle to Muscle tab of Muscle Constraint Properties Vellum SOP. A value above 1 makes muscles more resistant to compression.

  3. Increase the Rest Length Scale parameter in the Muscle to Muscle tab of Muscle Constraint Properties Vellum SOP slightly below 1.

Loosen constraints that are too rigid and prevent natural movement during simulation

  1. Decrease the Stiffness parameter in the Muscle to Muscle tab of Muscle Constraint Properties Vellum SOP. This helps the connection between muscles move more freely.

  2. Decrease the Compression Stiffness parameter in the Muscle to Muscle tab of Muscle Constraint Properties Vellum SOP. A value below 1 may help muscles that are too rigid or compressing too much.

  3. Decrease the Rest Length Scale parameter in the Muscle to Muscle tab of Muscle Constraint Properties Vellum SOP slightly above 1.

Muscle to bone

To...Do this

Fix muscles that are too stiff and lack secondary motion

  1. Decrease the Stiffness parameter in the Muscle to Bone tab of Muscle Constraint Properties Vellum SOP. This helps the connection between muscles move more freely.

  2. Increase the Damping parameter in the Muscle to Bone tab of Muscle Constraint Properties Vellum SOP. This allows for the attachment to appear more syrupy and the muscle appears to swim towards the bones rather than follow them directly.

    • If the muscles are more towards the muscle ends, Increase the Damping parameter in the Muscle Ends tab of Muscle Constraint Properties Vellum SOP.

  3. Increase the Slide Rate parameter in the Muscle to Bone tab of Muscle Constraint Properties Vellum SOP. A higher slide rate allows the muscle to move more naturally over the bone.

  4. Decrease the Velocity Blend parameter in the Velocity Blend tab of Muscle Constraint Properties Vellum SOP to around 0.2 to 0.5. This should be your last resort after trying the other steps.

Collisions and velocity blend

To...Do this

Fix muscles that lag behind fast moving bones

  1. Increase the Stiffness parameter in the Muscle to Bone tab of Muscle Constraint Properties Vellum SOP. This helps the connection between muscles move more freely.

  2. Decrease the Damping parameter in the Muscle to Bone tab of Muscle Constraint Properties Vellum SOP. This allows for the attachments between muscles to respond quicker and reduce the sluggish connection between muscle and bone.

    • If the muscles are more towards the muscle ends, Decrease the Damping parameter in the Muscle Ends tab of Muscle Constraint Properties Vellum SOP.

  3. Increase the Velocity Blend parameter in the Velocity Blend tab of Muscle Constraint Properties Vellum SOP. This should be your last resort after trying the other steps.

Muscles and tissue

Basics

Working with muscles

Muscles recipes

Legacy Muscles (Vellum Solver)