Our rigs are is clean and tidy now and can be animated easily (and safely)but they're still quite complex in construction and don't allow for any quick and convenient way to access the character as a whole. What we can do now is define a series of character sets for the characters. A character set stores all the attributes associated with the character's animation in one central place. The animator can then access these attributes quickly and easily in order to edit the character as a whole.
Another benefit of character sets is that you can use them in conjunction with the Trax Editor (Window > Animation Editors > Trax Editor) to store the animation data in clips. These can then be exported and stored for future use, even on other characters. You'll find more discussion of the Trax Editor in Chapter 16, "Animating for Games."
In addition to the main character set, you can have subcharacter sets that lie beneath the main one. These are useful when you need to divide up your character. For our Kila and Grae characters, we'll set up a subcharacter set for the upper body animation and another for the lower body animation. We can then export and import animation onto these subcharacter sets separately, enabling the mixing and matching of various animations to create new ones. We can even have another separate subcharacter set for Grae's wings.
So let's first create the main character set for Kila.
Go to Character > Create Character Set and open the options seen in Figure 15.6. This is where you will give the character set a name and ask Maya to include some attributes in its initial creation.
Figure 15.6. Create Character Set window
Name the character set Kila_CS to indicate that it belongs to Kila and that it's a character set, just in case more than one character is imported into the scene. In the Character Set Attributes, enable the From Channel Box item.
We want this main character set to hold all the facial animation, so before we create it, select the main head icon. In the Channel Box, select all the attributes associated with facial animation.
If you are using the blend shape version of the character, highlight all the attributes on the blend shape node.
When everything is selected, click on Create Character Set. In the bottom-right corner of the window, below the Time Slider controls, you will see that the character set has also been activated (Figure 15.7).
Figure 15.7. The Kila_CS character set is active.
You will also notice that for the selected objects, the name Kila_CS will appear under the Inputs section in the Channel Box. This is to indicate that the character set is connected to the object's attributes.
Now we need to add the eyes to this character set as part of the facial animation.
Select each eye icon and then the main eye controller group.
Select all the translate attributes in the Channel Box.
Go to Character > Add to Character Set, and the selected attributes will be added.
We now have our main character and it holds all the relevant attributes that can have animation applied. Let's now create the two subcharacter sets, which will hold all the attributes for the upper and lower body.
Go to Character > Create Subcharacter Set and open the options. As you can see in Figure 15.8, they are identical to the ones for the main character set.
Figure 15.8. Create a subcharacter set for the upper body.
First type in the name UpperBody and set Subcharacter Set Attributes to All Keyable. Making sure you have nothing selected in the scene, click on Apply. (You want to leave this character set empty for now because you're going to create the lower body set directly after this.)
Type the name LowerBody into the Name field and, using the same settings as for UpperBody, click on Apply. Close the window when you're done.
Because these are subcharacters, they will not be activated, so now we need to activate the UpperBody set. You can do this in either of two ways:
Click on the red down arrow to the right of the Time Slider, where Kila_CS is currently displayed as the active character set. Then select the appropriate subcharacter set from the menu.
Go to Character > Set Current Character Set Kila_CS > UpperBody.
Now all you need to do is add all the upper body icons' attributes to the subcharacter. You will work your way through each of the upper body icons, the spine joints, clavicles, arms, hands, hair, neck, and head.
First select an icon and then highlight all its attributes in the Channel Box.
When working on the head, ignore the facial animation attributes you already assigned. Also ignore all the ikBlend attributes because these control the ability to switch between IK and FK. If you add these to the character set, they won't work.
Go to Character > Add to Character Set, and the attributes are added.
Finally, switch to the LowerBody subcharacter set and add to it the Waist_Control, Root_Control, both knee controllers, and foot icon attributes. Remember to ignore the ikBlend attributes.
The main character sets are now set up and can be used to safely store and transfer animation between characters.
At this point you might want to store the default pose so you can quickly get back to it. In doing this, you will get your first taste of animation by setting a keyframe. With most game engines, the first frame (or in some cases frame -1) has to be the character in this default pose. Now that we have the character sets, we can do this quickly.
Either select the Kila_CS character set in the Outliner, or go to Character > Select Character Set Node > Kila_CS.
Then, making sure the Time Slider is set to 0, right-click in the Channel Box and select Key All.
Do the same for the UpperBody and LowerBody subcharacter sets, and you're done.
Save this final scene as Kila_Final.mb.
If you haven't already, clean up Grae's scene and rig. Then create character sets for him similar to those you've done for Kila. Save his scene as Grae_Final.mb.
Now that both characters are truly completegeometry, LODs, rigging, animation setup, bindingand have been finalized and cleaned up, I recommend making one last check, if you have the time available. It's not impossible that your characters might benefit from further work on the textures or the weighting.