About Envelopes

 
 
 

An envelope is an object or hierarchy that is assigned as a "skin" to a set of deformers such as IK chains. Envelopes move and deform in response to the movements of their deformers. In this way, for example, a character moves as you animate its skeleton.

Every point in an envelope is assigned to one or more deformers. For each point, weights control the relative influence of its deformers.

The process of setting up an envelope is sometimes called skinning or boning.

Deformers

Deformers are the objects that control the shape of the envelope. You pick the deformers when you first create an envelope deformation. You can still add and remove deformers later if necessary.

Although it's common to use skeletons as deformers, you can actually use any object. The geometry of a deformer does not matter because the points of the envelope are assigned to its center. (Bones are the exception — points are deformed by the whole length of a bone.) Whether you use a cube, a sphere, or a null, all transformations of the surrounding envelope are relative in size, orientation, and position to the deformer's center, not its shape. Nulls and implicit objects are good choices because they do not render.

Light bulb (A) as an envelope. The light bulb is an object defined as an envelope to the hierarchy of a cube, a cylinder, and a cone. The hierarchy of objects as deformers is displayed in the explorer (B): The cube, cylinder, and cone are used to illustrate the example. Nulls would produce equivalent results, but geometric objects are easier to visualize.

Deform the light bulb by altering the skeleton: translate the cube (C); translate the cylinder (D); scale and rotate the cube (E).

Weights

Each point on an envelope has a total weight of 100, which is divided between the deformers to which it is assigned. For example, if a point is weighted by 75 to deformer A and 25 to deformer B, then A pulls on the point three times more strongly than B.

A point is weighted between the two nearest deformers.

Multiple Levels of Control

You have several levels of control over how points are assigned and weighted:

  • Deformers and weights are initially assigned to points when you apply an envelope deformation. There are several options for controlling how this initial assignment is performed.

  • You can use bounding volumes to fine-tune the automatic assignment of deformers.

  • You can then select points and reassign them to specific deformers or to no deformers at all.

  • You can edit the weighting of individual points by painting or editing numerically.

When you make changes that cause the initial weight assignment to be recalculated — for example, if you add deformers, or reset the reference pose — all modifications you have made to weights are preserved.

Envelope Weight Operator Stack

When you modify the weighting, your changes are added to an operator stack, similar to the geometry operator stack. Once you are satisfied with your envelope, you can freeze the weights to improve performance as described in Freezing Envelope Weights.

After you have frozen the weights, you can still make modifications, but Softimage cannot recalculate the initial assignment.

Approximate Envelope Deformations

Approximate envelope deformations give as much as double the performance of standard envelopes when you are interacting and playing back in the 3D views. With standard enveloping, the geometry is deformed and then the new normals are computed. With approximate enveloping, both the geometry and the normals are deformed. There are other performance enhancements as well, so the result can be faster even in wireframe display.

Standard enveloping is always used when rendering, including in the render region. This means that the shading can be different between the rendered result and the display in the 3D views.

By default, approximate envelope deformations are enabled, but you can toggle this setting on or off in your preferences.

To toggle approximate envelope deformations

  • Choose File Preferences, click Display, and set Allow Approximate Operators.

Limitations with Approximate Envelope Deformations

  • Approximate envelope deformations apply only to polygon meshes.

  • The envelope operator must be the topmost operator in the stack, otherwise the display uses the standard envelope deformation.

  • The envelope operator must be above the Modeling region marker in the stack, otherwise the display uses the standard envelope deformation.

  • Approximate envelope deformations may be slower with user normals.