Титульная страница
ISO 9000 ISO 14000
GMP Consulting
 
Mastering 3D Studio MAX R3

Previous Table of Contents Next


11. Select the dummy object, click the Align tool, and click the “turn right” narwhale. In the dialog box, check all three axes, and check Center for both Current Object and Target Object.
12.  Move the dummy so that it is closer to the center of rotation for a right turn: closer to the middle of its body lengthwise and slightly toward the right.

13.  Select the “turn right” narwhale and go to the Control Points sub-object level. Your control points should still be selected; if not, select them again, as in Step 8.
14. Click the Rotate tool. In the Reference Coordinate System flyout, choose the pick coordinate system, click the Select by Name button, and choose Dummy01 . Dummy01 should now appear in the flyout.
15. In the Use Center flyout, choose Use Transform Coordinate Center.
16.  In the top viewport, rotate the control points to the right, around the Z axis. Your narwhale should now be turned to the right like the one in Figure 7.14.


FIGURE 7.14  Narwhale control points rotated with respect to dummy object

17.  You can now use this method to deform your other morph targets and morph your narwhale, as you did the teapot in Chapter 6. Remember, when you are rotating control points, that you are using the dummy’s coordinate system, so you need to choose your axis constraints accordingly.

NOTE You can see an example of the morph setup in narwhale_morph_final.max. You can load this file and animate from here if you like. You may want to review the morphing exercise in Chapter 6.

Animating Hierarchies

In Chapter 6, we described deformation animation as a common way to animate “inanimate” objects like sacks of flour and bars of soap. For humans and similarly complex structures, this method is insufficient. It’s necessary to create a system of hierarchical linkages to animate the character.

The character itself may consist of hierarchical linkages of its separate body parts. This is referred to as a segmented model. At one point in the history of 3D computer animation, this was the only type of model available. The more difficult case occurs when the character is a single mesh. You often need this to create the effect of a smooth, continuous skin.

Linking up a Simple Hierarchy

Let’s start by creating a very simple segmented hierarchical model. We’ll make an upper body.

1.  Reset MAX.
2.  Create a cylinder in the top viewport, about twice as tall as it is wide (say, 25 radius and 50 height). Name this “torso.”
3.  Create a new cylinder in the left viewport at about the position of an arm, about 10 radius and 30 length. Name this “arm upper L .”
4.  Position the upper arm to the left of the torso by using the Move tool in the top viewport.
5.  Shift-drag the cylinder to the left and choose 1 Copy. Name the copy “arm lower L.”
6.  In the left viewport, create a sphere positioned over the arm area. Check Base to Pivot in the Create tab. Name this “hand L.”
7.  In the top viewport, move the hand to the left of the lower arm.
8.  In the top viewport, create a sphere over the torso area, checking Base to Pivot. Name this “head.”
9.  In the front viewport, move the head to the top of the torso. So far, your character should look like Figure 7.15.


FIGURE 7.15  Upper body of character so far

10.  Repeat steps 3 through 7, except this time, in the right viewport, drag to the right and name the objects with “R” instead of “L.”

TIP If you want to mirror the pieces of your left arm to make a right arm, use the Reset XForm utility on each piece of the arm afterward. You may even want to collapse each piece to an editable mesh after that, as well. Mirror is a complex transform that completely rearranges the transforms of the object in world space; this can cause problems when the delta transform (the motion or change in transform values) is calculated for inheritance through the hierarchy. By resetting the transform, the transform values are set back to zero, and the current position, rotation, and scale information is placed in an XForm modifier. Whenever your hierarchy is not transferring the motion as it should, try unlinking all the pieces and resetting all the transforms. Sometimes the extra step of collapsing is necessary to get the results you want.
11. Edit Ø Hold.
12.  Using the Select and Link tool, drag from the head to the torso, then from the left hand to the left lower arm, then from the left lower arm to the left upper arm, and then from the left upper arm to the torso.
13.  Click the Move tool to get out of the Link tool.
14.  Click the Select by Name button and check the Display Subtree box. The hierarchy should look like Figure 7.16. If it doesn’t, Edit Ø Fetch and redo step 11.


FIGURE 7.16  The subtree hierarchy when you Select by Name

15.  Using the Select and Link tool, drag from the right hand to the right lower arm, from the right lower arm to the right upper arm, and finally from the right upper arm to the torso.
16.  Click the Select by Name button again. The hierarchy should now look like Figure 7.17.


FIGURE 7.17  The new hierarchy of the upper body

17.  The character should look similar to that shown in Figure 7.18. Edit Ø Hold if you’re going to work right through the next few sections; we’ll Fetch the scene at this stage later in this chapter.


FIGURE 7.18  Complete upper body of a simple, segmented character.

Using Forward Kinematics

Forward kinematics is the default animation system for hierarchies in MAX. Kinematics organize how motion (kinetics) is inherited through a hierarchy. When we linked up our hierarchy, we linked from child to parent. In forward kinematics, the change in transforms (move, rotate, and scale) is inherited by the child from the parent, so when the parent moves, everything below it moves with it. Let’s try it on our model.

1.  Select “upper arm L.”
2.  Go to frame 100 and turn on the Animate button.
3.  Rotate the upper arm forward around the Z axis. The whole hierarchy below the upper arm rotates with it
4.  Turn off the Animate button and play the animation.

You can refine this animation as much as you like, by rotating the lower arm and hand separately, for instance. In forward kinematics, you are always moving the object and anything below it in the hierarchy. You can also view the final results of this in hierarchy_fk.max on the CD.

Using Inverse Kinematics

In inverse kinematics (IK), the opposite relation holds true: the child moves the parents. (More like children of the living and breathing variety.) There are several different kinds of IK in MAX. In any case, IK involves very complicated calculations by MAX, so as to adjust the upper part of the hierarchy accordingly as the end effector (the end of the chain) gets to its destination.


Previous Table of Contents Next

© 2000, Frol (selection, edition, publication)

 
Rambler's Top100