Skip to content

Contributor AcquiringAnimationsFromMixamo

Fabrizio Nunnari edited this page Feb 17, 2020 · 3 revisions

Import of Animations from Adobe Mixamo to Blender

How to import animations from Adobe Mixamo and apply them to the Manuel Bastioni (MB) characters.

  1. Create a character and export it as FBX.

    Note: There are already samples for the default characters (e.g., MBLab1.6.1a-F_CA01.fbx) that you could use it immediately to import in MIXAMO. In this case you may skip these steps. But you need to re-export for non-default body size/proportion.

    • Open a new Blender scene. Create a MB character and configure it as you need.

    • Before finalizing the character, set the rest pose: MBLab -> Rest pose -> Rest pose: a-pose. This will be the pose where all rotations are identity quaternions.

    • Finalize the character.

    • Select the armature in Object mode and run Yallah panel -> Reset Character Pose. You need to do this because, most of the times, the bones orientation of the created characters are not accurately reset, and this increases the mismatch between the created character and imported animation from MIXAMO.

      Note: If you save the scene and reopen it, there would be again some non-zero orientations and we recommend to run the Reset Character Pose each time before export.

    • Export the character's armature in FBX format. Select the armature and select File -> Export -> FBX (.fbx)

      Alt

      Leafs Bones must be there, or Mixamo won't be able to import.

      Alt

  2. Upload the character to MIXAMO and get an animation

    • Open https://www.mixamo.com/ and register/login.
    • Upload the exported FBX in MIXAMO Alt
    • and follow the import process. It should be automatically rigged. Alt "Mixamo Auto Rigger")
    • Apply the animation you like.
    • Download the character from MIXAMO:
      • Format FBX(.pbx)
      • Skin Without Skin Alt
  3. Apply the animation to the Blender character

    • Open the Blender scene with the original character (from which you exported the FBX skeleton)
    • Import the FBX with the animated skeleton, the one downloaded from Mixamo File -> Import -> FBX (.fbx)
    • The imported is a character whose attached animations could be applied to the original MB character.
      • Select your character armature
      • Show a DopeSheet / Action Editor
      • Select the animation from the animation list
      • (Suggested) Rename the animation
      • Force the action to stay in the scene with F
      • Delete the FBX armature (Scene layout -> right click -> Delete Hierarchy)
      • At this point you can even delete the FBX file.
  4. Adjust animation

    There might be some misalignments between the animation as whown in the mixamo skeleton with respect to when applied to your original character. This is likely due to the corruption between exportation and re-importation of the FBX (which is also altered by Mixamo). They are due to some offsets in the rotations.

    For some animations the results are acceptable, but for others not. Especially when body parts are not touching each other, like while clapping. Usually, consistent rotation offsets are observed in the shoulders of the woman.

    You can fix it in two ways. The first is by using the MBLab tools.

    • Open the panel ManuelBastioniLAB -> AFTER-CREATION TOOLS -> UTILITIES -> Bones rot. offset
    • Select the bone yuo want to offset
    • This will apply an adjustment to the whole animation.

    Alternatively, you can use the script we prerared in the BLednerScene directory OffsetMixamoAnimationCurves.py.

    • Open the script in your blender scene, scripting editor.
    • Select the chatacter armature
    • Activate the action to fix
    • Run the script.

    The animation curves will be updated to math the Mixamo alignment. Beware, currently this works only for animations exchanged with charactera finalized in t-pose (where shoulder joints are ok, but the offsets are mostly visible in elbows and wrists)