A couple weeks ago I gave a talk at Toronto SkillSwap on our process for making and animating the 2.5-D characters in Lovers in a Dangerous Spacetime, and I thought I’d post some of the things I discussed. I’ve always been interested in the mushy space between 2-D and 3-D (when I worked in animation I got to make this secretly-3-D watercolour bank commercial, and had a hand in the early dev of the 2.5-D kids show Justin Time) and for me, finally being able to throw code into the animation mix has been one of the most interesting parts of game dev. (And just a note–“2.5-D” can be used to mean all sorts of things, but here I’m taking it to mean using a 3-D pipeline to create a mainly 2-D game.)

We’re using Unity to build Lovers in a Dangerous Spacetime, so everything is made of polygons–though most objects are just transparent textures mapped onto simple planes that face the camera. There are no lights, we just crank the ambient light all the way up. We’re handling assets in a few different ways, evolving our process as we get more comfortable with the engine.

Player - rig

THE PLAYER CHARACTERS

The main characters are a bit of a time capsule from our early prototype, before we learned animation scripting in Unity. The characters are first animated in 2-D using After Effects, and then the animation frames get rendered to a sprite atlas texture (a big grid of all the animation frames). In Unity, each character is made of a single plane, to which we assign the sprite atlas texture. The plane only displays a zoomed-in piece of the texture though, and we can show different frames of animation by changing which zoomed-in bit of the sprite atlas texture is displayed.

Player - rig

Player - sprite atlas texture (unfinished)Player - gameplay

// More