Search Unity

Question Problems with Animation Layers for Humanoid Rig

Discussion in 'Animation' started by Vit3D, Jun 3, 2020.

  1. Vit3D

    Vit3D

    Joined:
    May 2, 2015
    Posts:
    64
    Greetings,

    I got a problem with modifying humanoid character animation using Unity Animation Layers feature.
    Think it's better to explain this on simple example --

    I have Idle animation in which character has relaxed hands gesture and would like to replace existed gesture to Fist gesture.
    As "source" I have:
    - Looped Idle animation defined as Humanoid rig.
    - Static T-Pose (3 frames with Loop time ON) in which fingers have Fist gesture (also Humanoid rig).
    - Avatar Animation mask "Body_No_Fingers" in which character finger bones excluded.
    - Avatar Animation mask "Fingers_Only" which include only fingers bones (all other bones excluded).

    In first attempt I put Idle animation in the first layer (no mask) and place Fist gesture in the second layer with such parameter:
    - Mask -- Fingers_Only, Blending -- Override.
    As result I got complete pose from Second layer (T-Pose with Fist gesture).

    Then I changed Blending for second layer to Additive.
    As result I got Idle pose with some fingers trembling.

    Although this is not recommended, I assigned Body_No_Fingers mask on first Idle layer and repeated previous test combinations. Results have been exactly the same.

    Will be great if someone will help me to solve this problem and could explain how correctly construct Animation layers for replacing and/or additive change some bone transforms in animation using these bone transforms from static pose.