Skin Morph Modifier

The Skin Morph modifier lets you use a bone's rotation to drive a morph; that is, a deformation of the object mesh. Skin Morph is intended for use with Skin or a comparable modifier such as Physique: Add the Skin Morph modifier after the skin-type modifier. You create the morph at the frame in which the effect should be greatest, and then Skin Morph automatically animates the affected vertices into and out of the morph, based on the rotation of the bone that drives the morph.

Skin Morph lets you fine-tune mesh deformation at any frame, using a bone to drive the morph that is fixing a problem area. Often, when you animate a character with bones, you have to create extra bones to handle problem areas such as armpits and the groin. With Skin Morph, instead of adding extra bones, you can simply create a morph and then transform vertices into the exact shape you want. Skin Morph provides an easy way to create muscle bulges and many other effects.

Note: When working with Skin Morph, it's important to be familiar with the concept of delta. The frame at which you apply the modifier determines the base position for each vertex that's used in a morphing animation controlled by Skin Morph. After applying the modifier, go to a frame at which the bone driving the morph is rotated an amount that will cause the greatest deformation, and then transform vertices to produce the morph. The amount by which you transform the vertices is called the delta: the difference between the base pose and the morphed position.

Procedures

To use Skin Morph (basic usage):

  1. Create an animated character with bones and a skinned body mesh, using a modifier such as Skin or Physique.
  2. Go to the “pose frame” and apply the Skin Morph modifier.

    The pose frame contains the initial pose; typically a standing character with arms outstretched and legs apart. This is often frame 0, but it can be any frame, even a negative-numbered one. This is the frame from which the modifier measures delta: the change in the vertex position between this pose and the morph.

  3. Determine which bones are driving deformations that you want to modify with Skin Morph.

    For example, bending an arm might cause the inside of the elbow to indent too far, or you might want to add a bulging bicep. In this case, the forearm bone is driving the deformation.

  4. Use Add to bind the deformation-driving bones to the modifier.

    The modifier overlays an orange line along the length of each bone you add.

  5. Go to the frame where you wish to create the morph. Using the arm-bending example, this might be the frame where the forearm is at a 90-degree angle to the upper arm.
  6. In the list box, click one of the bones.

    In the viewport, the orange line representing the bone becomes a thicker yellow line to indicate that this bone will drive the morph.

  7. On the Local Properties rollout, click Create Morph.

    The modifier adds a morph to the highlighted bone and sets the morph to 100% at this frame, as reflected by the number next to the morph's name in the list.

  8. On the Local Properties rollout, click Edit.

    This temporarily freezes the skin deformation at the current frame.

  9. Move vertices to where they should be at the current frame.
  10. Click Edit again to exit this mode, and then test the animation.

Interface

Skin Morph modifier stack

Points sub-object level

At the Points sub-object level, you can view and select vertices on the skin mesh. However, you can transform these vertices only when Edit mode is on (see "Local Properties rollout," below). The ability to select points when not in Edit mode lets you make the selection when the points are more easily accessible, and then go to the pose to transform them in Edit mode.

Parameters rollout

[list window]

Lists all attached bones and their morphs in a hierarchical view. You can expand or contract a bone's morph listing by clicking the + or - box next to its name in the list. The number in parentheses next to the morph name shows its relative influence as a percentage at the current frame.

Highlighting a bone in the list highlights the bone in the viewports as a yellow line, and lets you create a morph for it. Alternatively, you can select the bone in the viewport while the modifier's Points sub-object level is active by clicking the orange line through its center.

Highlighting a morph in the list lets you edit the morph. To change the morph's name, edit the Local Properties rollout Morph Name field.

Add Bone

Click to add one or more bones from the Select Bones dialog.

Tip: To keep things simple, add only bones that will drive morphs. There's no point in adding any other bones.
Pick Bone

Lets you add bones by selecting them in a viewport.

Click Pick Bone, and then select bones in any viewport. While Pick Bone is active, the cursor resembles a cross with the words ADD BONE attached. To exit Pick Bone mode, right-click the active viewport or click Pick Bone again.

Remove Bone

Removes a bone and its morphs from the list. Click a bone name in the list, and then click Remove.

If a morph name is highlighted when you click Remove, its bone is removed. To remove the morph only, highlight it and then click Local Properties rollout Delete Morph.

Selection rollout

Use Soft Selection

Enables soft selection for editing vertices.

