Search Unity

  1. Check out the Unite LA keynote for updates on the Visual Effect Editor, the FPS Sample, ECS, Unity for Film and more! Watch it now!
    Dismiss Notice
  2. The Unity Pro & Visual Studio Professional Bundle gives you the tools you need to develop faster & collaborate more efficiently. Learn more.
    Dismiss Notice
  3. Improved Prefab workflow (includes Nested Prefabs!), 2D isometric Tilemap and more! Get the 2018.3 Beta now.
    Dismiss Notice
  4. Improve your Unity skills with a certified instructor in a private, interactive classroom. Watch the overview now.
    Dismiss Notice
  5. Want to see the most recent patch releases? Take a peek at the patch release page.
    Dismiss Notice

Animator.Root Q (Missing!) & Animator.Root T (Missing!) - what does this mean, how to fix it?

Discussion in 'Animation' started by XRA, Mar 19, 2015.

  1. XRA

    XRA

    Joined:
    Aug 26, 2010
    Posts:
    144
    I have an FBX which should have Root Motion, my Rig is a Generic type, and in the Rig panel I've set the Root Node to the Skeleton Root inside the FBX.

    I'm not seeing Root Motion applied, and when I view the animation clip embedded in the FBX file, it says in yellow:
    selectionWheelTest : Animator.Root Q (Missing!)

    selectionWheelTest : Animator.Root T (Missing!)

    When I hover over either of those it says "The GameObject or Component is missing ()"

    both of those do have keyframes that were imported, I can see the curves/keys there, for example the Root Q xyzw have the appropriate curves for the rotation I'm expecting on the root node.
     
  2. Mecanim-Dev

    Mecanim-Dev

    Unity Technologies

    Joined:
    Nov 26, 2012
    Posts:
    1,615
    When you see curve in yellow it does mean that those curve are not assigned to any transform properties. Most of the time it because there is no transform that match the animation curve transform path.

    Did you rename some of your transform after importing your animation file?
     
  3. XRA

    XRA

    Joined:
    Aug 26, 2010
    Posts:
    144
    Thanks for the response! No I didn't rename anything, the path is blank actually; I made a copy of the anim clip so that I could serialize it as text and view the data.

    This is also why when I mouse over the yellow text it says "The GameObject or Component is missing ()" --the () is where the path name would be. So if my path was "test" it would say The GameObject or Component is missing (test)"

    I discovered that by trying to edit the Path name in the anim clip, but no luck fixing it.


    The main issue that got me digging into this, is I'm trying to use Root Motion for Pitch and Roll, but no matter what I try Unity is acting like it doesn't exist.

    That's what led me to see that my Root Q and T is listed as missing, which I assumed might be why I'm getting mixed results with root motion.


    This missing Root Q and T happens on a Generic Rig.

    I compared with the built-in standard character unityPackage (the Ethan model & animations) and Root Q and T exists on that.
    So it got me thinking, maybe it is created when using a Humanoid Rig ?


    As far as Root Motion not responding to Pitch and Roll on my generic rig, I know that it is setup correctly, because if I export the animation with rotation on the Y axis (Yaw), the Root Motion will follow that (continuing the loop where it left off in terms of orientation). Same goes for if I add any XYZ translation...

    I'm just using a simple cone mesh, weighted to a single bone, the bone is parent to a Root locator, similar to other examples I've seen. So compared to the Ethan rig, my Root locator is EthanSkeleton, and the single bone parented to it is EthanHips
    (The mesh itself sits outside of the Root)

    This leads me to think that Unity just has some weird issue with Root Motion with Pitch and Roll.... but I don't understand why and would like to know the reason if that's the case.
     
  4. XRA

    XRA

    Joined:
    Aug 26, 2010
    Posts:
    144
    Also worth noting, this is only happening in Unity 5.

    I tested in Unity 4.6 with the same FBX and at least the Root Q and T (called Motion Q and T) are not missing
     
  5. Mecanim-Dev

    Mecanim-Dev

    Unity Technologies

    Joined:
    Nov 26, 2012
    Posts:
    1,615
    Can you submit a bug report with your project? send me your case number we you get it
     
  6. Jaqal

    Jaqal

    Joined:
    Jul 3, 2014
    Posts:
    288
    Anyone ever fix this?
     
  7. diccy

    diccy

    Joined:
    Jun 15, 2015
    Posts:
    1
    Same problem here... I'm trying to use Root Motion on a Generic rig, from FBX animation files. I tried many different things, but in the Animation Panel, the are always "Animaton.Motion T|Q (Missing!)" and "Animation.Root T|Q (Missing!)".
     
  8. sowatnow

    sowatnow

    Joined:
    Jun 12, 2014
    Posts:
    303
    Same problem, is there a fix for this?
     
  9. Brad-Newman

    Brad-Newman

    Joined:
    Feb 7, 2013
    Posts:
    68
    When I experienced this error it was due to a difference in the FBX hierarchy between the skinned mesh FBX and the animation FBX file hierarchy. The culprit for me was on the Maya side where there was a difference in the hierarchy between my skinned mesh maya file and the animation maya file. My skinned mesh root node was at the root level in the Maya outliner. The animation root node was grouped under a parent node in the Maya outliner. When I did Export Selected on the animation node it resulted in an FBX in Unity that had an extra child node, resulting in a different hierarchy between the skinned mesh FBX and the animation FBX. I fixed it in Maya by moving the animation root node to the root level in the hierarchy and re-exporting.
     
    theANMATOR2b likes this.
  10. Rahd

    Rahd

    Joined:
    May 30, 2014
    Posts:
    176
    I hope it's the same case ....
    it would be nice to change the meta file's name .. but somethimes it doesnt work.
    you have to edit the meta file ...
    Fix here: