Run Postman Run – Animating the postman
Digital animation is really important for games and is something you shouldn’t take lightly, a misstep and your character will look like he/she is having a spasm and not doing a subtle look around for an idle cycle.
Although digital 2D and 3D animation techniques share the same principles, in the practice they can be quite different, there are even specialized software packages for each. Usually digital (that is, no traditional frame per frame drawings) 2D animation relies on vectors while 3D animation relies in polygons.
2D software like toon boom uses a technique called cutout, where the character or puppet is made up by a hierarchy of vector objects like a foot, an eye, the mouth, an ear, etc; whereas 3D software uses a geometry controlled by a hierarchy of bones.
You can make cutout animation in a 3D package with some limitations, and that’s what we decided to do in the first prototypes for Run Postman Run. Why? Because we already felt comfortable with Blender, the 3D package we’ve been using for years. We felt it wasn’t worth to start using a 2D package when we could get similar results with Blender. Besides, we can’t afford to pay for an expensive software license, specially if we’re not sure if we’re using it again.
For the first prototype there were going to be three different ages with their respective postman and dog: prehistoric, present and future. The design for all three postmen and dogs was going to be very similar, so we could reuse the animations (at least partially).
After having the final designs, the next step is to separate them in the parts that are going to move.
In the 3D software (blender for us) each part corresponds to a plane with the image mapped on it.
Finally, a bone system is created to control the animation.
This rig may be more difficult to set up than a 2D rig, but allows us to take advantage of all Blender animation features, even the possibility of combining 2D and 3D animated objects. One of the greatest advantages of this approach was that reusing the animation for the other two postmen was really easy, we just had to change the parts and make adjustments to each animation, way faster than animating each action from scratch.
Once finished, the animation is exported in frames, this is one of the cycles created for the prototype, for when the dog bites the postman:
here is the final result, a sequence of all the actions:
The project then took a very different direction, instead of an always running cartoon postman, the setting was going to be a steampunk city full of dogs, not just one. The postman was going to move like a ninja and use skills and crazy weaponry. The game mechanics were still 2D, but the postman and dogs were going to be 3D and rendered in real time instead of exported image sets.
Now we had to animate the postman as a 3D model and export it to the engine. The complexity of the animation incremented dramatically, from 7 actions in the 2D version to 27 in this one (if you look closely the image the actions list can be seen at the left side).
The setup now is a lot more complex, particularly for some actions like when he’s hanging from a wire using his hands or when he grabs his flute from his backpack and put it there again, since these actions require multiple bones IK/FK switching.
Other actions, like the run cycle, are way easier to animate.
Other parts of the rig used simpler bone constraints to achieve different effects, for example; if you see at the postman design you’ll realize his shirt is so long the part under its belt moves freely. We needed this part of his shirt to partially respond to the hip and the lower back movement. You can see part of the rig in the image below:
Well, that’s it. That covers a lot of our rigging/animation work in a very, very, superficial way. Hope you enjoyed. If you have some question just contact us sending a mail to email@example.com
Run Postman Run is right now on Steam greenlight! Help us get there: