Modifying Envelope Weights

You can edit the weights of points on an envelope in several ways:

• By painting, as described in Painting Envelope Weights.

• By setting numerical values, as described in Editing Envelope Weights Numerically. You can do this using either the Weight Editor or the Weight Paint Panel.

• By smoothing, as described in Smoothing Envelope Weights.

• By locking, as described in Locking Envelope Weights.

• By mirroring symmetrically, as described in Mirroring Envelope Weights Symmetrically.

• By limiting the number of deformers per point and enforcing that limit, as described in Limiting the Number of Deformers per Point.

When you have finished weighting, you can freeze the weights as described in Freezing Envelope Weights.

 

A good first step when modifying envelope weights is to apply a smooth operator on the entire envelope. This can often improve the weighting in many areas at once. After that, you can touch up specific areas with the other methods.

Tools for Modifying Envelope Weights

There are two main tools for modifying envelope weights:

• The weight paint panel is a tool that combines features from the weight editor, the brush properties, and the Animate toolbar into one convenient toolbar. You can use it either for painting weights or setting weight assignments numerically.

• The weight editor is a view that can show the assignments of all the points and deformers at once or just the selected ones. It allows you to set the weight assignments numerically.

In addition, the Brush property editor contains various options for controlling how weights are painted.

Weight Paint Panel

The weight paint panel combines several features from the weight editor, brush properties, and the Animate toolbar. It is limited to displaying one envelope at a time.

 

A

Choose a paint mode.

B

Activate the Paint tool.

C

Set the paint density.

D

Set the brush size.

E

Update continuously (on) or only when mouse button is released (off).

F

Pick a deformer for painting from the 3D views.

G

Select the deformer with the most influence on the point you pick.

H

Click to pick the deformer for painting. Right-click for other options.

I

Set weight assignment of selected points to the current deformer numerically.

J

Numeric weight assignment options.

K

Smooth weights on object or selected points.

L

Reassign points to other deformers.

M

Freeze initial weight assignment and any modifications.

N

Open the weight editor.

O

Display only the current deformer’s weight map.

P

Change the color of the current deformer.

 

Right-click in the list of deformers for a menu with display, weight lock, and other options.

To display the weight paint panel

• Click the weight paint panel icon at the bottom of the toolbar.

 

or

• Press Ctrl+3.

Weight Editor

The weight editor allows you to modify envelope weight assignments numerically. Unlike the weight paint panel, it can display the points and deformers of multiple envelopes at the same time.

 

A

Control the display of points and deformers.

B

Lock the weights.

C

Deformers are listed in columns. Right-click for display options. Drag a column border to resize.

D

Multiple envelopes. Double-click to expand and collapse, or right-click for more options.

If some points aren’t fully weighted, the name is shown in red. Hover the mouse pointer over the name to see how many points aren’t fully weighted.

E

Selected cells are highlighted.

F

Non-zero weights are shaded.

G

Points are listed in rows. Click to select, right-click for display options. Drag a row border to resize.

Points that aren’t fully weighted are shown in red.

H

Points with more deformers than the limit are shown in yellow, as are envelopes with such points.

I

Set the weight of selected cells.

J

Weight assignment options.

K

Limit the number of deformers per point.

L

Freeze the envelope operator stack.

M

Smooth weights on the object or selected points.

N

Reassign points to other deformers.

O

Transfer the cell selection to 3D views.

P

Control the display of enveloped objects.

To display the weight editor in a viewport

• Choose Weight Editor from the Display menu of a viewport.

To display the weight editor in a floating window

Select one or more envelopes and do one of the following:

• Press Ctrl+E.

or

• Choose Deform > Envelope > Edit Weights from the Animate toolbar.

or

• Choose View > Animation > Weight Editor from the main menu.

or

• Click Weight Editor on the weight paint panel.

Painting Envelope Weights

You can use the Paint tool to adjust envelope weights. This lets you use a brush to apply and remove weights on points in the 3D views. Painting always normalizes weights so that they add up to 100% — if you do not want this, use the weight editor or the Edit Tools section of the weight panel to turn off normalization and set weights numerically.

