Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.

Animation Problem When upgrading to Unity3d 4.5

Discussion in 'Animation' started by DeveloperVic, Jun 3, 2014.

  1. DeveloperVic

    DeveloperVic

    Joined:
    Mar 21, 2013
    Posts:
    25
    Hi,
    Animation was working perfectly in Unity3d 4.0.1 version but when I upgraded to 4.5 it first displayed a warning in console:

    MuscleClip 'krishna110@run' conversion warning: 'Root/Hip' is between humanoid transforms and has rotation animation. This might lower retargeting quality.

    and the behavior was completely changed. The bone config for the Humanoid is as shown below:



    I am not sure whether the problem is related to the naming structure of the bone or something else?

    Any suggestion on how to resolve this issue will be helpful :)
     
  2. Mecanim-Dev

    Mecanim-Dev

    Unity Technologies

    Joined:
    Nov 26, 2012
    Posts:
    1,675
    Your animation will still work, we are only warning you that you have a transform between two humanoid transform that does have some rotation animation, in this case it probably Hip transform.

    You should expect to have some difference between the original motion and the retargeted motion that unity created.

    If you want to resolve this warning you have to remove all the animation on transform that are between two humanoid transform.

    One thing you can do is import twice the same file, one set as generic rig and the other one as humanoid rig and then compare both result by adding both asset in a empty scene and press play. If both object are aligned you will see some minor difference, if you can live with these minor difference you can safely ignore this warning
     
    theANMATOR2b likes this.
  3. DeveloperVic

    DeveloperVic

    Joined:
    Mar 21, 2013
    Posts:
    25
    Thank for your reply. But can you clarify what exactly it means "Root/Hip is between humanoid transform " and as you have mentioned "a transform between two humanoid transform"

    As you can see in the bone configuration that -> Hip is the child of Root and there is no much extra transform. What exactly it is indicating to when it mentions "Between"?

    It will be very helpful if it can be clarified.
     
  4. Mecanim-Dev

    Mecanim-Dev

    Unity Technologies

    Joined:
    Nov 26, 2012
    Posts:
    1,675
    I would suggest you to read this blog
    http://blogs.unity3d.com/2014/05/26/mecanim-humanoids/

    It will give you a good overview how Mecanim work, more specifically the part where we talk about the rig and in between bone

    So back to your issue, it does mean that the transform with path 'Root/Hip' does have a rotation curve, and because this bone is not mapped to a human bone, the final pose retargeted by mecanim may not match perfectly the original pose.

    If you are happy with the look of the animation clip you can ignore this warning, if you find that the clip doesn't match enough the original clip then you have to go back to your authoring tool and fix the animation.

    Best regards,
    Sonny
     
    mandisaw likes this.
  5. theANMATOR2b

    theANMATOR2b

    Joined:
    Jul 12, 2014
    Posts:
    7,790
    Sorry if I'm hijacking the post but it looks like the OP has been resolved and I just wanted to clarify the warning/error message.

    So this warning can be ignored.
    I'm happy with the results of my animation. I don't see any difference at all with the animation.
    If both object are aligned you will see some minor difference, if you can live with these minor difference you can safely ignore this warning

    If you want to resolve this warning you have to remove all the animation on transform that are between two humanoid transform.
    Is there a way to resolve the warning in Unity so it doesn't appear again on the same rig/avatar? Something that is more simple within Unity, than going back into the original source animation file, outside of Unity and deleting random translation keys that are placed on bones.

    I don't even understand why I'm getting this error actually. I would expect this error if I was animating using FK translations and moving a child bone away from it's parent bone OR scaling a bone which mecanim does not currently support. But I've only animated using rotation keys and IK translations.
    By only keying a character using rotation and IK translations this warning message seems to be detecting something that isn't actually happening.

    Thanks for any clarification
     
  6. Lebanen

    Lebanen

    Joined:
    Aug 19, 2015
    Posts:
    3
    Sorry to revive this topic after such a long time.
    I'm trying to get humanoid rig to work with facial animation (generic works fine), but when I apply the animation and set up the rig to humanoid, some bones lose their animation completely (in this example the eyebrows are working, but the jaw does not.). I've turned everything I couls in the mask section. I get that message that the bone is inbetween humanoid transform, but I lose the animation completely on that bone. I could survive some slight errors, but this is weirs.
     
  7. theANMATOR2b

    theANMATOR2b

    Joined:
    Jul 12, 2014
    Posts:
    7,790
    This is documented - have you checked in the documentation about humanoid rig, or - might have been in the blog post about the humanoid rig.

    Which bone is it that is between humanoid transforms?
     
  8. Lebanen

    Lebanen

    Joined:
    Aug 19, 2015
    Posts:
    3
    It's the bone that moves the Jaw. I animated it using rotation. Is it possible that it ignores rotation only?
     

    Attached Files:

  9. Mecanim-Dev

    Mecanim-Dev

    Unity Technologies

    Joined:
    Nov 26, 2012
    Posts:
    1,675
    Some package can add translation key like Biped in 3ds max, depending on how you setup your rig in max you can end up with translation key even if you only did rotation and ik translation.

    For humanoid rig in between bone must be rigid, because their animation are discarded since we don't know how to map this unknow bone on another human rig
     
    mandisaw and theANMATOR2b like this.