The guys from London-based Mudvark asked me if I was interested in making a strategy game with them, creating all the 3D assets like buildings, plants, landscapes; basically the stuff that I’ve been creating (with gigabytes of love) anyway. How could my inner nerd say no?
Water Works was to be a little educational game for iPad and Android tablets, made specifically for schools in the US (I do hope I got these details right) and was commissioned by US-based Amplify. It takes some cues from games like Sim City to teach the students about the workings of water systems.
It’s been a while since my part of the work was completed, but it took ages to get all the bugs ironed out (I suspect there’s a sizeable heap of emptied red bull cans outside of code-wizard Adam Green’s studio). Now, the game is close to getting released and I can finally share some of the behind-the-scenes extras. Also, with the new Civilization (set in the future!!!) being released I imagine my life as I know it will be over this fall, so whatever I can post I’ll have to do so before then.
There’s a bunch of stuff to talk about, which I’ll do so in manageable chunks, kicking off with the basics: the environments!
The desolate monolith desert would feature gaps in the earth's crust that could act as steam vents.
I can honestly say I’m pretty embarrassed about these concept sketches. Using Photoshop as a painting tool has never been my strong suit, a fact I did warn the guys at Mudvark for. The mix between the hand-drawn lines and the flat planes of color doesn’t hold up very well, I think. And when you look at some of the insane concept art and speed painting works out there on the web, well… I also thought I had a great system figured out by drawing the trees and foliage separately so I could copy and stamp them about later. It gets the point across, but it does look a bit awkward.
A ridiculously failed attempt at doing a sketch in Illustrator. I guess I'll stick to vectors in 3D from now on.
Patches of colored moss, chunks of ice and frozen animals would populate this tundra-like environment.
In order to keep the tablets' processor stress to a minimum, water particle effects, puffy clouds and mist were kept out of the final game.
When I met up with Mudvark's Henry Hoffman and Dan Da Rocha in Amsterdam to talk things through, it wasn’t very clear yet how close to reality the game would have to look. I believe it was over a pancake lunch that one of the guys said: ”Yeah man, you can totally go freaky with the landscapes, the water physics will be realistic anyway”. Or maybe that was when we unintentionally landed at a coffeeshop (in our defense, it did look more like a fancy lounge bar, so I guess Amsterdam tourist traps work even on me).
The requirements of the landscapes weren’t all set at this point, only that they needed to have some elevations, so we could work with guiding the water up and down hill, and some water sources. Different landscape types would allow for differences in scenario gameplay. Some initial concepts were a bit ‘too far out’, like the monolith desert or the large chunks of ice with frozen animals. And we hadn’t pinned down the specs of the tablets yet, so I put together some animals that could perhaps roam around the screen, just to breathe a bit more life onto the screen. Sadly, they had to go.
Above: style renders of the seasonal variations. In this case from top to bottom: summer, autumn, extreme summer and winter. No more patches of moss with tiled textures, but colored polygons adds some nice variations to the ground and could be different kinds of moss, grass, etc.
The idea for the landscape types got changed a bit; we’d use seasons per level instead, which meant only some minor rearranging of the flora and color schemes. A more important aspect of the environments was the landscape elevations, which needed to be fixed early so that the coders could start working on a pathfinding system for laying down the pipes over the slopes and between the structures. We decided to make the slopes go over 1x1 grid squares at a 45 degree angle, instead of variable angles, to make the pathfinding system easier. That meant that all the slopes would look rather uniform in their basic setup. By alternating the plateaus and adding some geometric details we could make it visually more interesting.
An early test for the slopes by Henry.
Slopes spread over full and half grid squares, a system we didn't choose in the end.
One of the first mockups for getting a more clear picture on the whole landscape, with a town, some trees, and the bumpy slopes.
I don’t use textures in my models; instead I prefer using the objects’ geometry, in combination with the lighting, to create shades and shadows that give depth to the image. For the slopes and cliff walls we could allow some more defined geometry to make them look a bit more interesting, but using such a complex geometry as a collision mesh would be too processor intensive. Instead, Mudvark’s Rhys Thomas modeled a separate simple collision mesh that the pathfinding system could use. While that was implemented in code I could work on the visible geometry and we could save some time doing this in tandem. Also, doing iterations on the collision mesh was a lot faster because of its simplicity, so the coders could lock down any edits more quickly and didn’t have to wait for me to finish my work.
Above: a simple collision mesh and underneath the more detailed landscape geometry mesh for level 4. The colored grid squares were just to indicate where we could place certain structures.
The 1x1 grid was kept throughout even the flat plains because of the borehole buildings. These structures can be used to access groundwater, which has a radial effect for a specific distance, visible from one of the viewing modes. In the initial landscape meshes, like in the above image, I didn't take this into account and as a result the colored vertices didn't show up nicely. With the 1x1 grid we could evenly color the vertices to indicate water presence, which not only looks good, but works well with the tablets' processors too – awesome!
Modeling level 1. We hadn't implemented the borehole vertex system yet, so here the landscape mesh was modeled freely and only the slopes adhered to the grid. The white lines indicated the collision mesh
There's lots more to share (including an introduction to two more valuable team members on the project), so in upcoming posts I'll show some work on the other environment assets and, of course, the buildings.
To be continued…!