Benefits of root motion

Hi! I’m not sure if this is the right place to ask, but what are the benefits of using root motion of an animation to drive a character forward? Isn’t it nicer to have full control through a script, so that you can change the speed etc at any time? Also, it seems that root motion is not applied when using a generic rig. Is this a known bug? I found another thread about that here:

I get the rest of Mecanim though. The whole state machine thing to switch between animations is really nice. Is it possible / viable to use Mecanim without using root motion? Can i control my characters movement the normal way, via script and just control the animation clips with Mecanim’s state machine?

Thanks in advance.

Root motion removes the possibility of foot sliding and allows you to do complex things that would be hard to control the “speed” for.

Imagine that you had blended a right twist animation and a cartwheel animation. It would be very hard to work out how to position that animation for a particular speed (to ensure the hands hit the ground and the body pivoted over them), but root motion just does that for you.

There are certainly times when it’s easier to use normal speed control and adjust the animation weight and speed to match, it’s horses for courses. Navigating with root motion is harder because you have to work out how to play the animations to get where you want to go…