Schein is a challenging puzzle platformer built on the myth of a wisp named Irrlicht. In this ingenious game light is the key to everything: Defeat deadly beasts, solve tricky puzzles and uncover hidden paths through the murky swamp.
Continuing from our recent report about modelling, this week our animator and level designer Michael explains how he goes about animating our main character.
Posted by ZeppelinStudio on Mar 26th, 2013
Posted in Animation | Mar 26, 2013 | by Michael Benda
Our Artist Philipp Schürz already wrote about the art of modelling. It is a huge task to combine compelling art and inflexible mechanics into a single piece of work. On the one hand the model has to be visually appealing and fitting to the overall art concept, on the other hand the artist has to ensure technical accuracy and plan ahead for the animator’s demands: e.g. the protagonist must be modelled in a neutral pose, allowing the animator to transform the model into any other pose required afterwards. Also additional vertices (edge loops) along joints have to be included, to allow a smooth bending of the model and reduce the distortions that may occur otherwise.
As soon as the modelling is done and the team approves the result, my job begins. It consists of two parts: rigging and animation.
3D modelling software usually offers a vast variety of tools to help you with the rigging process. Still it can be a huge pain when not done correctly, and is often the main reason for problems and sleepless nights, if those errors don’t reveal themselves until half of the animation process is already finished.
Simply said, one just has to prop up the model with a skeleton and associate each vertex of the model to a joint. Thus, when the joint gets modified the transformation gets propagated to the respective vertices. As long as one keeps in mind to create a simple hierarchy and clean initial joint transformations, as well as the implications of inverse kinematics and the extreme poses one wishes to achieve, everything should work out well.
With this skeleton made of bones and joints one could already start the animation process. And if it is supposed to be a simple model with a short animation, that is what I do. But as soon as you aspire more than that, I warmly recommend to make your life much easier by adding additional features to your model. Instead of rotating each joint separately you can create special objects to serve as control handles, or controls. You connect the transformations of the controls to specific joints, IK handles or other values by using constraints. Now those controls allow me to have simple access to complex actions of our protagonist. Bending down requires a transformation of only a single control object; for looking in one direction while hopping up and down and doing turns and twists, I only have to put one control handle in the right position.
Finally there is the animation process. The two methods used most frequently are the straight ahead approach and pose to pose animation. By using the first concept you create your animation chronologically starting at the first frame. This allows the animation of more fluent and flexible movement, but is also limited due to the lack of control over accurate timing. Since timing is a big issue in the game flow, I prefer the pose to pose approach where one creates fixed key poses for the animation and afterwards fills the missing frames in between. E.g. I use following four poses to animate the run cycle of the protagonist – contact, pass, up and air.
After the key poses are set, the 3D modelling program can usually interpolate the frames in between. But since most of the time this leads to unnatural motion – like feet that move magically through solid ground or knees twitching back and forth (knee popping) – most of the time needed for the animation process is spent tweaking the result until the model fits the expectations.
But once all the fiddling is done the click on the export button can be pretty rewarding.
PS: Don’t forget .. DON’T FORGET to save your progress BEFORE clicking on this particular button…