MotionBuilder:
Character
Last
updated 9/22/2009
We have looked at how to apply a motion to an intermediate skeleton Actor in
MotionBuilder. Character is
what
the motion is ultimately
attached to.
While the Actor's proportion has been matched to the
proportion
of the capture subject,
a Character must have
the proportion of the 3D character that you build. You need to make
a
link
between an Actor and a Character. Changing this relationship changes the results that you get.
This
is another layer of motion capture, and there are at least one or two other
layers after this.
Step 1. Preparing
a skeleton in Maya
Step 2. Preparing an Actor
Step 3. Bringing a skeleton into MotionBuilder
Step 4. Scaling down the skeleton
Step 5. Bringing in a Character
Step 6. Correlating the skeleton
and Character
Step 7. Characterizing.
Step 8. Activating Actor and Character
Step 9. Editing motion
Step 10. Exporting the skeleton to Maya
Step 11. Importing the skeleton back into Maya
Step 12. Editing
in Maya
1. Preparing a skeleton in Maya.
a). Importing a sample skeleton into Maya. Here is a sample
skeleton with
the joints named using MotionBuilder's naming
conventions as a maya
binary file
and a fbx file.
If you use a skeleton with the joints
named
using the
naming
conventions, you can skip
Step 5 in this handout. So, you may want to import
the sample skeleton and modify it. To
import a .fbx file into Maya,
you need a plug-in (read note below). In Maya, go to File -> Import...
Note: If Fbx (*.*) is not one of the options of File type, in Maya go to Window -> Settings/Preferences -> Plug-in Manager. Find fbxmaya.mll and turn on loaded and auto load.
b). Correcting the proportion of the skeleton. Prior to modeling a skin for your character, you may match the proportion of the sample skeleton to that of the capture subject by bringing marker data of the performer in a T-pose into Maya. Here is a sample marker data of a T-pose (.fbx file). (Read the bottom note on exporting a T-pose in MotionBuilder: Actor for more details on a T-pose). Select all the marker data by selecting ViconRoot. Rotate, translate, and scale the marker data so that they overlap with the skeleton. Move the skeleton's joints to match the proportions.
c). Scaling down the skeleton. The sample skeleton is very large in Maya. If you want to scale it down, use reference_node above the top joint hips.
VERY
important note 1: MotionBuilder messes things up if you
have any scaling on reference_node. Therefore, if you
scale the skeleton, before you bind a skin to the skeleton, apply IKs
to the skeleton, or export the skeleton, select reference_node AND
all the joints in Hypergraph, and apply Freeze
Transformations under Modify. You
can't apply Freeze Transformations after you bind skin
to the skeleton (unless you unbind the skin temporarily). So,
do it now.
VERY Important note 2: MotionBuilder
likes the skeleton with joints that have the rotation axes parallel to the
world coordinate system. So, before you bind skin to the skeleton, apply IKs
to the skeleton, or export the skeleton, look at joints rotation axes
by selecting all the
joints
and go to Display -> Component
Display -> Local Rotation Axes. If you see
any joints that need to be oriented, select the joints and open the Freeze
Transformation Options window
by selecting the small box next to
Freeze Transformations under Modify. Select
Joint Orient and apply.
![]() |
![]() |
Bad
joint rotation axes |
Good
joint
rotation axes |
d). Modeling, texturing, and binding a skin. At this point you may model, texture, and bind a skin to the skeleton. And also apply IKs to the skeleton. Save a skin-bound rigged character into a .mb file. This step can be done later. A sample skin bound character is here. If you use the sample skeleton, you need to lock the rotations of the following joints -- LeftForeArmRoll, RightForeArmRoll, LeftArmRoll, RightArmRoll, LeftUpLegRoll, RightUpLegRoll, LeftLegRoll and RightLegRoll -- so that when IKs are used, the arms and legs won't bend at these joints.
e). Exporting the skeleton. When you export your skeleton from Maya, select all the joints and go to File -> Export Selections (or delete everything but reference_node and all the joints and File -> Export All...).
2. Preparing an Actor. The first thing to do is bring in a motion. Go to File -> Import… and select Vicon (*.c3d) as the file type and select the .c3D file you want to process. Next drag an Actor into our space (See Step 2 in MB: Actor) and import a maker set (.hik file) (See Step 7 in MB: Actor). Select ALL of the optical data points (including the optical root which is a green sphere), alt-drag, and drop them into Model part of the Reference section of the Actor. (See Step 7 in MB: Actor). Click Active on and the Actor should pop into place and move with your markers. Deactivate the Actor by de-selecting Active in Actor Settings before moving to the next step.
If you don't have an Actor with motion data applied to, go through this step (which is detailed in MB: Actor) to create one or open a sample .fbx file, and deactivating the Actor.
3. Bringing a skeleton into MotionBuilder. Go to File -> Merge... and find the skeleton you want to import. You do not want to bring in any animation data. If any Take is selected in the list of takes in the pop-up menu, de-select it.
4. Scaling the skeleton. If your character walks or runs and if the Actor and your character have different proportions, scale your character's skeleton so that the length of your character's legs match the Actor's. If arms are more important, e.g., your character's hand reaches a prop, it is wise to scale the character's skeleton so that the the length of the character's arms and that of the Actor's match. If you need to change the skeleton's proportion, go back to Step 1. Don't do that in MotionBuilder.
To scale the skeleton, go to Navigator and click open Scene. Select reference_node. Properties in Asset Browser pane show the scaling factors of reference_node while reference_node is selected. You can change the scale of reference_node by changing the numbers in Properties.
![]() |
![]() |
Scene
in Navigator |
referene_node's scaling factors |
If you need to scale joints, select all joints, open Skeleton Node Settings in Properties, and change Size.

