This node is used to change the intrinsic rest shape of a tissue.

This node takes as input an array of one or more target shapes and associated weights. The tissue’s rest shape is then set to a blended combination of these target shapes. Once a tissue’s rest shape is set, internal elastic forces move it towards that shape.

This node takes surface meshes as input, but the simulation requires tet meshes. An internal process is done to warp the tissue’s tet mesh to fit each provided target shape. The surfacePenalty parameter controls how strongly the mesh is drawn to the target shape. Lower surfacePenalty values will produce smoother and more stable results, but they will not fit the target shape as tightly.

This node acts a lot like Maya’s blendshape node. Just like Maya’s blendshape node, it creates a weighted combination of target shapes and uses that as the rest shape for the tissue. Unlike Maya’s blendshape node, the blending is not a weighted combination of vertex positions. The target shapes are blended non-linearly in strain space.

To create and work with this node, use the zRestShape command.




Determines how much the tissue will be drawn towards the rest shape. This is similar to attachmentStiffness on an zAttachment


The power to which the value of surfacePenalty is raised.


Array of target rest shape meshes. These meshes can animate over time, that will reduce performance but that will run more slowly then keeping them static.


Array of blend weights corresponding to target. When targets are added with the zRestShape command, then the node also has named aliases to this attribute