When you paint a stroke, a Weight Painter operator is applied to the envelope weights’ stack. Successive paint strokes are combined into a single operator to minimize stored data and increase performance.

If a new paint stroke cannot be added to the previous operator (for example, if the previous operator is a Smooth Envelope Weight operator instead of a Weight Painter), then a new Weight Painter operator is applied on top of the stack.

Overview of Painting Weights

This section provides a quick overview of painting envelopes weights. Each step is described in more detail in the sections that follow.

1. Select an envelope.

2. Activate the Paint tool by pressing W. For additional ways to activate the Paint tool, see Activating the Paint Tool [Interface and Tools].

3. Pick a deformer for which you want to paint weights. See Picking Deformers.

4. If desired, set the paint mode. See Setting Paint Modes.

5. If desired, adjust the brush properties:

- Press R and drag the mouse to change the brush radius interactively. You can also set the radius on the weight paint panel. For additional ways to set the radius, see Changing the Brush Radius [Interface and Tools].

- Press E and drag the mouse to change the opacity interactively. The opacity controls how much weight is added with each stamp of the brush. You can also set the opacity on the weight paint panel.

- Set other options in the Brush Properties Property Editor [Properties Reference] (Ctrl+W).

6. Click and drag to paint. In normal (additive) paint mode:

- To add weight, use the left mouse button.

- To remove weight, either use the right mouse button or press Shift while using the left mouse button.

- To smooth weights, press Alt while using the left mouse button.

7. Repeat steps 3 to 6 for other deformers and points until you are satisfied with the weighting.

Picking Deformers

When you paint weights on an envelope, you are modifying how points are weighted to the current deformer. Picking a different deformer allows you to change how points are weighted to the other deformers of the envelope. The active deformer is highlighted in the 3D views.

To pick a deformer for painting

Do one of the following:

• Press D and then pick a deformer in a 3D view.

or

• Click Pick on the weight paint panel and then pick a deformer in a 3D view.

or

• Click a deformer’s name in the list on the weight paint panel.

or

• Click Pick By Vertex on the weight paint panel and then pick a vertex on the envelope. The deformer with the most influence on that point becomes active for painting.

Setting Paint Modes

You can set paint modes from the weight paint panel or the Brush property editor. There are five modes:

Add (Normal) adds weight with the left mouse button.

- Use the right mouse button or press Shift+left mouse button to remove weight.

- Press Alt to smooth.

Abs (Set Weight) sets weight to the current Opacity value.

Smooth blends the weights between deformers. As an alternative, you can apply a Smooth operator as described in Smoothing Envelope Weights.

Reveal scratches away the previous paint operator to reveal the weight “underneath” it.

Erase removes the influence of the deformer. It is equivalent to Abs mode with Opacity set to 0. This mode is available only on the weight paint panel.

Painting Tips

Here are some quick tips to consider when painting weights:

To paint weights on a subdivision surface created with the geometry approximation method, click the eye icon on a viewport’s menu bar and make sure that Polymesh Hulls is on. To see the weight maps on the hull, make sure that Subdivision Surfaces is off.

 

• When painting on NURBS surfaces, you can increase performance by reducing the geometry approximation settings. The Paint tool uses the triangulation of the object to follow its surface. For more information, see Geometry Approximation on NURBS [Surface and Curve Modeling].

• Use the Solo option on the weight paint panel to display the weight map for only the current deformer. This makes it easier to see which points the deformer influences and by how much.

• If your envelope has multiple maps, for example, a weight map controlling a Push deformation in addition to an envelope weight map, then you may need to select the envelope weight map explicitly before you can paint on it. Softimage remembers the last map selected or applied on each object.

A quick way to select the envelope weight map is to select the enveloped geometry object, then choose Explore > Property Maps from the Select panel and select the map to paint on.

Editing Envelope Weights Numerically

You can set envelope weights numerically using either the weight editor or the weight paint panel. The weight editor has a full set of controls, while the weight paint panel has a subset of these.

You can set a weight numerically by selecting a deformer and a point, then adjusting the Weight slider. You can turn the Normalize option off if desired.