Tips:
Section
mask for skeleton joints
5. Bringing in Character. Go to Asset Browser and find the Character in the Templates - > Characters. If you are using a skeleton with joints named using MotionBuilder's naming conventions, turn off selection mask, use Ctrl+w to go to Schematic in Viewer, drag the Character onto the skeleton's Hips, characterize as Biped, and go to Step 7. If you are not using a skeleton with joints named using MotionBuilder's naming conventions, drag the Character into Viewer, and go to Step 6.
Note: If the selection mask for skeleton joints is on, you won't have a problem, but if a selection mask for other types of items, e.g., markers, is on you can't drop a Character on top of the skeleton's Hips to characterize is. So, turn masks off.
![]() |
![]() |
Character
in Asset Browser |
Hips
in Schematic |
6. Correlating the skeleton and Character. If you have a skeleton with joints that have names different from what MotionBuilder expects, you need to make correlations between the Character's joints and your skeleton joints manually. You need to tell the Character what the root/hip joint is called, what the right arm is called, etc. Go to Navigator and select Character in the Characters directory (see the left side of the screen capture below). Select the Character Definition tab. Drag each joint into the appropriate segment of the Character. Below is a partial listing of these different names and different segments of the skeleton that the Character is looking for. You need to drag each joint into the appropriate segment in the Model column.
If you have named your skeleton joints in Maya the same as what the Character expects, then this automatically matches up. In this case, you'd drag the entire skeleton and drop it into the Model column. MotionBuilder would then make all the correct correlations.

In addition to the Base (required number of joints), there are also extras for the back, neck, props, etc. So if you have multiple back segments, add them into the spine section. Make as many correlations as possible.
7. Characterizing. Now that you have filled out the Character Definition section, it's time to click the Characterize box. (See the captured screen above). This will tell you if you have all your required joints identified as well as tell you to remember to have your skeleton oriented down the Z-axis.
8. Activating
Actor and Character. To activate the Character,
select the Character under Characters in
the left side of Navigator, click
on the Character
Settings tab, and choose Actor Input as Input
Type. Turn on Active. (See the screen capture
below).
To re-activate the Actor,
select the Actor under Actors in
the left side of Navigator, click on the Actor
Settings tab
and click
on Activate. If
you
scrub through the time line, you should now see your Actor moving
your Character.

9. Edit motions. You may edit motions by using a rigid body, blending, and retargeting.
10. Exporting the skeleton
to Maya. When you
are happy about what you see, it's time to bring the motion to Maya.
In
the
image
above,
find
the
button
to
the
left
of the input source dialog
box called Plot
Character... Press this button and then choose to apply the motion
to skeleton.
This will
apply all
the motion to the skeleton that you imported.
Scale the character back to the original size by changing the x-, y-, and z-
scaling
of reference_node back to 1, 1, 1. (Reverse what we did in Step
4.)
To export this information out, choose the entire skeleton, and then go into File->Export. Choose to export as a .fbx file (animation only). It will bring up a standard box of options to export. Just click the OK button works fine.
11. Importing the skeleton
back into Maya. Now,
in Maya, bring
up the Maya scene
file with your skin bound character. Go to File -> Import... and
choose to import a .fbx file. Use the merge box
in the import dialog. This should
import
the data onto your skeleton
and it should be moving around in Maya.
Important: In the following way,
you
will
need to bind skin to your skeleton just once:
i). In Maya bind
a skin to
your
skeleton
in a T-pose. -- See Step 1. d).
ii). Export the skeleton with or without skin and import it into MotionBuilder. --
See Step 1. e).
iii). In MotionBuilder apply motion data to your skeleton in
the
way described
above. -- See Steps 2 - 9
iv).
Plot Character and export the skeleton (joints) alone (leave the skin!) -- See Step
10
v).
Import the skeleton
with
motion
data back into Maya by merging it into the skin bound character
in a T-pose. -- See Step 11.
Note:
You may try this. Step11, with a sample
character with skin (.mb file) and a sample
skeleton with motion data (.fbx).
12. Editing in Maya. In Maya, you may
use Trax
Editor to
blend and edit motion data.