Inspired 3D: Creating and Understanding Skeletons and Kinematics

Michael Ford and Alan Lehman take us through the step-by-step process of planning the setup of a 3D character. While these steps may sound time consuming the authors assure us it will pay off in the end! The third of several excerpts from the book, Inspired 3D Character Setup.
Posted In | Magazines: VFXWorld


Note that the Auto Joint Orient option is set to xyz by default. By using this option when you create a joint chain, the X-axis will be oriented down the length of the bone. The direction of the other two axes depends on how the skeleton is drawn within the window you have selected. In Maya, the name for the axis that defines this direction is known as Local Rotation Axis (LRA).

    4. Open the Outliner and select the first three joints in your newly created chain.

[Figures 4 & 5] The “Z” chain with the Local Rotation Axis displayed (left). The perspective window shows you the flipping that occurs when the joints reverse direction. Show menu pull-down list (right).

    5. To display the LRA, choose Display > Component Display > Local Rotation Axis. (See Figure 4.)

    6. In the Show menu, make sure that you have Handles checked for the view panel that you’re working in. (See Figure 5.)

You should now see a multi-colored icon at each joint. This is the Local Rotation Axis. Notice that the LRA X-axis is pointing from the joint down the length of the bone to the joint’s child. This is how you want the joint chain to look when you’re done modifying joint positions. The other LRA feature to note is that the Z-axis is flipped 180 degrees on the third joint. In Maya, whenever you create a joint chain that reverses direction, the LRA is flipped based on the rules the software follows when determining LRA rotations at the joint’s creation.

Scripting the Orientation of Your Local Rotation Axis
In order to make some of the adjustments necessary for building joint chains, you will use some simple MEL (Maya Embedded Language) scripts. MEL is the programming language of Maya. If you’re not familiar with programming and scripting, have no fear — you don’t have to become a programmer in this chapter. You’ll be using some really basic scripting commands and a technique that involves a lot of cutting and pasting in order to create your scripts. This technique is quite easy to learn, regardless of whether or not you have any programming experience.

In Figure 6, the top (gray) portion of the Script Editor is the history area, and the bottom (white) portion is the input area. Most commands and actions performed in your Maya session are recorded in the history area of the Script Editor. When you copy the text that is echoed by your actions, you can build a script to easily repeat those actions. This can be extremely helpful when you’re in an experimental phase —building something, testing it, and making small changes before trying it again.

    1. In the input area of the Script Editor, type the following command: rotate -r -os 180 0 0;

    This command tells the selected node to rotate (-r) relative to where it is right now,

    (-os) in its own object space, (180 0 0) 180 degrees around x, and 0 degrees around y and z.

    2. To select the local rotation axis for the joint that you want to flip, set your selection mode to Components (using the F8 key combination) and activate the selection icon that looks like a question mark (?). (See Figure 7.) With the question mark (?) icon activated, you can select the LRA of the joint you want to change.







Comments

  No comments. Be the first to comment below.


Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.
  • Use <!--pagebreak--> to create page breaks.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.