This tutorial guides you through the process of mapping motion data from one character to another.
The major steps of this tutorial are:
Preparing the Scene
Mapping Character to Character
Adjusting the Character
Many of the steps for mapping a character to another character are the same as mapping an Actor to a character (see the Tutorial 53, "Mapping Actor to Character").
In this step, you will add a favorite path for the tutorial folder in the Asset browser window. As a result, you will be able to access the tutorial files directly from the interface.
1. From the menu bar, select File>New, then select Layout>Editing.
MotionBuilder displays a new scene using the Editing layout. This layout displays all the windows you need for your work in this tutorial.
2. Right-click in the Asset browser and select Add favorite path from the contextual menu (fig 11-1).
3. In the Open directory dialog box that appears, choose the BodyC2C folder (created when unzipping the T11_Body_Char_to_Char.zip file) and click OK. The BodyC2C folder is added as a favorite path in the Asset browser (fig 11-2, A).
4. From the BodyC2C folder in the Asset browser, drag Surfer.fbx into the Viewer window (fig 11-3, A), then select FBX Open>No Animation from the contextual menu that appears.
A character named Surfer displays in the Viewer window (fig 11-3, B) in a T-stance.
5. From the BodyC2C folder, drag Punch.fbx into the scene, then select FBX Merge>Take 001 from the contextual menu that appears.
A characterized skeleton displays behind the Surfer (fig 11-4, A).
fig 11-5: The Timeline indicator is at frame 0 of the current take.
2. Play the take (Ctrl-Spacebar) and observe the Skeleton character moving while Surfer remains in the same place.
3. In the Characters folder of the Scene browser, double-click Surfer (fig 11-7, A) to open the Character settings in the Navigator window (fig 11-7, B).
4. Select Character Input (fig 11-8, A) from the Input Type menu, then select the Skeleton character in the Input Source menu, if it is not automatically selected (fig 11-8, B).
The input type specifies that the animation will be imported to the active character (Surfer) from another character, and the input source determines which character is the motion source (Skeleton).
Before you can use a character as a source, it must be characterized.
The Active option next to the Input Type field is automatically selected, snapping Surfer to its Skeleton source (fig 11-9).
5. Play the animation (Ctrl-Spacebar) and observe how Surfer and the Skeleton character walk in the same space with the same timing.
In this step, you will use various settings to adjust your character to produce accurate motion relative to the limitations of human motion, and to the actual motion data linked to the character.
1. In the Scene browser, expand Scene>Surfer:Root, then select Surfer:Reference (fig 11-10, A) to select the character's reference node (fig 11-10, B).
2. Click in the Viewer window and press R to activate Rotation mode, then rotate Surfer along the Y-axis using the green Rotation ring (fig 11-11).
3. Play the resulting motion in which Surfer walks using a different orientation than the Skeleton character.
4. Activate Scaling mode (S), scale Surfer uniformly larger or smaller, then play the motion.
The motion is mapped proportionally to the character's size. For example, a larger character takes smaller strides, while a smaller character takes larger strides (fig 11-12).
5. In the Character settings, activate Match Source (fig 11-13, A) in the Retargeting group.
Surfer's feet now match the position of the Skeleton source and the scaling is preserved (fig 11-13).
The blue and green markers that display on Surfer's feet specify the way the feet contact the floor, and they were previously defined in Tutorial 8, "Characterizing a Biped". Blue markers represent the right foot floor contact, and green markers represent the left foot floor contact. These markers can be shown and hidden using the Show menu in the Character Controls window.
6. In the Character Settings, expand the Floor Contacts heading and activate Feet Floor Contact (fig 11-14, A) to make the Surfer character respect the dimensions of the floor in the scene.
7. In the Scene browser, select Skeleton:Reference, then translate up and down along the Y-axis in the Viewer window.
Because you matched the character to the source Skeleton in step 5, now you can modify the character's position by translating the source. When you translate the Skeleton's reference node below the floor, Surfer's feet stop at floor level, and the knees bend to respect the height of the floor. This means that the global Y-axis equals zero because no model is used as a floor contact.
During this tutorial, you mapped one character containing motion data to another character. You can further adjust your character to its source using the options in the Character settings. Once you are satisfied with your Character mapping, you can transfer the motion data to your character's skeleton in what is referred to as plotting. You can then export your plotted character and open it in other 3D software.