Overview of Setting Weights Numerically

This section gives a quick overview of the process of editing weights numerically. The sections that follow provide more details.

1. Make sure the weight editing options and Normalize are set how you want them.

2. Specify the points you want to modify. The weight paint panel lets you modify the points that you select in the 3D views, while the weight editor gives you more options for specifying points and deformers.

3. Use the slider to adjust the weights.

Setting Weight Editing Options

When you edit weights numerically, the weight options determine how the weights are affected by values you set:

Abs (Absolute) sets the weight to exactly the value you apply.

Add (Additive) adds or subtracts an amount to the current weight.

Add % (Add Percentage) adds or subtracts a percentage of the current weight.

The Normalize Option

The Normalize option automatically adjusts weight values so that they always add up to 100%. For example, suppose a point is weighted 50% to the shin and 50% to the femur. If you set the shin weight to 40%, the femur weight is automatically changed to 60% if Normalize is on.

There are two situations where you would want to turn Normalize off:

• A point is weighted to three or more deformers, and you want to set numerically exact values. After you have set the weight for the first deformer, you do not want that value to change when you set the weight for the second deformer. (As an alternative in this case, you can lock weights instead of turning off Normalize — see Locking Envelope Weights.)

• You want a “partial” envelope effect. If a point’s weights do not add up to 100%, it behaves as if it is partly assigned to no deformer. Its position is a mix of the reference pose and the positions determined by its existing deformers.

When Normalize is on and you adjust a weight value, the other values are modified proportionally (that is, they are each multiplied by the same factor necessary to keep the total equal to 100). In particular, this means that if a point is already weighted 0 to a deformer, its weight will not change by being normalized.

Even when Normalize is off, a point’s weight assignments cannot add up to more than 100.

Selecting Cells in the Weight Editor

In the weight editor, each cell shows the value by which the corresponding point (represented by the row) is weighted to the corresponding deformer (represented by the column). Selected cells are affected by the weight slider and are highlighted. Non-zero cells are shaded.

To control the weight editor display

Do any or all of the following:

• Right-click in the left-most column to sort the columns according to their values in that row, to hide points, or to expand or collapse envelopes.

• Right-click in the top row to sort the rows according to the values in that column, or to hide deformers.

• Use Show to display only those rows and columns containing the selected cells.

• Use Show All to display all rows and columns.

• Use Lock to prevent the weight editor from automatically updating when you select a different deformer.

• Use Update to show the currently selected envelopes if Lock is on.

• Use Clear to empty the weight editor display.

To view and select cells in the weight editor

The easiest way to select cells for editing is to use the 3D views. Depending on your viewing options, the weight editor updates automatically to show exactly what you are working on.

• Select points, edges, polygons or deformers in the 3D views. The corresponding non-zero weights are automatically selected in the weight editor.

- If Filter is off, zero weights are selected as well.

- If Focus is on, the table is automatically updated every time you select components on the envelope in the 3D views.

To select cells manually in the weight editor

You can also select cells manually directly in the table. The corresponding points and deformers are highlighted in the 3D views.

• To select a single cell, click it.

• To add cells to the selection, Ctrl+click them.

• To select a horizontal, vertical, or rectangular range of cells, you can drag across them from one end (or corner) to the other end (or diagonally opposite corner). Alternatively, you can select one end (or corner) and then Shift+click on the other end (or diagonally opposite corner).

• To select all cells associated with a deformer, click the column header. You can drag, Shift+click, or Ctrl+click to select multiple columns.

• To select all cells associated with a point, click the row header. You can drag, Shift+click, or Ctrl+click to select multiple rows.

• If Highlight is on, the points corresponding to the selected cells are highlighted in the 3D views.

• To select the points that correspond to the cells that are currently selected in the weight editor, click Sync.

Setting Weights Numerically

You can set weights numerically in the weight editor for all highlighted cells or an individual cell. You can also set weights for the selected points and deformer using the weight paint panel.

