I know how to code for Mecanim, all that is great! Yet, the animations are impossible to make with ROOT MOTION! Even if I make the animation with ‘root motion’ in Blender, Mecanim simply doesn’t receive it with root motion. So, can anyone please tell me how to apply root motion in blender? (I have Unity Free, so I can’t use curves.)
I’m doing it with Rigify with a slight mod. Set up the Rigify armature as usual, we’ll call this rig1. Duplicate it, remove all the bones except the ORG- and the root bone from the duplicate, we’ll call this rig2. Rig2 becomes the deformer rig. Replace all the constraints on the rig2 with a copy transform constraint on each bone targeting the ORG equivalent bones of rig1. Parent the mesh to rig2 with auto weighting, fix the weights if need be. Now whatever you do to rig1, transforms rig2. Rigify has a root bone. In a walk cycle for instance you move the root to take into account the forward motion. When rig1’s Walk cycle is done, select the mesh, make sure it has the walk action is visible, do the same for rig2. Select the mesh and rig2 only, Export as FBX with these settings. You don’t even need key frames on Rig2, the export bakes them in. Rig2 has none of the extra bones, so it converts in Mecanim perfectly, without all the extras from Rigify. You should be seeing forward motion if you moved the root bone on rig1. Hope that helps you an other blender users. Of course you do this without Rigify, you just need a root bone that moves, hence the name “root motion”.
get my Rigify blend on Blendswap