Soft Selection in Skin Morph works much like Soft Selection in other parts of 3ds Max, except that instead of Pinch and Bubble settings you can adjust the graph shape directly, and it uses a Radius setting instead of Falloff to determine the extent of the soft-selection area.

Radius

Determines the extent of the soft-selection area in system units.

Edge Limit

When on, Skin Morph uses the Edge Limit numeric setting to determine the extent of the soft-selection area in terms of the number of edges from the selected vertex or vertices.

Reset Graph

Sets the soft-selection graph to default values. Use this if a vertex or handle is no longer visible and thus cannot be manipulated.

[graph]

Skin Morph provides a small, full-functioned curve graph for editing soft-selection characteristics globally; it works much like other such graphs in 3ds Max, such as the Curve Editor. The toolbar above the graph offers functions for moving and scaling points on the graph, as well as inserting new ones. The same functions are available by right-clicking the graph: If you right-click a graph point, you can set it to Corner or one of two different Bezier types. If you select a Bezier point, you can reshape the curve by moving its handles.

Ring

Expands a vertex selection by first converting the selection to an edge selection, selecting all edges parallel to the selected edges, and then converting the new edge selection back to a vertex selection. Use of Ring requires that a qualifying vertex selection exist; that is, at least two vertices on the same edge.

Loop

Expands a vertex selection by first converting the selection to an edge selection, selecting all aligned edges, and then converting the new edge selection back to a vertex selection. Use of Loop requires that a qualifying vertex selection exist; that is, at least two vertices on the same edge.

Shrink

Reduces the vertex selection area by deselecting the outermost vertices. If the selection size can no longer be reduced, the remaining vertices are deselected.

Grow

Expands the vertex selection area outward in all available directions.

Local Properties rollout

This rollout contains functions for creating and editing individual morphs. The settings, such as Morph Name and Influence Angle, are specific to each morph.

Create Morph

Sets a morph at the current frame for the highlighted bone. Also sets the “pose” for this morph, using the bone's current orientation, and sets the bone to 100%, as shown in the list window hierarchical view. When you edit the morph, the skinned object returns to and stays at this orientation.

