My Mecanim-Generic is screwing with the gravity

I am revisiting the same question I have asked, and unfortunately, I am no where near solving it.

To cut it short:

  • Mecanim Humanoid works perfectly with gravity (rigidbody), the character dropped to the floor when it is in mid-air, and the character can move forward freely. (I am using the example scene provided by Unity)
  • Mecanim Generic (at the very least, in my case) doesn’t work with gravity, I always get either of these 2 results (plus some no-so-different variations):
    - The character is moving forward, but it is stepping on air, the gravity (rigidbody) is not working
    - The gravity works, the character drops down when it is in mid-air, but it no longer moves forward. The animation is working, just that the gravity kind of interfere with the root bone and prevent it from moving.

This is the package I am working on to solve this problem, I think the key to solve this is to juggle between the mecanim-settings and rigidbody-settings, but I ran through a lot of combinations and I am no where near getting it to work:

I hope that what I am facing is just a setting problem, not a fundamental-behind-the-scene-and-I-cant-do-a-thing-about-it-at-all thingy. Give the package a run and see if you can figure it out.

I don’t think this has anything to do with Mecanim “Generic” versus “Humanoid”.

In your animations you should make sure that the “Root Transform Rotation” and the “Root Transform Position (Y)” are both set to “Bake into Pose”. This worked for me.

I had the same problem after struggling with all possible solutions(including putting a high gravity, i have to discard this one due to shooting problems).
the solution was pretty simple when animation type is generic in rig tab , just change select root node from none to the appropiate mesh body.