With rare exceptions, humanoid models have the same basic structure, representing the major articulated parts of the body; the head and limbs. The first step to using Unity’s humanoid animation features is to set up the Avatar. This represents the mapping between the simplified humanoid bone structure understood by Unity and the actual bones present in the skeleton.
Since the Avatar is such an important aspect of the animation system, it is important that it is configured properly for your model. So, whether or not the automatic Avatar creation succeeds, you should always go into the Configure Avatar mode to check that your Avatar is valid and properly set up. It is important that your character’s bone structure matches Unity’s avatar predefined bone structure and that the model is in T-pose.
If the automatic Avatar creation fails, you will see a cross next to the Configure button.
If it succeeds, you will see a check/tick mark:
Here, success simply means all of the required bones have been matched but for better results, you might want to match the optional bones as well and get the model into a proper T-pose.
When you go to the Configure … menu, the editor will ask you to save your scene. The reason for this is that in Configure mode, the Scene View is used to display bone, muscle and animation information for the selected model alone, without displaying the rest of the scene.
Once you have saved the scene, you will see a new Avatar Configuration inspector, with a bone mapping.
The inspector shows which of the bones are required and which are optional - the optional ones can have their movements interpolated automatically. For Unity to produce a valid match, your skeleton needs to have at least the required bones in place. In order to improve your chances for finding a match to the Avatar, name your bones in a way that reflects the body parts they represent (names like “LeftArm”, “RightForearm” are suitable here).
If the model does NOT yield a valid match, you can manually follow a similar process to the one used internally by Unity:-
If the auto-mapping (Mapping->Automap) fails completely or partially, you can assign bones by either draging them from the Scene or from the Hierarchy. If Unity thinks a bone fits, it will show up as green in the Avatar Inspector, otherwise it shows up in red.
Finally, if the bone assignment is correct, but the character is not in the correct pose, you will see the message “Character not in T-Pose”. You can try to fix that with Enforce T-Pose or rotate the remaining bones into T-pose.
Sometimes it is useful to restrict an animation to specific body parts. For example, an walking animation might involve the character swaying their arms, but if they pick up a torch, they should hold it up to cast light. You can use an Avatar Body Mask to specify which parts of a character an animation should be restricted to. See documentation on Avatar Masks for further details.