|
Home : Animating : How do I? : Create animated deformed surfaces :
Set key shape lets you transform one object into another by transforming CVs.
![]() | Previous: Add selection handles |
There are two types of interpolations that can be created:
Key shape interpolations are created by animating the CVs of the base object so that they will match the positions of the target object.
ShapeShifter interpolations are created by placing the CVs of the base object into clusters, and then providing a method for the amount of transformation to be selected. ShapeShifter interpolations also allow various target shapes to be mixed together.
1 Choose Animation > Tools > Set key shape or select its icon.
The system prompts:
Pick the curves or surfaces which are to change shape. Press GO when ready.![]()
2 Pick the curve or surface. The system prompts:
Enter a keyframe value(s) for the picked item(s) current shape (last frame set is 0):![]()
3 Type a number and press Enter. The system displays the message:
Setting keyframes for 4 CVs of object (curve#2)![]()
You are then prompted to pick the curve or surface to match and set keyframes for these elements.
1 Begin with an original piece of geometry and copy it as many times as you like.
2 Manipulate the shape of each copy by applying Transform transformations to the CVs or DAG nodes of each copy, or by adjusting the CV weights using Curve Edit > Modify > Adjust weight.
3 When you choose Set key shape, you are prompted to select the curves and surfaces that are to change shape, then to enter keyframe times at which the objects should maintain their original shape.
You are then prompted to select another shape and enter a keyframe time at which the original objects should take on this new shape. Selecting new shapes can continue until all modified copies have been selected and keyframe times are set for them.
4 When you select another shape for the original geometry to assume, the original geometry immediately takes that shape during the selection process and loses its original shape.
Tip
If you want to keep the original geometry shapes, copy the original objects before invoking the function, or set a keyframe time for the original shape of the objects, so you can return the objects to their original shapes by viewing that keyframe time.
The key shape animation is created by animating each of the CVs of the original objects. The interpolation between the CVs (the process that transforms one key shape into another) is, by default, a smooth interpolation. You can adjust this interpolation by modifying the tangents of the animation curves of the CVs in the Action Window.
When you complete the key shape animation, you can delete the animation and start again if you are not satisfied with the results. However, before deleting the animation, you may want to restore the original shape of the transforming object. If you typed a keyframe time for the original shape, this is easily done by choosing Animation > Show > View frame and typing the time of that keyframe.
When satisfied with the animation, you can delete the intermediate objects as their shapes are now recorded as keyframes.
You can use any number of interpolation shapes. Each shape must have identical topology. It is recommended that you copy the original geometry (the geometry shape for the first keyframe), then manipulate the copied geometry into the desired shape for subsequent keyframes. If you are interpolating curve shapes, you can use Curves > New curve and set Knot Spacing to Uniform in the option window to ensure that you create curves with identical topology.
The objects that are used to transform the original object must have the same topology as the original object. Surfaces with same topologies have the same number of CVs in the U and V parametric directions. Curves must have the same number of CVs. The corresponding CVs of each object should have the same multiplicity. CV multiplicity can be changed using
Curve Edit > Modify > Multiplicity.
In this example, a sphere is used to create an interpolation animation where the sphere takes on a diamond shape through 10 keyframes, then reverts to its original shape through another 10 keyframes, and back to the diamond in another 10 keyframes.
1 Choose
Surfaces > Primitives > Sphere and place a sphere in the Front window at -5,0,0.
2 Place another sphere at 3,0.0. Both of these pieces of geometry are identical in topology.
1 With the second sphere active, choose
Transform > Scale and type 4 to scale the sphere to a value of 4 units.
2 Choose
Object Display > Control
and make sure the CVs is toggled ON (indicated by a check mark). Press GO.
3 Pick nothing to ensure that no geometry is active, then choose Pick > Point types > CV and using the bounding box technique, select only the first row of CVs along the top of the second sphere.
4 When the CVs are active, choose
Transform > Move and use the right mouse button to move these CVs upwards along the Z-axis to elongate the top of the sphere into a pointed shape.
5 Pick nothing to ensure that no geometry is active. Select the last row of CVs along the bottom of the second sphere.
6 When the CVs are active, choose Transform > Move and use the right mouse button to move these CVs down the Z-axis to elongate the bottom of the sphere into a pointed shape.
7 Pick nothing to ensure that no geometry is active. Select the middle row of CVs of the second sphere.
8 When the CVs are active, choose
Transform > Scale and use the left mouse button to scale these CVs up to create a bulge in the middle section of the shape so that it resembles the diamond shape shown in the diagram at the left.
The original sphere defines the start shape and the modified sphere defines the final interpolated shape. Although only two shapes are being used in this example, several interpolated shapes could be used.
1 Pick nothing to ensure that no geometry is active, then choose Animation > Tools > Set key shape. The system prompts:
Pick the curves or surfaces which are to change shape. Press GO when ready.![]()
2 Select the first sphere. Once selected, it is highlighted to indicate the object whose shape will be changing.
A small GO icon appears in the lower right corner of the active window, and the system continues to prompt:
Pick the curves or surfaces which are to change shape. Press GO when ready.![]()
3 Click the GO icon to continue, and the system prompts:
Enter a key frame value(s) for the picked item(s) current shape (last frame set is 0):![]()
4 Type 1 followed by a space, then type 20 and press Enter.
This indicates that the shape of the initial sphere is to be used for keyframes 1 and 20. The system prompts:
Pick the curve or surface to match.![]()
5 Select the second sphere. The original geometry changes shape to match the selected geometry.
If the surface you select to match does not match the topology of the surface you select to change shape, an error message is displayed and the system prompts:
Pick the curve or surface to match. ![]()
If the topology of the selected surfaces match, the system prompts:
Enter a key frame value(s) for this shape (last frame set is 20):![]()
6 Type 10 followed by a space, then type 30 and press Enter.
This indicates that the shape of the manipulated sphere is to be used for keyframes 10 and 30.
7 Choose
Animation > Show > Playback to view the interpolation animation.
During playback, the initial sphere shape interpolates into the shape of the manipulated sphere through frames 1 to 10. It then interpolates back to the original shape through frames 10 to 20, then back to the manipulated shape through frames 20 to 30.
With ShapeShifter, an unlimited number of expressions and forms can be combined to transform objects into a variety of shapes, as well as mixing facial expressions together.
ShapeShifter transforms (or "morphs") one shape into another by transforming CVs using clusters and expressions. This lets you select how much of the interpolation should be applied at any particular time, as well as mix several different target shapes together. Because clusters are used, the underlying geometry can be polygonal or NURBS. Source and target objects can also be hierarchical, as long as the hierarchies match.
ShapeShifter greatly simplifies complex facial animation. For example, given a base (or neutral) face, and other faces that represent a smile and frown, you can create a face which is 75% smiling and 50% frowning and control the timing of the interpolation between the various targets.
The interpolation is done by determining the translation which will make a CV in the source object move to the corresponding CV in the destination object. Therefore the two objects must share the same topology (that is, they must have the same number of CVs in both u and v).
The interaction is simple - for each target, a "control" object is created. The X translation of this object determines the amount of transition from the base to the target object and, of course, can be animated. For example, to have the neutral face ease into a smiling face over two seconds, you simply move the control object to the left of the slider, set a keyframe at 0, then move the control object to the far right and set another keyframe at 60. Set the animation interpolation in the Action Window on the control object's X_translation channel (or use an expression) and you're ready to go.
The following example shows how ShapeShifter is used to combine features from two separate head expressions.
Note
The source and destination objects must share the same topology (they must have the same number of CVs in both U and V). The interpolation is done by determining the translation which makes the CV in the source object move to the corresponding CV in the destination object.
To set the options:
1 Choose
Animation > Tools > Set key shape
, then click ShapeShifter in the Interpolation section of the option box.
2 At the prompt for the source object, select the head at the left.
3 At the prompt for the target object, select the middle head.
4 At the prompt for the control object name, type chin.
A DAG node containing 3 clusters and a DAG node for the control object are created.
Note
ShapeShifter interpolations can also be created between objects consisting of many grouped geometry nodes.
For grouped objects, the Shape Center is created as follows:
The following is an example of the SBD view with two diverse hierarchies, which can still be used for ShapeShifter interpolations. Geometry nodes are matched up going from left to right through each object.
![]() | Next: Create clusters with properties for deformation |