When you create a morph, the modifier displays, in orange, all vertices that are part of the current pose (that is, they're offset from the initial pose). Also, the modifier creates a default name for the morph and adds it as a child to the highlighted bone in the list window.

Tip: By default, the Show Edges switch is on, which might make it difficult to see the vertices themselves. To see only the vertices, turn off Options rollout Show Edges.
Tip: To help keep track of morphs, use the Local Properties rollout to rename each morph as you create it.
Delete Morph

Deletes the highlighted morph, removing it from its parent bone in the list window. Available only when a morph is highlighted.

Edit

Lets you shape the current morph by transforming vertices. To exit Edit mode, click the Edit button again.

Transforming a vertex in Edit mode creates a morph target. Each transformed vertex moves into the morph target position (or orientation or scale) as the morph value increases to 100.0, and then out of it as the morph value decreases, based on the angle of the bone driving the morph.

Transforming a vertex in Edit mode also changes its color from orange to yellow. This lets you easily see which vertices are part of the current morph.

Choosing Edit places the skinned object at the 100% “pose” orientation for this morph (see Create Morph, above). It also activates the Points sub-object level so you can transform vertices using the standard 3ds Max transform tools.

Clear Verts

Keeps selected vertices in the morph, but resets their deltas (changes from the initial pose) to 0.

Reset Orient(ation)

Sets the morph orientation to current orientation of the bone that controls the morph.

This lets you change the angle at which the morph has its greatest effect. For example, if you create a bulging bicep at frame 120, and later decide that the muscle should be largest at frame 150 instead, go to frame 150, choose the morph in the list box, and then click Reset Orientation.

Remove Verts

Removes selected vertices from the current morph, which deletes any animation applied as part of the morph.

Use this command to save memory by removing vertices not part of the morph animation.

Enabled

When on, the morph is active; when off, the morph doesn't appear in the animation, and is indicated in the list box with the text “Disabled.” Default=on.

The ability to enable and disable each morph individually lets you isolate the effect of each or test them in combination.

Morph Name

Displays and lets you change the name of the current morph.

Influence Angle

The angle around the bone's current orientation within which the morph takes place. Default=90.0.

This is an important parameter. Think of the influence angle as a cone around the bone at its orientation when you create the morph. Consider an example in which Influence Angle is set to the default value of 90.0 degrees. If the bone starts its rotation beyond 45 degrees away from the orientation at which the morph was created, the morph has no effect at that time. As the bone moves from 45 degrees away to the morph orientation, the morph increases to its full value. As the bone then rotates away, the morph gradually decreases until, at 45 degrees or more away from the morph orientation, the morph no longer appears.

Tip: Influence Angle is useful for isolating morphs; that is, to prevent overlapping of different morphs on the same bone. Reduce the value until one morph's contribution percent value (shown in the list box) falls off to 0.0 before the next one begins.
Falloff

Determines the rate of change of the morph as the bone moves within the influence angle. Use the drop-down list to choose one of four different falloff types: Linear, Sinual, Fast, or Slow. If you choose Custom Falloff, you can then click the G (for Graph) button and edit the falloff using standard curve-graph controls.

Note: The default graph, displayed when you first access the falloff graph, shows the Sinual falloff type.
Joint Type

Determines how the modifier tracks the angular motion of the bone. This is a per-bone setting, not per-morph. Default=Ball Joint.

  • Ball Joint Tracks all rotation of the bone. Use this setting in most cases.
  • Planar Joint Tracks rotation of the bone only in the plane of its parent bone.
External Mesh

Lets you use a different mesh as a morph target. Click the button (default label=-none-) and then select the target object. The target object should have the same mesh structure as the Skin Morph object. After specifying an external mesh, its name appears on the button.

Using an external mesh makes it easier to set up morph targets in a target mesh that uses a reference pose, rather than the skinned, animated mesh of which sections might be interpenetrating, making it difficult to select the specific vertices to be morphed. In this situation, it's probably best to turn Reload Only Selected Verts.

Note: The external-mesh connection is not live; if you edit vertices in the external mesh, Skin Morph doesn't automatically recognize the changes. To update the vertex positions after editing the external mesh, use Reload Target (see following).
Reload Target

Updates the Skin Morph object with edited vertex positions from the external mesh.

Reload only selected verts

When on, Reload Target copies only the positions of vertices selected in the Skin Morph mesh from the target mesh. When off, Reload Target copies the positions of all vertices. Default=off.

Copy and Paste rollout

These functions let you copy all morph targets for a specific bone from one side of the object to the other. Indicate the morphs to copy by highlighting the bone or any of its morphs in the Parameters rollout list box.

Paste Mirror

Copies the morphs from the highlighted bone to the target on the other side of the mirror gizmo. A qualified target bone must exist and be present in the list box.

Note: This copies the morph data only; the rotation of the target bone must be comparable to that of the source bone for the morphing to appear in the animation.
Show Mirror Plane

Displays the mirror plane as a red, rectangular gizmo in the viewports. The target bone must be on the opposite side of the mirror plane from the highlighted bone, and must be present in the Parameters rollout list box.

Preview Bone

Highlights the target bone in red in the viewports.

Preview Vertices

Displays the morphing-qualified vertices in red in the viewports, as well as any animation present in the source vertices.

Mirror Plane

The axis for the mirror plane. The plane is perpendicular to the indicated axis. Default=X.

Mirror Offset

The position for the mirror plane on the Mirror Plane axis. Default=0.0.

Mirror Threshold

The radius, in system units, within which Skin Morph looks for a qualifying target bone on the other side of the mirror plane. Default=1.0.

Options rollout

Beginner Mode

When on, you must use the Create Morph button to create a morph and the Edit button to edit a morph.

When off, you can create and edit morphs on the fly. In this mode, when you select and move vertices at the Points sub-object level, 3ds Max first determines whether a morph exists for the selected bone at 100%; if so, all edits will go to that morph. Otherwise, 3ds Max creates a new morph automatically and applies the edits to that morph.

Show Driver Bone Matrix

Shows the matrix tripod of the current bone.

Show Morph Bone Matrix

Shows the tripod of the orientation of the active morph.

Show Current Angle

Shows pie wedges depicting the angles between the driver bone matrix and the morph bone matrix. These are color coded: red for the angle about the X axis; blue for the angle about the Y axis; and green for the angle about the Z axis.

Show Edges

Highlights the edges connected to morphable vertices in orange.

This is useful when a tessellating modifier such as MeshSmooth is applied to the skinned mesh above the Skin Morph modifier, to see the actual mesh being affected by Skin Morph.

Matrix Size

The size of each tripod.

Bone Size

The size of the bone display.