Skeleton Creation and Adjustment

 < Day Day Up > 



You will animate your character using bones (Bones). These have been available from the first version of 3ds max, but they really became useful with the introduction of the Skin modifier in version 3. Further efforts of the developers in this area considerably improved the skeleton bones and the model-merging idea. An excellent inversion kinematics system appeared as well as many other novelties, of which the developers of version 5 deservedly may be proud. There is, however, a flip side: Although the upgrades up to version 5.1 are well debugged, some functions are still unstable. Save your project as often as possible.

Our book "3ds max 4: From Objects to Animation" dealt perfunctorily with the creation, adjustment, and animation of skeletons. Some things are repeated in this lesson, but we decided to consider the process here in earnest, mainly from the point of view of animation convenience.

Before we proceed to the skeleton, make the SpaceSuit object transparent by selecting it and pressing the <Alt>+<X> shortcut.

  • Set the transparency mode display in the parameters of the viewport:

    • Viewport context menu à Transparency à Best

  • Freeze the SpaceSuit object to keep it from interfering with the skeleton creation:

    • Context menu à Freeze Selection

Start the skeleton creation with the leg bones.

  • Create the leg bones (Bones) using the left view (Fig. 4.13, a). Note that for illustration, the bones are shown without the object in this figure:

    • Main menu à Character à Bone Tools

    • Press the Create Bones button and create a chain of bones top-down. Complete the creation with a right click. Don't remove the small bone appearing at the end of the chain!

    click to expand
    Figure 4.13, a and b: Adjustment of the right leg bones

  • Rename the bones as follows (top-down): Bone-Thigh-R, Bone-Shin-R, and Bone-Ankle-R. Such names are necessary for further references. However, you can rename the objects as you wish.

  • On the front view, move the bones until they corresponded to the right leg. To do this, press the Bone Edit Mode button in the Bone Pivot Position dialog and move the bones (Fig. 4.13, b).

    Note 

    The Bone Edit Mode button toggles 3ds max to the same mode as the Don't Affect Children button in the Hierarchy panel. This again confirms the slight difference between bones and simply linked objects in 3ds max. In the book "3ds max 4: From Objects to Animation," we suggested that bones and objects linked hierarchically will become "closer." So far, the development trends of 3ds max confirm these suggestions.

  • Change the sizes of the bones so that they approximately coincided with the size of the leg using the Fin Adjustment Tools menu (Fig. 4.13, c). This will simplify further linking of the "skin" (Skin) to the bones.

    click to expand
    Figure 4.13, c-e: Adjustment of the right leg bones

Note 

Unlike those in other packages, the bones in 3ds max are real geometric objects with sizes; they can be visualized, and materials can be assigned to them.

To create the leg bones, we decided to ignore tradition. Usually, a complex chain is created that enables the foot to bow during movement. We assume that lunar boots bear stiff soles like those of downhill-ski boots, so we propose using a simple geometric object, such as Box, as the foot bone.

  • Create an object of the Box type of the boot's size, then move and turn it according to the boot's position. Rename it Bone-Foot-R. This object will also be the bone (Fig. 4.13, d).

  • Link (Link) the Bone-Foot-R object to the Bone-Ankle-R object using the Select and Link command.

  • Make the bones for the left leg. To do this, mirror (Mirror) the objects-bones of the right leg with copying on the front view.

  • Select all the bones of the right leg. (It is sufficient to double-click on the Bone-Thigh-R object.)

  • Apply the mirror operation (Mirror) with copying and move the resultant object to the required position (Fig. 4.13, e).

  • Rename the objects using the "L" index (Bone-Thigh-L, etc.).

Prior to version 4, there was only one type of inverse kinematics in 3ds max. For the sake of compatibility, it was retained in the new version and called History Dependent IK Solver. It's a good tool but has a complicated setting. We propose using the modern system of inverse kinematics, which has a similar name (History Independent IK Solver) but different settings.

  • Create an inverse-kinematics link between the Bone-Thigh-R and Bone-Ankle-R objects. Rename the new object as Leg-IK-R:

    • Select the Bone-Thigh-R object.

    • Main menu à Animation à IK Solvers à HI Solver

    • Drag the "line" to the Bone-Ankle-R object and click with the left mouse button.

Try to move this object (blue cross). The bones should perform motions.

Note 

After any moves, return the object to its previous placement using the Undo command (<Ctrl>+<Z>)!

Everything works well, but selecting this object is not convenient. In addition, you need to control the turns of the knee. Therefore, two more objects are necessary: one responsible for moving the Leg-IK-R object, and another for the knee turns.

  • On the top view, create two helper objects (Helper) opposite the right leg. The first one, of the Dummy type, will control the movement of the Leg-IK-R object. It is this object that you will animate. Rename it as Foot-R and move it to the foot level. The second object, point (Point), is used to control the turns of the leg. Move it to the knee level and rename it Knee-R (Fig. 4.13, f):

    • Control panel à Create à Helpers à Standard à Dummy, Point

    click to expand
    Figure 4.13, f and g: Adjustment of the right leg bones

  • Link the Leg-IK-R object to the Foot-R object using the Select and Link command and see what happens.

