One of the first larger undertakings I was tasked with at Zero Point Software (the studio developing Interstellar Marines) was upgrading their character animation system to use Unity3D’s Mecanim. I would eventually end up having completely rewritten their character animation system and a character stamina system as well as a fully dynamic and physically-based swaying/bobbing to the weapons, causing them to behave differently based on the stamina and react naturally to perturbations of the character.

In the video above is Paul, the producer at the time, demonstrating and talking about the stamina system I created for the character controller. It also nicely demonstrates the state of the character controller itself and how weapon, camera and character animations look from a first person perspective.

 
 

Update video 10 features the crouch & jump system I created:
 
 

Update video 9 demonstrates the new animation system and fully dynamic and physically-based weapon swaying/bobbing. This is the point where we transitioned from the Unity3D’s legacy animation system to Mecanim, in connection with which I rewrote most of IM’s existing character animation system:
 
 

The next is a tutorial that might add a better sense of the crouch system
 
 

Lastly, here’s a community member, PepperBelly talking about the weapon handling. The tweaks he is talking about are not mine, but the underlying system that enabled them is my creation. In fact, this is a good example of the sort of challenge I enjoy a lot – the whole weapon handling is an economy of a lot of different numbers and influences (stamina, breathing, character motion, and influences from animated values such as bobbing and “aim down sight”) coming together in emergent behaviors that are appropriate to whatever situation that may be given, no pre-made animations here!
 
more