No matter which method you use to set the weights, the values are adjusted according to the current options (Normalize, Abs, Add, Add%). Also, remember that the deformer weights for an individual point cannot add up to more than 100, so depending on the existing values you may notice that the new weights are not set to the exact value that you typed — instead, they are set to the highest possible value while keeping the total equal to 100.

To set weights for highlighted cells in the weight editor

1. In the envelope weights editor, select one or more cells.

2. Use the Weight slider immediately below the weight editor’s command bar to adjust the values.

To set weights for specific cells in the weight editor

1. Right-click in a cell. The cell contents are selected for editing.

- If the cell was highlighted, all highlighted cells are affected.

- If the cell was not highlighted, then only that cell is affected.

2. Enter a new value.

To set weights for selected points and deformer in the weight paint panel

1. Make sure that the desired deformer is active in the Deformers list of the weight paint panel.

2. Select the desired points in the 3D views.

3. Adjust the Deformer Weight value in the weight paint panel.

Smoothing Envelope Weights

There are two ways to smooth envelope weights:

• By painting in Smooth mode as described in Painting Envelope Weights.

• By applying a Smooth Envelope Weight Operator as described here.

To apply a Smooth Envelope Weight operator to points selected in the 3D views

1. Select the envelope or the points on the envelope that you want to smooth.

2. Do one of the following:

- Choose Deform > Envelope > Smooth Envelope Weights from the Animate toolbar.

or

- Click Apply Smooth on the weight paint panel.

The Smooth Envelope Weight Operator property editor opens.

To apply a Smooth Envelope Weight operator to points selected in the weight editor

1. Select some cells in the weight editor.

2. Click Smooth on the weight editor. The Smooth Envelope Weight Operator is applied to the points corresponding to the selected cells and its property editor opens.

Locking Envelope Weights

You can lock or “hold” the values of envelope weights to prevent them from being changed. If you need to modify them later, you must first unlock them.

Locking prevents you from accidentally modifying points that you have carefully adjusted when you are working on other points. It is also useful for setting exact numeric values while keeping Normalize on so that points don’t inadvertently become partially weighted to no deformer.

• The weight editor gives you the most control, because you can lock a point’s weight to some deformers while leaving that point’s weight to other deformers unlocked. See Locking Envelope Weights in the Weight Editor.

• The weight panel allows you to lock the weighting of all points to selected deformers. See Locking Envelope Weights on the Weight Panel.

• The Envelope menu of the Animate toolbar allows you to lock selected points’ weights to all deformers. See Locking Envelope Weights on the Envelope Menu.

Points that are locked for all deformers are drawn in black in the 3D views.

 

If you have not frozen the envelope weight stack, you can still change the initial assignment (for example, number of skeleton objects, assignment method, or bounding volumes) even if weights are locked.

Locking Envelope Weights in the Weight Editor

The weight editor allows you to lock specific cells as well as entire rows (all weights for the corresponding points) and entire columns (all weights for the corresponding deformers). Locked weight values appear dimmed (gray) in the weight editor.

Note that if you select an entire column by clicking in its header, then all weights associated with that deformer will be affected even if they are not currently listed in the table. Similarly, if you select a row by clicking in its header, then all of the corresponding point’s weights will be affected. However, if you select all the cells in a row or column by clicking inside the table area, then only the weights actually listed in the table will be affected.

To lock or unlock selected weights in the weight editor

1. Select the cells corresponding to the weights you want to lock or unlock.

2. Click Lock Wt or Unlock Wt on the weight editor’s toolbar.

To unlock all weights in the weight editor

• Click Clear Locks on the weight editor’s toolbar. This unlocks all weights on all points in the current envelope objects.

Locking Envelope Weights on the Weight Panel

The weight panel allows you to lock all weights associated to specific deformers.

To lock or unlock all weights associated with a deformer

• Right-click on the deformer’s name in the Deformers list on the weight panel, and then choose Lock Weights or Unlock Weights.

The deformer does not need to be active for painting first.

To unlock all weights in the weight panel

• Right-click anywhere in the Deformers list on the weight panel, and then choose Clear all locks. This unlocks all weights on all points in the selected envelope objects.

Locking Envelope Weights on the Envelope Menu

