Additional Joints

Working with the fundamental skeleton is ideal for animating a character's main body, but what about other areas such as the eyes, Grae's wings, Kila's hair, and even her chest? To make the character appear more realistic, these areas should animate, too.


Kila and Grae's eyes need the ability to move, so first we will create joints to animate them. Follow these steps for both characters, as their eyes will work the same.


Start by hiding all the geometry except for the eyes.


When we created the eye, we removed the back half because it wasn't needed. For the eye to rotate convincingly, we need the joint to be in the center of the original sphere.

So create a single joint and, looking from the front, position it over the center of the eye (Figure 11.17, left).

Figure 11.17. Position a joint over the pivot for the eye.


Switch to the side view, and move the joint to the very back of the eye geometry (Figure 11.17, right).


With the eye in position, rename it to L_Eye and parent it to the head joint (Figure 11.18, left).

Figure 11.18. Parent the left eye joint to the head joint before mirroring it to create the right eye.


Use the Mirror Joint tool to copy the new eye across to create the right eye (Figure 11.18, right). This should automatically rename it R_Eye in the process.

That's the eyes in position. We will look into adding more joints in the way of facial animation in Chapter 13.

Kila's Chest

As Kila moves around, it would be nice to add a little bounce to her bosom, giving her a bit more life and making her seem more organic. We can approach this enhancement in two ways: using either joints rotations or translations to add animation.

If we use the translations method, we have freedom to move the joints anywhere in space. Also, the main pivot point will actually be inside each breast, meaning we are essentially picking each breast up and moving it around. Using rotations limits the movement to around the pivot point itself. This is ideal for rotational-based animation, on which the majority of the body is based. What you need to find out at this stage is how the joints are handled when they are exported and placed into the game. If the engine can only handle rotations, then the decision is made for you.

But which method is best? It depends on the area you are animating and what you need it to do; in this instance, both techniques will provide good results. Let's take a look.

Open up the file named KilaChestTest.mb.

Press Play in the Time Slider, and you'll notice that the movement of both breasts is almost identical, yet the one on the right is controlled via translations whereas the left side is controlled by the joints' rotations. The only initial difference can be seen when you look from the side. As the chest rises, the breast controlled via rotations tilts upward as it rotates.

Look at the joint configuration for the two techniques in Figure 11.19. As you can see, the joints on the left, which control the breast via rotations, have to be quite far back, just past the spine in fact. Having the joints too close to the breast will cause it to tilt upward unnaturally as it rises and falls.

Figure 11.19. Two different chest joint configurations

With the joints placed actually inside the breast, as shown in the torso on the right of Figure 11.19, controlling them with their translations will initially give you a good idea of how they will moveas well as giving you more freedom over where they move.

Using translations to manipulate your geometry will allow you to animate it through all three degrees of movement. With rotations, on the other hand, you are locked to the pivot point and so can only move the breast up and down and twist it. Using translations, however, lets you move it up, down, and in and out.

So for Kila, we opt for the translation methodbut in other projects, make sure you check on which methods are possible for your game environment, and think first about what you want the area to do.

Kila's Hair

Kila's hair is quite long, so if it doesn't have some movement it won't look natural. Ideally, the hair would be controlled by an in-game physics engine, but for the purposes of this book we will add some joints to give it basic movement.

We could create lots of joints, giving us the freedom to do anything we want with the hair, but its current topology and associated joint restrictions mean we have to rely on fewer joints.


First, hide the main skeleton. Then, as demonstrated in Figure 11.20a, create five individual joints along the bottom of her hairdo.

Figure 11.20. Hair joint assembly


If the geometry layer is set to Reference instead of Template, joints can be point-snapped to vertices, which will aid in their placement.


Because we want the hair to swing, using rotations is the best way to animate it. Duplicate the five joints you just created, and move them up to the pivot points from which the hair "hangs." Halfway up the side of her head is an ideal position (Figure 11.20b).


Parent the lower joints to the upper ones (Figure 11.20c). Rename them all, adding _Tip after the names of the lower joints so that you will know these are end joints.


Unhide the main skeleton, and parent the hair joints to the head. This gives you the setup shown in Figure 11.20d.

We now have the ability to add some movement to her hair.

Grae's Wings

Grae's wings, like Kila's hair, need the ability to move. You should already have a wing setup left over from Chapter 6. We can use that here, saving us the effort of creating a new one.

First we need to address the wings' ability to open and close. With the current joint hierarchy we can't do this (Figure 11.21, left). The single joint at the wrist rotates all the fingers of the wing; we need to be able to rotate these individually.


Select the middle joint of each wing finger, and go to Edit > Unparent (Figure 11.21, middle).


Now select the knuckle joint to which they were originally parented, and duplicate it four times. Call these duplicates L_Wing_Finger01_Base, L_Wing_Finger02_Base, L_Wing_Finger02_Base, and L_Wing_Finger04_Base.


Parent these new joints to the one from which they were duplicated, L_Wing_Wrist.


Now parent the ends of the wing fingers to the new joints. So L_Wing_Finger01 will be parented to L_Wing_Finger01_Base, and so forth. In effect, the wing will look no different than when we began.

Figure 11.21. Adjust the wing hierarchy so that the wing can open and close.

As you can see in Figure 11.21, right, we can now open and close the wing by using the new joints we've created.

Now that the wing is easier to pose, we can go about attaching it to the main skeleton and mirroring it for the wing on the right.


To start, simply parent the wing to the upper spine jointthe same one to which the clavicles were parented (Figure 11.22, middle).

Figure 11.22. Parent the wing to the upper spine and then create a mirrored duplicate.


To create the wing on the right, select the first joint belonging to the existing wing and use the Mirror Joint tool (Figure 11.22, bottom).

    Game Character Development with Maya
    Game Character Development with Maya
    ISBN: 073571438X
    EAN: 2147483647
    Year: 2004
    Pages: 169
    Authors: Antony Ward

    Similar book on Amazon © 2008-2017.
    If you may any questions please contact us: