Howdy!
We have just finished experimenting with some root motion stuff, and after doing so found that we really wanted the fluidity it gave with animation in one of our projects.
We are in the process of converting our animations to the root motion stuff (i.e. move the root forward by the amount the character moves) All was fine until we hit a road block.
The issue was the feet would slide across the floor rather than stay in one spot. We experimented for a while, and we did find a few promising alternatives, unfortunately, they all had pretty major issues. A primary one was to re-do the all the animations for Different reasons.
That's when I sat down with the animation with the original (moving the root away from the origin) to find out what the cause of the issue with the feet sliding was. The feet should be on the ground, and not move position, at all (so moving the feet to the aprox pos wouldn't work). Simple right? just copy and paste the keyframe from where the foot is on the ground, to when it leaves... the foot doesn't move. Great right!?
Well, no. π Although the foot doesn't move, it doesn't move in local space (relative to the root), but as I am moving the root it moves in the world space. It seems copying the key frame Copies the co-ords in local (parent?) space not world space, no matter which space you are viewing in the tab (Axes tab).
TL;DR
If you copy a keyframe when looking at the skeleton in world space, it will copy the transforms from local space.
However, when you copy the transforms of a bone (pressing ctrl+c on a bone) it will copy the transforms of what ever space you are in.