The Envelope menu on the Animate toolbar allows you to lock all weights associated with the selected points.

To lock or unlock all weights for selected points

1. Select some points in the 3D views.

2. Choose Envelope > Lock Weights or Unlock Weights from the Animate toolbar.

To unlock all weights using the Envelope menu

• Choose Envelope > Clear Weight Locks from the Animate toolbar.

Mirroring Envelope Weights Symmetrically

You can mirror the envelope weighting symmetrically. This lets you set up the weighting on one half or your character and then copy the weights to the corresponding points and deformers on the other half.

To mirror weights, your envelope must have:

• A symmetry map to establish the correspondence between points.

• A symmetry mapping template to establish the correspondence between deformers.

Creating a Symmetry Mapping Template

A symmetry mapping template establishes the correspondence between deformers. At the same time that you create one, you can allow Softimage to automatically add mapping rules between deformers based on position and hierarchy structure, or you can create your own mapping rules later. You also have the option of creating a symmetry map for points at the same time as the mapping template.

To create a symmetry mapping template

1. Select the envelope.

2. Choose Deform > Envelope > Create Symmetry Mapping Template from the Animate toolbar.

3. In the Create Symmetry Map dialog box:

- Deselect Fill Symmetry Template if you do not want Softimage to automatically create mapping rules between deformers. Either way, you can always add, change, and delete rules later.

- Set Symmetry Axis to the desired plane of symmetry: YZ (X = 0), XZ (Y = 0), XY (Z = 0).

- Deselect Create Symmetry Map if your envelope already has a symmetry map that you want to use for establishing the correspondence between points.

For more information about applying symmetry maps manually, see Manipulating Components Symmetrically [Modeling and Deformation Basics].

4. Click OK. The Symmetry Mapping Template property editor opens. You can use this property editor to add, change, and delete mapping rules as described in the next section, Editing Symmetry Mapping Templates.

Editing Symmetry Mapping Templates

Use the Symmetry Mapping Template property editor to add, change, and delete the mapping rules that establish correspondence between deformers when mirroring envelope weights. When you have finished editing, you can validate your changes to make sure that you have not entered a deformer’s name incorrectly.

Note that the rules are bidirectional: for example, if you have a rule mapping LShin to RShin, then you do not need a second rule mapping RShin to LShin.

To display the Symmetry Mapping Template property editor

The Symmetry Mapping Template property editor opens automatically when you create a symmetry mapping template. You can also display it manually, for example, if you need to add or modify rules later.

1. Locate the SymmetryMappingTemplate node in an explorer. It is under the model that contains the envelope and its deformers.

 

2. Click the node’s icon. Its property editor opens.

To add a rule

1. Select the row above which you want to place the new rule by clicking its number in the first column.

2. Replace the default text <from> in the Map From column with the name of a deformer.

3. Replace the default text <to> in the Map To column with the name of the corresponding deformer on the other side of your character.

To modify a rule

• Click in the Map From or Map To column of the corresponding row to change the name of a deformer.

The drop-down list contains all deformers on the envelope; you can select one from this list or enter a name. Use the value <unmapped> if you do not want the weight assignments of a particular deformer to be mirrored.

To delete a rule

1. Select the row to delete by clicking its number in the first column.

2. Click Delete Rule.

To validate your changes

• Click Validate.

- Valid deformer names are displayed in black.

- Invalid deformer names are displayed in red. This probably means that you made a typing error when entering the name of a deformer.

- Rules that have not been validated yet are displayed in gray.

Mirroring Envelope Weights

Once your envelope has a symmetry map and a symmetry mapping template, you can mirror weights from selected points on one side of your character to the other side. The effect is not persistent — if you change the envelope weights later, you need to reapply this command.

 

Symmetry maps are not updated after topological operations. If your envelope already has a symmetry map but you subsequently made modifications that created or removed components on the object, you should delete the old symmetry map and create a new one before mirroring weights.

To mirror envelope weights

1. Select the points whose weight you want to mirror to the other side.

2. Choose Deform > Envelope > Mirror Weights from the Animate toolbar.

