(Part of the Automatic Game Art project)
How shall we start making art for a side view game? Initially, we’ll take a tile-based approach. This is both easy to make, and very modest in demands for resources for rendering. Kind of arbitrarily, we’ll initially go for 64X64 pixel tiles. Of course, one of the advantages of automatic generation, is that later we’ll be able to use the same code to produce tiles of any size we want.
The concept behind tiles is quite simple: Instead of having a large image as a background, that has to be created for each level separately, and has to be loaded into the memory while playing the game (thus making the game more memory-intensive the larger the level is, becoming unpractical quite fast, at least without some creative techniques), the world is divided into discrete “tiles” – small, rectangular images that can be combined to create larger surfaces to make the full image. Some examples in classic games:
It’s easy to see that in each of these games, the platforms and walls are not drawn as full elements, but as a combination of small tiles.
For our project, let’s start from the most basic idea: A simple square:
Clearly, it’s not too impressive, but we have to start somewhere. A combination of many such squares can give us something that starts to look like a (very ugly) level in a side-scroller game:
We’ll come up with more creative tile types in the future, but for now, can we make the square a bit more interesting? First, we’ll add a little beveled border around it to get a 3D effect:
We have a basic tile to play around with. Now, we need a way to test what it looks like in a game. Our project is about art and not about game design, so we don’t want to spend too much effort on that, but to see our results in action – I’ve created a tiny little game engine that renders our art, with a game interface inspired by a little game called Frozen Fruits – A game where you play a little marble that constantly flies up and down the room, and moves left and right by your command. Here’s what our test engine looks like with our first tiles:
On the next post, we’ll try to make our tiles more interesting.