Stretch Modifier

The Stretch modifier simulates the traditional animation effect of "squash-and-stretch." Stretch applies a scale effect along a specified stretch axis and an opposite scale along the two remaining minor axes.

The amount of opposite scaling on the minor axes varies, based on distance from the center of the scale effect. The maximum amount of scaling occurs at the center and falls off toward the ends.

Applying a Stretch modifier to the object on the left creates the object on the right.

Procedures

To stretch an object:

  1. Select an object.
  2. Apply Stretch.
  3. On the Parameters rollout Stretch Axis group, choose X, Y, or Z.
  4. On the Parameters rollout Stretch group, enter a value in the Stretch field.
  5. Adjust the Parameters rollout Stretch group Amplify setting to change the amount of scaling along the minor axes.

To limit a stretch:

  1. Apply a Stretch modifier to an object and specify the stretch amounts and stretch axis.
  2. On the Parameters rollout Limits group, turn on Limit Effect.
  3. Set values for the Upper and Lower Limits to define the Stretch boundaries on either side of the Stretch center.
  4. In the modifier stack, choose the Center sub-object level, and move the center to locate the limited stretch effect.

Interface

Modifier stack

Gizmo

At this sub-object level, you can transform and animate the gizmo like any other object, altering the effect of the Stretch modifier. Translating the gizmo translates its center an equal distance. Rotating and scaling the gizmo takes place with respect to its center.

Center

At this sub-object level, you can translate and animate the center, altering the Stretch gizmo's shape, and thus the shape of the stretched object.

Parameters rollout

Use options in the Parameters rollout to set the following:

  • Amount of stretch
  • Major stretch axis
  • Area affected by the stretch
Stretch group

The Stretch group of the Parameters rollout has two fields that control the amount of stretch scaling applied.

Stretch

Sets the base scale factor for all three axes. The scale factor derived from the Stretch value varies according to the sign of the value.

  • Positive stretch values define a scale factor equal to Stretch+1. For example, a stretch value of 1.5 yields a scale factor of 1.5+1=2.5, or 250 percent.
  • Negative stretch values define a scale factor equal to -1/(Stretch-1). For example, a stretch value of –1.5 yields a scale factor of –1/(–1.5–1)=0.4, or 40 percent.

    The calculated scale factor is applied to the selected stretch axis and the inverse scale is applied to the minor axes.

    Stretch values of 0.0, 0.5, and –0.5

Amplify

Changes the scale factor applied to the minor axes. Amplify generates a multiplier using the same technique as stretch. The multiplier is then applied to the Stretch value before the scale factor for the minor axes is calculated.

Amplify values affect scaling along the minor axes in the following way:

  • A value of 0 has no effect. It uses the default scale factor calculated from the Stretch amount.
  • Positive values exaggerate the effect.
  • Negative values reduce the effect.

    Stretched objects with Amplify values of 0.0, 1.0, and –1.0.

Stretch Axis group

You select which of the object's local axes is the Stretch Axis using options in the Stretch Axis group of the Parameters rollout.

  • The scale factor calculated from the Stretch Amount is applied to the Stretch Axis.
  • The inverse scale factor is applied to the remaining minor axes.

    Effects of changing the Stretch axis

Limits group

You can apply the stretch effect to the entire object, or limit it to a portion of the object, using controls in the Limits group of the Parameters rollout. The limits restrict the stretch effect along the positive and negative Stretch Axis as measured from the modifier's center.

Limit Effect

Limits the stretch effect. When Limit Effect is turned off, values in the Upper and Lower Limit fields are ignored.

Upper Limit

Sets the boundary of the stretch effect along the positive Stretch Axis. The Upper Limit can be 0 or any positive number.

Lower Limit

Sets the boundary of the stretch effect along the negative Stretch Axis. The Lower Limit can be 0 or any negative number.

Limiting the effect of Stretch

Click Sub-Object and move the modifier's center to change the location of the limited stretch areas. The Upper and Lower Limit boundaries move with the modifier center to maintain their specified distances.

Effects of moving the Stretch center

Note: You can also limit the stretch effect by using an Edit or Select modifier, defining a sub-object selection, and then applying Stretch. If the modifier's Sub-Object button is active, only the selected sub-objects will be stretched.