If the envelope does not have a symmetry mapping template, you are prompted to create one now. Click Yes and refer to Creating a Symmetry Mapping Template for details.

The weights you defined for the selected points are transferred to the corresponding points and deformers on the other side of the envelope. A Weight painter operator is applied to the envelope weight map.

Limiting the Number of Deformers per Point

You can limit the number of deformers to which each point’s weight is assigned. This can be especially important for game characters, because some game engines have a limit on the number of deformers.

1. Set the maximum number of deformers on the weight editor’s command bar.

 

If a point’s weight is assigned to more than this number of deformers, its row is shown in yellow in the weight editor. If an envelope has any such points, its row is shown in yellow, too.

2. To try to fix these points automatically, click Enforce Limit. A Limit Envelope Deformers operator is applied, and its property page is opened automatically. By default, the limit is the one you set on the command bar, but you can change it for individual operators.

If a point has more than the maximum number of deformers, the operator unassigns the deformers with the lowest weights and then normalizes the weight among the remainder. However, it will respect locked weights — locked weights are never changed, even if other deformers have greater weight. If there aren’t enough unlocked weights to modify, then the total weight might not add up to 100%.

Freezing Envelope Weights

When you freeze envelope weights, the weight map’s operator stack is collapsed, removing the original Automatic Envelope Assignment property along with any operators that have been applied. This reduces the amount of stored data and increases performance, but also has a number of other effects:

• The initial envelope weights can no longer be recalculated — it’s as if the envelope was imported as is.

• Bounding volumes no longer have any effect. Adding new bounding volumes or moving existing bounding volumes does not change weight assignments.

• If you change the reference pose, you can no longer change the initial envelope weights based on the new pose.

• If you add a deformer to an envelope, you can no longer recalculate the weights automatically. The envelope points are all weighted 0 to the new deformer, and you must assign weights manually.

However, you can still add new paint strokes, smooth weights, and edit weights numerically after freezing. In addition, you can still reassign points locally to other deformers.

To freeze an envelopes weights using the weight paint panel

1. Select the envelope whose weights you want to freeze.

2. Click Freeze Weights on the weight paint panel.

To freeze an envelopes weights using the weight editor

• Choose Edit > Freeze from the weight editor’s command bar.

All envelopes that are currently active in the weight editor become frozen. Note that these might not be the currently selected envelopes if Lock is on.

To freeze an envelopes weight stack from a specific operator down

1. In an explorer, make sure that Clusters is checked on the Filters menu.

2. Locate the envelope weight operator stack. By default, it is under Clusters\EnvelopWeightCls, which is under the envelope’s Polygon Mesh or NURBS Surface Mesh node.

 

3. Select Envelope_Weights if you want to freeze the entire stack, or an individual operator under it to freeze from that point down.

4. Click the Freeze button on the Edit panel.

Modifying Display Colors

Softimage automatically assigns different colors to each deformer. This color is also used to display points that are assigned more than 50% to the deformer, and when painting weights for the deformer. You can change the colors, which may be useful if you find that the colors of two nearby deformers are difficult to distinguish.

To change the display color of a deformer

• Click a color swatch in the weight paint panel or weight editor and use the color editor.

To display or hide weight colors on points

• Do one of the following:

- To display or hide weight colors in a viewport, click the eye icon in its menu bar and choose Weight Points.

 

or

- To display or hide weights in all viewports, choose Display > Attributes > Weight Points from the main menu.

Using Envelope Presets

You can use the commands on the File menu of the weight editor to save and load presets of envelope weights. This can be useful if you want to experiment with modifying weights — you can save the current weights and reload them later if you don’t like the results.

To share presets between different envelopes, the envelopes must meet the following conditions:

• They must have exactly the same topology. This includes both the number of points and their connections.

If you added points after you created a preset, and then reapply the preset to the modified geometry, the new points are not weighted to any deformer until you assign them manually.

• Their deformers must have the same names.

The easiest way to meet these conditions is to simply duplicate a model containing an envelope and its deformers.



Autodesk Softimage 2011 Subscription Advantage Pack