The Knee-R object is linked in a different manner.

  • Select the Leg-IK-R object and switch the control panel to the Motion mode.

  • Press the Pick Target button in the IK Solver Properties menu and click with the left mouse button on the Knee-R object.

    click to expand

Try to move the Knee-R object. The knee of the right leg "traces" the Knee-R object.

To turn the foot, you must specify another parameter.

Try to move the Bone-Foot-R object around the pivot point (Pivot Point). It is around this point that the objects' rotation is performed during animation. Our object turns around the current pivot point, but not the way we want it to. Move the object's pivot point until the rotation corresponds to the desired one.

  • Select the Bone-Foot-R object and switch the control panel to the Hierarchy mode. Open the Pivot panel in the Adjust Pivot menu and press the Affect Pivot Only button.

  • Move the pivot point to the position corresponding to that of an ankle (Fig. 4.13, g).

You don't need to create a controlling object for this bone; it will be easy to access. However, note that such a control object is created in the same way as that for the arm bone. This process will be described below.

Adjust the bones of the left leg.

Tip 

To avoid certain incidents later, select all bones of the left leg and apply the Reset Pivot operation in the Hierarchy panel.

  • Create an inverse-kinematics link between the Bone-Thigh-L and Bone-Ankle-L objects.

  • Copy the Foot-R and Knee-R objects and rename them Foot-L and Knee-L. Move them to the required position and link the appropriate objects with them.

  • Adjust the pivot point of the Bone-Foot-L object in the same way as for the Bone-Foot-R object.

It is convenient to make the right arm's bones on the front view.

  • Make a chain of bones beginning from the shoulder joint.

  • Rename them (from the shoulder) Bone-Shoulder-R, Bone-Forearm-R, and Bone-Hand-R.

  • Move and adjust them so that they are within the right arm of the astronaut, their sizes being proportionate to the arm (Fig. 4.14, a).

    click to expand
    Figure 4.14: Adjustment of the arm bones

  • Display with duplication the bones of the right arm and move them into accordance with the left arm. Rename them as Bone-Shoulder-L, etc.

  • Create an inverse-kinematics link between Bone-Shoulder-R and Bone-Hand-R. Rename the object as Arm-IK-R.

  • Create auxiliary objects similar to those you created for the legs. Rename them Arm-R and Elbow-R. Link them with the Arm-IK-R object through the steps used to link the Leg-IK-R object (Fig. 4.14, b).

The process is the same for the left arm (Fig. 4.14, c). Select all bones of the left arm and apply the Reset Pivot operation.

Note 

The scheme for the arms is a little simple: It provides no option for twisting the forearm. A more complex scheme can be used for this purpose by creating two or more bones to control the forearm. Then the inverse-kinematics link can be created up to the first bone after the elbow joint; the rest of the bones obey direct kinematics laws. You can do this if you want, but it doesn't make sense in our model. To employ this feature in full, a more complex mesh for the forearm is required.

The hand should be able to twist freely around all its axes. All of these features are inherent to the Bone-Hand-R and Bone-Hand-L objects. However, the process of their animation is extremely inconvenient. Let's use a resourceful method to animate these bones.

  • Create a helper-object of the Point type close to the right hand. To make it different from the other points, display the additional elements (Fig. 4.15, a). Rename this object Hand-Twister-R.

    click to expand
    Figure 4.15: Hand-twisting adjustment

  • Select the Bone-Hand-R object and assign the animation controller of the Orientation Constraint type to it.

    • Main menu à Animation à Constraints à Orientation Constraint

    • Drag the "line" to the Hand-Twister-R object and click with the left mouse button.

  • Set the parameters in the control panel as shown in Fig. 4.15, b.

    Tip 

    Change only one parameter: Check the Keep Initial Offset flag.

    The parameters of the controllers-constraints are considered in detail in Lesson 3 in the example of the LookAt controller.

  • Link (Link) the Hand-Twister-R object to the Bone-Forearm-R object.

Try to rotate the Hand-Twister-R object in the Parent coordinates:

  • <Alt>+Context menu à Parent

The Bone-Hand-R object repeats the rotation. Now try to move the controlling object, Arm-R. The Hand-Twister-R object performs the rotation of the Bone-Forearm-R bone. Isn't it nice?

Do the same for the left hand.

Now you will not encounter problems while creating the finger bones.

  • Create a separate chain of bones for each finger. Make them on the top view and fit them to the glove's form (Fig. 4.16, a). When the bones are created, remove the end bones by pressing the right mouse button.

    click to expand
    Figure 4.16, a and b: Creation and adjustment of the finger bones

    Note 

    Note that the bone chains of the fingers start from the bone in the palm. This is a matter of principle that will enable you to animate the finger flexion without problems.

  • Rename the finger bones as Bone-Finger-X-Y-R, where X is the number of the finger beginning from the thumb (from 1 to 5), and Y is the number of the bone beginning from the palm (from 0 to 3).

    Tip 

    To quickly rename objects, you can use the Rename Objects tool (Main menu à Tools à Rename Objects).

  • Use the Select and Link command to link the Bone-Finger-X-0-R bones to the Bone-Hand-R object (Fig. 4.16, b).

