User Tools

Site Tools


Protecting Mesh from Morph Distortion with Rigidity Maps *

* = Review

Summary

“Rigidity” is a function that protects areas of mesh from distortion when morphs are automatically generated to match a TriAx™ figure to which the item has been configured. Think of Rigidity as “Resistance to morphing.” An example would be a metal ring joining the two sides of a bikini top. If the user applies a morph to change the size of the figure’s breasts, Rigidity would allow the metal ring to remain round even though the dynamically projected morph might be otherwise. Rigidity is also useful for buttons, pockets, buckles, and anything else that should maintain its shape or position relative to a reference point on the rest of the mesh, regardless of morphs applied to the underlying character.

Process Overview

  • Assign Rigidity Group Participants
  • Assign Rigidity Group References
  • Create Rigidity Map
  • Adjust Properties of Rigidity Groups
  • Save and Test

Foundation

The following steps assume the content creator is starting with an otherwise fully modeled, grouped, and rigged conforming clothing item.

It is important to note that in its current implementation, Rigidity only applies to morphs that are dynamically generated and projected from the default figure to which the item has been fit. Morphs that are modeled into the clothing and joint rotations can still change the shape of a rigidly defined mesh if care is not taken to prevent it.

Step By Step

Assign Rigidity Group Participants

Using the Polygon Group Editor, assign a selection of facets to a newly created Rigidity Group as Rigidity Group Participants. These are the facets that will deform uniformly/rigidly as defined by a painted vertex weight map.

In this example, selection of the facets is made easier by using pre-defined material groups to control the selection. With the Polygon Group Editor open, one can access these options by right clicking in the scene:

Use the context menu to assign the selected facets to a new Rigidity Group. This will automatically assign the facets as Participants. (the facets that will be affected by the rigidity map). Choose Polygon Assignment, Create Rigidity Group from selected.

Assign Rigidity Group References

Using the Polygon Group Editor, assign another selection of facets to the same Rigidity Group, but as Rigidity Group References. These are the facets whose average deformation will be applied to the Rigidity Group Participants defined in Step one.

Selection of References is very important. The final shape and location of the Rigidity Participants will be determined by the facets assigned to the References for each Rigidity Group. Often you will want this to be determined by a single facet close to the location of the Rigidity Participants.

You may find it helpful to select and hide the Rigidity Participants so you can easily access the facets directly under or nearby to assign as Rigidity References.

To select multiple polygons, hold down the Control key.

Create Rigidity Map

The strength of the effect will be determined by the figure's Rigidity Weight Map.

Open the Weight Map Tool, and the Tool Settings tab. In the scene tab, select the clothing item (the root). In the Tool Settings section look for the section stating “Unused Maps”. Rigidity Map should be listed. Click the “add map” button.

Under Map / Property, you should see the text “RigidityMap”. Select it.

Using the Weight Map Brush, create and paint a Rigidity Map on the root of the figure. The figure can only host one Rigidity Weight Map but the map can be used across multiple Rigidity Groups and since Rigidity Groups have no reason to overlap, a single Rigidity Weight Map to service all possible Rigidity Groups is sufficient.

The strength of the map across the vertices of the mesh determines the level of rigidity, a full value of one (1), indicated in red, being completely rigid and a value of zero (0), indicated in blue being not rigid at all. A fully rigid vertex deforms as the average of the Rigidity Group’s References, whereas a zero weighted vertex deforms as determined by the projected morph.

You can easily select your Rigidity Participants using the right-click menu, then use the “Fill Selected Faces…” command. Repeated selections do not clear previous selections– use “Clear Selection” if you need to start fresh.

Adjust Properties of Rigidity Groups

Adjust the properties of the Rigidity Groups as required, by opening the Rigidity Group Editor. This command is found in the Polygon Group Editor / Tool Settings Tab’s Advanced Options, or by right-clicking using the Polygon Group Editor tool.

In particular, for features attached to clothing, like clasps and buckles, you may wish to disable scaling:

Scaling Axes are determined by the Rigidity Reference Groups, and are determined in order of the dimensions of the reference group. The largest dimension is the Primary Axis, the second-largest dimension is the Secondary Axis, and so forth. This means you must be aware of the dimensions of your Reference Group when deciding whether to use scaling or not. Rotation will also be calculated based on the selected Reference Group. A single facet Reference Group may result in exaggerated rotation. For small items with a single Reference facet, it will probably be best to leave Rotation off.

Save and Test

Save, and conform the new Rigidity equipped clothing item to the target figure. Test and adjust as necessary. Here, the Heavy shape is being used on Genesis.

Wrap-Up

In addition to fixing the shape of elements on the surface of a model, Rigidity can also be used to modify how morphs affect elements that protrude from the surface. These may be items that are intended to be stiff, such as a scabbard, or flexible, such as a sash end.

Next Steps