Tutorial — HumanIK Mocap Cleanup for MetaHuman

Augmented Traveler local tutorial. Back to Maya — Tutorials · pipeline: Mocap — Process

How to take a solved body take (from an inertial suit or MetaHuman Animator's body solve), retarget it onto the MetaHuman body skeleton with HumanIK in Maya 2027, and fix it before it goes to Unreal. The fixes are foot contacts, hip drift, hands and props. Faces are not covered here; they stay in MetaHuman Animator.

Draft. Written from Autodesk's HumanIK documentation and vendor guides. Maya 2027 did not change HumanIK. Validate on the first capture week and correct menu names here.

1. Which route to use

Route When
A. Retarget and clean in Maya (this tutorial) Takes that need real hand-work: monologue gestures, sitting at a desk, handling the telescope or a ledger
B. Retarget in Unreal (IK Retargeter) and fix in Control Rig Simple walks and idles that are already clean

Never mix the two on one take. A take retargeted in Unreal, exported, and then applied in Maya to a Character Assembler rig often breaks. The joint rotation axes differ, so a take that looks right in Unreal plays wrong in Maya. In Maya, always retarget onto the skeleton that is in the same scene.

2. Prerequisites

3. Scene set-up

  1. Open a copy of the assembled scene and save it as AT_<Figure>_<take>_mocap_v001.ma.
  2. Set the frame rate to the capture's (Preferences → Settings → Time) before importing, so keys land on whole frames.
  3. Import the take FBX into a namespace. Use mocap: (Windows → General Editors → Namespace Editor, or the FBX import namespace option). Joint names then don't clash with the MetaHuman's.
  4. Hide the MetaHuman head and clothing for speed. Keep the body mesh visible to spot intersections.

4. Characterize the source (the mocap skeleton)

  1. In the HumanIK panel, create a character for the mocap skeleton.
  2. Use a built-in preset if one matches (Rokoko and Xsens are standard HIK skeletons). Otherwise map the joints by right-clicking each slot → Assign Selected Bone.
  3. Go to the T-pose frame. The definition must be done in the T-pose.
  4. Lock the definition. The icon turns green when it is valid.

5. Characterize the target (the MetaHuman body)

The MetaHuman body skeleton rests in an A-pose, so it has to be put into a T-pose before it can be defined.

  1. Pose it into a T-pose on a spare frame (for example frame −10):
    • rotate upperarm_l and upperarm_r level;
    • straighten lowerarm and hand;
    • lay the thumbs flat.
  2. Map the joints:
HumanIK slot MetaHuman joint
Reference root
Hips pelvis
Spine, Spine1–4 spine_01 … spine_05
Neck, Neck1 neck_01, neck_02
Head head
Shoulder / Arm / ForeArm / Hand clavicle_* / upperarm_* / lowerarm_* / hand_*
UpLeg / Leg / Foot / ToeBase thigh_* / calf_* / foot_* / ball_*
Fingers thumb_01–03, index_01–03, and so on. Leave the metacarpals unmapped, or map them as in-hand joints
Roll bones (optional) upperarm_twist_01, lowerarm_twist_01, thigh_twist_01, calf_twist_01
  1. Lock the definition and save it as a preset (AT_MetaHuman_Body) so every figure reuses it.
  2. Remove the spare-frame keys.

Don't key the corrective and helper joints that RigLogic and the Pose Editor drive in Unreal. Bake only the mapped joints (section 7).

6. Retarget

  1. In the HumanIK panel, set Character to the MetaHuman and Source to mocap. The MetaHuman now follows the take.
  2. Check the proportions. Open the character's HumanIK properties and set:
    • Floor Contacts: turn on foot floor contact and set the floor height to the stage floor, so feet don't sink or float;
    • Retarget Specific: turn on Match Source for hips height when the performer and figure are similar in height; turn it off for a much shorter or taller figure;
    • Reach on hands, only if contacts matter (desk, telescope).
  3. Scrub the whole take against the reference video. Note the frames that need fixing.

7. Bake, then clean up

  1. Bake to the control rig: HumanIK panel → Bake → Bake to Control Rig. You now have IK and FK handles to animate on top of the take.
  2. Add an animation layer for each fix (Animation Layers panel, Create Empty Layer), named for the fix: L_feetLock, L_hipDrift, L_handsProps, L_posture.
  3. The usual fixes, in this order:
    1. Hip drift and height. Counter slow drift on the hips control; keep the figure's weight period-correct: upright, not slouched.
    2. Foot contacts. Key the foot effectors pinned to the floor during planted phases. Blend over 2–3 frames at lift-off and touch-down.
    3. Sliding and pops. In the Graph Editor, add a Butterworth filter (cutoff around 4) to jittery curves only. Never filter the whole take; that removes the performance.
    4. Hands and props. Pin hands to props with the hand effectors' Reach. Use a parent constraint for the telescope or book, baked on a layer.
    5. Fingers. Inertial suits give poor fingers. Apply poses from Tutorial — Hand Pose Library for Gestures and adjust them against the reference video.
    6. Posture and costume. Check the pose against the costume: a corseted torso bends less, and a dress hides the knees. Check with the historian and costume designer; see Position — Performance Capture Actor.
  4. Merge the layers once you're happy. Keep an un-merged copy of the scene.
  5. Bake to the skeleton: Bake → Bake to Skeleton. This keys the MetaHuman joints directly for export.

8. Export to Unreal

  1. Select the root joint hierarchy only; no meshes.
  2. File → Export Selection → FBX with the AT_Animation preset (Tutorial — FBX Export Presets for Unreal):
    • Animation on; Bake Animation over the take's range; the capture frame rate;
    • no deformed models; no constraints; Z-up to match Unreal (or leave Y-up and let Unreal convert; be consistent);
    • units in centimetres.
  3. In Unreal: import onto the MetaHuman body skeleton asset already in the project. Name the result AS_<Figure>_<take>_v###.
  4. Check in Unreal with the full MetaHuman: the corrective shapes and twist should now look right. Fix any pops back in Maya on a new layer.

9. Check before handing off

Sources