Chapter 3 · Modifier Reference

3.16Tnpix Soft Body

The Tnpix Soft Body modifier turns a closed object into soft flesh: fat, jelly, rubber or muscle that wobbles, keeps its volume, has the weight of its material and collides with cloth, colliders and the ground. With fibres it is a simple muscle that contracts and bulges.

Location: Modify panel ▸ Modifier List ▸ Tnpix Soft Body

Experimental. Tnpix Soft Body is experimental in this release, and its behaviour may change in later versions. Its muscle simulation is entry level: fibres along a line that contract when activated, tendons at both ends, and a tension point that moves the bulge along the muscle. It is not a full anatomical muscle system.

The object's own points become the corners of a volume of small tetrahedra, the flesh, filled inside with more corners at the Resolution's spacing. The flesh is solved inside the Solver's own steps, so the Solver's pins, stitches, colliders, ground and self collision act on it as they act on cloth, and the object's surface keeps every cloth setting that reaches it. Put Tnpix Soft Body below the Tnpix Solver, like the other modifiers that describe the object.

  • It needs a closed mesh. An open mesh, or one with holes, gets no flesh and simulates as cloth; the status line says why.
  • Twice the steps. A Solver that holds a closed soft body runs twice its Substeps, and the flesh takes half its passes in each step: a muscle squeezed hard jumps far less from one folded shape to another. The simulation takes longer. A soft body whose own object carries an enabled Tnpix Tear does not count; a Tear on another garment of the Solver group does not change the steps.
  • Several Soft Bodies on one object are several materials in one flesh: each covers its own painted channel, an upper modifier over a lower one as its paint says, and points that no channel reaches take the lowest one's material.
  • Colliders. A soft body collides with the objects of its own Tnpix Collision modifier, on a Solver that holds only soft bodies as well as beside cloth, and on a Solver shared by several objects.
  • With a Tnpix Tear. A Tear on another garment of the Solver group leaves a soft body's flesh alone: the soft body keeps it while the garment tears. A soft body whose own mesh its Tear splits has no flesh — a Tnpix Soft Body does not tear, as a Tnpix Rigid does not — and simulates as cloth; its status line says the Tear has split this object's mesh.
  • Above a Tnpix Pin or a Tnpix Preserve. A Soft Body with a Channel placed above a Pin or a Preserve on the stack lets go of the points its channel paints: they move with the flesh while the rest stays held. A Soft Body with no Channel lets nothing go, and a Pin above the Soft Body holds its points. With Keep volume on, a small area let go on a body whose other skin is held moves little: the flesh behind it keeps its volume and has almost nowhere to go. Let go a larger area, or turn Keep volume off, for a looser one.
  • With a Tnpix Preserve on the same object, the surface points painted 1 in the Preserve's channel ride the animation below the Solver and the flesh between them moves: paint the parts that must follow the character and let the Soft Body's region jiggle on top of it. Placed above the Preserve, the Soft Body's channel may overlap the Preserve's: where it paints, the flesh wins.

Interface

Presets rollout

Saves every setting of the Soft Body to a preset file and loads it back, as on the materials (see Tnpix Material Standard). The list shows the Soft Body presets of the folder.

Tnpix Soft Body rollout

Soft Body group
Enabled Default on
Turns the soft body off without removing the modifier: the object simulates as cloth.
Material Default Jelly
Fat, Jelly, Muscle or Rubber sets every material and fibre setting at once; change one and the list reads Custom.
MaterialStiffnessDensityDampingFibres
Fat1.5 kPa0.92 g/cm³0.30off
Jelly5 kPa1.02 g/cm³0.08off
Muscle10 kPa1.06 g/cm³0.15on
Rubber500 kPa1.10 g/cm³0.05off
Stiffness Default 5 kPa
How firm it is, in kPa as for real materials: fat 1.5, jelly 5, relaxed muscle 10, rubber 500. Range 0.01 to 100,000.
Density Default 1.02 g/cm³
How heavy it is for its size; water is 1. With the Stiffness it sets the weight and the speed of the wobble at the object's real size. Range 0.01 to 20.
Damping Default 0.08
How fast its wobble dies: 0 wobbles on and on, 0.1 is jelly, 0.3 is fat, 1 settles without a wobble. Range 0 to 1.
Keep volume Default on
It keeps its volume as it wobbles: squashed in one place, it bulges next to it. Off, it squashes like a sponge.
Resolution Default 40 tets across
How many tetrahedra fit across the object's longest side. More is finer flesh and slower. Range 8 to 200. With several Soft Bodies on one object, the finest wins.
Region group
Channel / Refresh Default <none - the whole object>
The painted channel this Soft Body's material covers. <none - the whole object> covers the whole object. The flesh is always the whole object's; the channel says where this material is, and how fully: painted 1 is this material, 0 is the Soft Body's below it. On an object with one Soft Body the whole flesh is its material. Refresh reads the channel list from the stack again.
Status line
What the last simulation made: the flesh, its tetrahedra and their size, and on the last simulated frame its volume against its rest and, with fibres, the activation. Or why there is no flesh, and that the object simulates as cloth.

Soft Body Fibres rollout

Fibres Default off (on for Muscle)
Gives the soft body fibres along the fibre line: they pull when it is activated, and its volume bulges it across.
Fibre line Start / End Default none
The objects at the fibres' start and end: the fibre line runs from Start to End and moves with them, such as two bones or helpers linked to them. Neither picked, it runs along the object's own length. Pick both or neither. The soft body itself cannot be picked.
Strength Default 300 kPa
How hard the fibres pull at full activation. Living muscle is about 300 kPa. Range 0 to 100,000.
Max contraction Default 45 %
How short the fibres can get at full activation, as a share of their length. Range 0 to 90.
Tendons Default 10 % each end
How much of each end is tendon: it does not contract and is much stiffer. Range 0 to 45.
Tendon stiffness Default 30 x body
How much stiffer the tendons are than the body between them. Range 1 to 1000.
Activation Default 0
How hard the fibres work, from 0 to 1. Animate it to flex the muscle. Animatable.
Auto tension / Tone Default on, 5 %
The fibres tense by themselves as Start and End come closer, and keep a little tone so the body stays taut. Tone is how much tension it keeps, from 0 to 50 percent.
Tension point Default 0.5 of length
Where along the fibre line it tenses most, and bulges: 0 at Start, 0.5 in the middle, 1 at End. Animate it to move the bulge along the muscle. Animatable.
Tension spread Default 0.2 of length
How wide the tense area is, as a share of the fibre line. 0 tenses the whole body evenly. Range 0 to 1.
Tension Point sub-object level

Open the modifier's Tension Point level in the stack to see the fibre line and the yellow marker on it. With Move on, drag the marker along the line to set the Tension point.

Limits

  • A soft body squeezed hard against itself with Self Collision on can jump and leave a few tetrahedra inside out.
  • A soft body that only lies on a pinned cloth can sink through it. Sew it to the cloth with a Tnpix Stitch instead.
  • A layer that slides at Friction 0 can buzz; keep a little friction (0.3 is the Stitch's default).