As part of a group, we created a real-time animation engine that allowed the user to move a model around and perform actions.
In the motion-capture studio we recorded a number of actions to map to our skinned 3D model. The recording was then cut up and processed into walk, run and idle cycles, as well as the extra action animations. As the player-character moves around and stops these cycle animations play automatically, while the actions are triggered by the user. Changing from one action to another results in a smooth blended transition between the two, using spherical linear interpolation.
The parts of the engine I was responsible for were the frame timing/selection, tying the locomotion to the animations and blending between animations.
Extra acknowledgements: Fellow team members Fabio Franconeri, Thomas Manning, Kester Sheridan, Murari Vasudevan