Search Unity

  1. Unity 6 Preview is now available. To find out what's new, have a look at our Unity 6 Preview blog post.
    Dismiss Notice
  2. Unity is excited to announce that we will be collaborating with TheXPlace for a summer game jam from June 13 - June 19. Learn more.
    Dismiss Notice
  3. Dismiss Notice

Using humanoid rigs in 2020

Discussion in 'Animation Rigging' started by SpiccyMayonnaise, Jul 2, 2020.

  1. SpiccyMayonnaise


    May 10, 2018
    Is it just me, or are humanoid rigs being somewhat discouraged through these new animation features. Using humanoid rigs alongside animation rigging has become very problematic with obscure inherent problems that prevent me from easily creating and editing animations for my characters.

    Are the benefits of using a humanoid rig still relevant, or should I start using generic rigs for my characters?
  2. elZach


    Apr 23, 2017
    Correct me if I'm wrong, but the big benefit of humanoid rigs is retargeting, right? So you can fit animations from one character to a slightly differnt character. Essential for things like asset-store packages, great for games without a lot of custom animation per character.

    So I think, if you're dependent on retargeting I don't think there's another solution but struggling through. If it's for a maincharacter or highly customized scene you won't lose out on much switching to generic for better support from the new packages.

    It's mildly annoying that the new packages don't support the previous solutions - but that's to be said about close to every feature being developed since 2019.

    There might be better humanoid rigging support in the future, or they might come up with a new retargeting solution -> but something along the line will eventually be fully supported.
    Last edited: Jul 7, 2020
  3. joshcamas


    Jun 16, 2017
    Yeah it's very odd that retargetting isn't a feature implemented into the new animation system - the new way of doing things (component + modular based) is REALLY nice, and gets rid of a huge number of restrictions that the old way of doing it. (Aka humanoid features only working on humanoids). I just really hope they add retargetting to the new system soon!
  4. thelebaron


    Jun 2, 2013
    I'd also like to hear a little more officially what the future of humanoid rigs holds, especially in regards to dots animation(a user mentioned humanoid rigs weren't supported but I'd like an official stance on what the roadmap holds).
    SpiccyMayonnaise likes this.
  5. simonbz


    Unity Technologies

    Sep 28, 2015

    A lot of effort has been put to make humanoid work in Animation C# Jobs (which is the core API used by the Animation Rigging package). Humanoid brings in very specialized retargeting to human characters in Unity. It's been designed to cover animation and a finite set of post-processing constraints that do not blend well in a generic animation pipeline. Therefore, while we do our best to support humanoid animation in the Animation Rigging package, it comes with certain gotchas:
    • Humanoid is not an authoring format. You cannot expect to keyframe a humanoid character as you cannot write human curves directly and since the default human pose is the resting pose, it makes for a very unintuitive workflow.

    • All Animation Rigging constraints read and write to transforms. Therefore, to work with humanoid, we need to convert the animated pose from human space to generic space before we evaluate a constraint, then write back to human space. This is a costly operation but aims to make workflow with humanoid character as seamless as possible.

      Now, if you wanted to write your own custom constraints, you could make use of the human stream in job to read and write directly to human constraints:

    • As said before, humanoid comes with its own set of core constraints that are evaluated after Animation Rigging. This is not something you can mix and match. If you intend to use FootIK for example, you shouldn't put other constraints on your feet.

    Otherwise, as you've already mentionned, you've found bugs in humanoid when used in Animation Rigging. As always, the best way for us to track this is to report bugs through the Unity Bug Reporter. I have a fix incoming for the following issue
    that I believe you reported before. Be sure to poke us back with the bug number when you log something. This way we can find it in the database and sort it out!

    Now, as for the future of humanoid, while there is ongoing work on retargeting in DOTS.Animation, this will not be an exact replica of humanoid. The team is working on a more generic remapping system, but this is fast evolving and definitely not set in stone right now.

    And before people ask, no, I can't share an ETA on this.
    elZach, joshcamas and thelebaron like this.