For the fingers, we propose only the fist option. You can adjust each finger separately because the same principle is used.

To simplify animation, in Lesson 3 we used the option of creating additional parameters (Custom Attributes) of the object with further linking using the Wire system. In this lesson, it is more convenient to use screen manipulators.

  • Create a screen manipulator in the right bottom corner of the viewport of any view. Rename it Fist-Slider-R (Fig. 4.16, c):

    • Control panel à Create à Helpers à Manipulators à Slider

    click to expand
    Figure 4.16, c-e: Creation and adjustment of the finger bones

Leave the default values of the manipulator's parameters; they will be corrected later.

To enforce the manipulator, activate the Manipulate mode. Now you can change the value by moving the slider of the manipulator:

  • Main panel à Select and Manipulate

Use the Wire system to link the value of the manipulator and the rotation of the Bone-Finger-X-1-R - Bone-Finger-X-3-R bones around the Y axis (Y Rotation).

In Lesson 3 we mentioned that the Euler XYZ controller used for rotation employs the coordinates of the parent object. For the Finger-X-1-R objects, such objects are Finger-X-0-R. The rotation will be correct.

  • Select the Fist-Slider-R object and link the value parameter with the rotation of the Bone-Finger-5-R object around the Y axis:

    • Context menu à Wire Parameters à Object (Slider)à Value

    • Drag the "line" to the Bone-Finger-5-R object and click with the left mouse button.

      click to expand

    • Select in the menu Transform à Rotation à Y Rotation

      click to expand

    • Press the "" button in the dialog that appears to indicate that the parameter in the left window is the control, relative to the parameter in the right window. Press the Connect button (Fig. 4.16, d).

Try to move the slider of the manipulator. You'll notice that the finger is twisting too actively. Reduce the Maximum value in the parameters of the controller-manipulator. (Set the value to 1.)

Repeat the operation for the bones of all fingers. You can simplify the task by finding the required parameters in the right window and linking the value parameter with them. Note that the objects are linked hierarchically, so the parameters are represented as a tree. Open separate "branches" using the "+" symbol.

Note 

Unfortunately, the basic 3ds max application does not provide a tool that enables you to complete this task in one motion. You can search for the appropriate plug-in or script on the Internet (e.g., http://www.scriptspot.com).

Do the same operations for the fingers of the left hand (Fig. 4.16, e).

You have three more object-bones to create: those for the abdomen, chest, and helmet. Let them be the objects of the Bone type; unlike the boxes, they do not require additional pivot points.

  • Create a chain of bones on the front view starting from the abdomen. The small bone at the end of the chain results from the completion of the bone creation. Remove this small bone; it will not be used.

  • Match the sizes of the bones with those of the model (Fig. 4.17, a).

    click to expand
    Figure 4.17: Creation and adjustment of the body bones

  • Rename the objects (bottom-up) Bone-Abdomen, Bone-Chest, and Bone-Helmet.

  • To simplify the body's tilt animation as well as the chest's flexion and twisting, create the additional _BODY and Chest objects. Let them be shapes (Shapes) - a circle and a hexagon (Fig. 4.17, b):

    • Main menu à Create à Shapes à Circle, NGon

  • Use the Select and Link command to link the Bone-Abdomen object to the _BODY object. Link the Bone-Chest and Chest objects using the Orientation Constraint controller in the same manner used for the hands. Note that an object can have only one "parent", so an attempt to link the Bone-Chest object directly to the Chest object would lead to an undesired breakage of the previous link.

  • Match the pivot point of the Chest object with that of Bone-Chest:

    • Control panel à Hierarchy à Affect Pivot Only

    • Main panel à Align à click Bone-Chest object

    • In the dialog, select the option that matches the pivot points by all coordinates (Fig. 4.17, c).

    Do it yourself 

    If you wish, you can adjust the rotation of the helmet, which is rigidly attached to the space-suit.

  • Link the objects in the following way using the Select and Link command:

    1. Bone-Thigh-R, Bone-Thigh-L - to the Bone-Abdomen object

    2. Bone-Shoulder-R, Bone-Shoulder-L - to the Bone-Chest object

    3. Foot-R, Foot-L, Knee-L, Knee-R - to the _BODY object

    4. Arm-R, Arm-L, Elbow-R, Elbow-L - to the Chest object (Fig. 4.18)

      click to expand
      Figure 4.18: Final linking of the bones and control objects of the skeleton

Try to move the main object (_BODY). All bones and the control objects should move together. If this is not the case, then there is an error.

Note 

In reality, not all links are necessary, and some are even harmful. Thus, many of them will have to be broken during the animation.

Now, the skeleton is ready and adjusted for further animation!

You can find our  Lesson04-10.max ...  Lesson04-14.max files with the sequence of the skeleton's creation on the CD-ROM in the Lessons\Lesson04\Scenes folder.



 < Day Day Up > 



Advanced 3Ds Max 5[c] Modeling and Animating
Advanced 3Ds Max 5[c] Modeling and Animating
ISBN: 1931769168
EAN: N/A
Year: 2005
Pages: 136

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net