Search code examples
3disometric

Whats the best way to implement and design walls in an isometric tile game?


The game I am thinking about where this solution would be applied, is a game where tiles can be changed, sort of an editor. You are going to need to make graphics for 2 types of walls: west facing and east facing or north/west.

There seems to be 2 approaches to having walls in an isometric tile game:

  • Draw them slightly outside the tile (The Sims 1, Theme Hospital, Jagged Alliance 2, Project Zomboid)
  • Make them 1x1(tile) large and have them be drawn on their own tile (Ultima 8, every rougelike)

Example drawing

The second method seems to be the easiest way to do it. Since the wall takes up the entire tile, you need not to worry about overlap into the floortile and having to design patterns around that. You do get another problem though if you want to make patterns in a different size than the grid. Like if you want to have rather slim walls. Your grid will then also need to be larger. On the plus side only 1 wall piece is needed.

The first aproach requires some code to detect the variation off wall to draw and might look a little odd unless the floor tiles are designed around it. It also requires at least 4 pieces.

Which method is the prefered way to go about this and why?


Solution

  • I would go with the second option, having the wall take up a tile of its own. This is easiest to implement and requires less work on the artist's part.

    If you're worried about the ability to do thin walls, just ensure that your tile size is small enough. Your game's tiles don't need to follow the pattern that is drawn on the floor, e.g. a real-life floor tile could consist of 2x2 game tiles.