- Setting Up a Character for Animation
- Creating Clean Joint Hierarchies for Animation
- Rigging a Simple Quadruped Character: The Dog
- Creating Advanced Bipedal Character Controls
- Advanced Stretchy IK Legs and Classic Reverse Foot
- Advanced IK Arms and Clavicular Triangle
- Hooking Up the Head Skeletal Hierarchy
- The Hair of the Jerk
- Summary
Creating Clean Joint Hierarchies for Animation
Now comes the time to actually decide how the joints will be laid out for the characters according to their skeletal structures. This is the experimental time during which you can try out different things for overall joint placement without affecting anything. Joints in Maya are very versatile (see Figure 17.1); they enable you to create and arrange them in whatever form you please.
The next step is to draw the joints in 3D space. The best workflow for drawing your character's joints is to put the 3D view ports into 4-up mode by going to the Panels menu of the 3D view port window and clicking through to the menu item Panels, Layouts, Four Panes. Next, using the Joint tools found under the menu path Skeleton, Joint Tool, begin drawing your joints in one of the orthographic windows (either front or side, but not the Perspective viewit's much more difficult to control where the tool places the joints along a third axis in that view, so it's more difficult to place them accurately by simply clicking in the view window). As you click the first joint, look in the other orthographic windows to see where it appears in relation to your character. Now use the middle mouse button to drag the joint into place in the other orthographic windows.
Figure 17.1 Joints are flexible.
After you have built your skeleton, you will need to orient the joints. Do this by selecting all your joints and using the Skeleton, Orient Joint menu command (see Figure 17.2).
Figure 17.2 Choosing the Orient Joint command.
If you need to move or reposition any of your joints at any point before binding, use the Insert key with the Move tool activated. This enables you to move the joints without moving the children. Be sure to never rotate or scale your joints into place, and always translate them.
After you translate your joints, you need to be sure to rerun the Skeleton, Orient Joint command, or select the root joint of your skeletal hierarchy and execute the following command:
When your joint positioning is final, select all the joints, go into Component mode by hitting F8, and activate the Local Rotation Axis option. Make sure that you rotate your rotation axis (using the Rotate tool) so that the same axis (probably the X axis) is always pointing down the joint and that the other two axes are pointing in the proper direction for intuitive rotations to take place when it is time to animate the character. Never rotate a local rotation axis on the axis that would cause it to no longer point "down" the bone of the joint. Figure 17.3 shows the local rotation axis while it is being edited.
Figure 17.3 Setting local axis rotations.
Finally, after you have moved all your joints into place, oriented them correctly, and modified all their local rotation axes so that the rotations are perfect, you have only one more command to run. Select the top root of the skeleton hierarchies that you have just laid out and oriented, and perform the following command:
This zeroes out the scale orients and aligns the rest of the transform matrices associated with the joint to match the current orientation that you adjusted it to when you modified the local rotation axis. This is quite an important step, especially if you plan to translate or scale your joints. It is highly recommended that you perform this step when you are finished orienting all of your joints.
Figures 17.4 and 17.5 show the final laid-out skeletal structure of both characters in the Parking Spot project.
Figure 17.4 The laid-out skeletal structure for Spot.
Figure 17.5 The laid-out skeletal structure for The Jerk.