Postmortem (Graphics) – The Ghosts You Left Me

Here’s a bit of a look at how the graphics for The Ghosts You Left Me progressed.

[Timelapse video here]

Graphics-1

1. I first worked on the cryo pod, as this was the main point of interest for both the room and overall storyline mechanic. First I gathered some reference images of various cryo pods, abandoned rooms and sci fi rooms. The cryo pods ranged in shape from very rectangular, “industrial” looking ones, to curved and slick sci-fi ones. I settled on a look between the two, with a cylindrical shape as the base and form added around it with hoses and random-shapes-that-would-theoretically-do-fancy-medical-stuff. It took a good while to come up with the initial door shape in 3ds Max, I basically started all over twice after not liking what I came up with. Finally it started to take shape, and I played around with some bits of infrastructure around it – namely, the walkway. After a little bit of playing around I decided I liked the thought of the entire walkway floating in a large, tall room. I duplicated numerous cryo pods around and thought it made the room look much more interesting, rather than having just one. The room started to take shape just from trial and error and after about three hours or so I ended up with the mesh ready to import into Unity.

Graphics-2

2. Now the mesh… into Unity… fairly straightforward. Here’s how it looked on initial import with nothing changed. Some incorrectly flipped normals here zzz!

Graphics-3

3. I then went and added materials to all the objects. Seeing as I was limited on time, none of my models were going to be unwrapped, and I instead used simple diffuse/specular materials and relied on the lighting and particle effects to make them look nice. In the end these simple materials were actually enough to give the atmosphere that I wanted. Textures would ONLY have worked if they were done well, and in the time frame available that’s not really possible for me at my current levels; I think sub-par or standard textures would have actually detracted from the overall aesthetic. Either do it simply, or do it well – is my usual motto.

Graphics-4

4. I then briefly played around with some lighting – this is just using a standard directional light. The light coming in from the ceiling windows looked quite nice. It started to look quite dark (P.S. On the Ludum Dare blog it’ll look wayyy darker due to the white background around it… but full screen it’s not as bad)… but I thought this felt more natural somehow. It was an abandoned, empty room essentially. You had to feel alone, and it felt more realistic to have a minimal light source. At this stage it was starting to come together however it didn’t feel quite right yet, until…

Graphics-5

5. I started baking the lightmaps. This made the scene a lot more natural, in my opinion, as the previous lighting had all kinds of specular reflections which wouldn’t be there in real lighting. Now I’m actually quite a noob at this and it took a good few attempts at baking (slow zzz) until I got something I was okay with. Unfortunately I still don’t know how to get the lightmaps to be higher quality, as there is a lot of banding and low resolution artifacts in the final lightmapped scene which is quite noticeable. Still got a lot to learn. Anyway, the effect of the overall final scene was a combination of this lightmapping process in addition to some particle systems I added to give the room some dynamism and a bit more mood, instead of being completely static.

With regards to performance, this scene was actually not as bad as I thought it would end up (based on the naked eye, I did not run profiler or FPS tests) and webplayer compression did such a treat on the large lightmap sizes; however in a real deployment where I have more time I would definitely try to optimise things like the particle systems and the lightmap resolutions. The meshes themselves weren’t too bad with their poly counts and the room is quite minimal, but the objects could probably still be joined and batched.

Et voilà! There’s one I prepared earlier! :)

Hopefully this was interesting to some of you. I will be posting up more postmortems on the other aspects of development in the coming days.

– Camille

Tags: postmortem