I am making a tile-based strategy game which i plan to have 2.5D visuals in an axometric/isometric fashion.

Right now i'm programming it's logic and rendering it as a literal 2-dimensional array (perfect squares, like an isometric top-down-view).

In short, i have something like this:

Isometric Top-Down Grid

And i want to turn it to something like this:

Axometric Grid

Do i keep going on the 2d-array logic?

Is it all just a change in rendering behavior, as i'm thinking it is? or 2d-array is the wrong approach for my objective and I should change before it's too late?

What are the ways of doing it, anyways? How should i apply the 2.5D axometric/isometric view (45º rotation to the side, and 45º rotation upwards)?

  • 5
    \$\begingroup\$ See @JohnMcDonald's answer to this question as he sums it up well. Essentially, yes, it's just a change in rendering behavior. \$\endgroup\$ – MichaelHouse May 31 '12 at 21:25
  • \$\begingroup\$ Thanks very much, @Byte56. This is exactly what I was wanting. Bad thing the question's title there is on collision detection; It made me skip it when I searched for previous question's solutions. \$\endgroup\$ – XenoRo May 31 '12 at 22:59
  • \$\begingroup\$ Well I think your question has created the link that future visitors may need then :). \$\endgroup\$ – MichaelHouse May 31 '12 at 23:01

Yes, that's exactly what you should do! Only a few days ago I answered another guy, suggesting him such logic here: Free movement in a tile-based isometric game

This is a simple MVC approach. Keep your model and controller simple, every 3D game with objects on flat surface with same height and on same height is really 2D underneath it's view.

  • \$\begingroup\$ MVC is a burden for such a simple case, it's not even suitable for development of non-web applications. -1 \$\endgroup\$ – luke1985 May 28 '16 at 13:14
  • \$\begingroup\$ I'm not suggesting using a MVC framework, just dividing different layers of the app. Where did you get the idea that MVC is only for web? Thanks for giving the reason for -1. \$\endgroup\$ – Markus von Broady May 29 '16 at 14:26

A good example with pictures using libgdx was provided in libgdx's blog Isometric Tilemap Rendering with libgdx


Yes, isometric maps are just rendered differently. For the game logic it makes no difference what kind of angle the coordinates have.

Isometric rendering is similar to the rendering of square tiles, the difference is just how the tiles are aligned (how the drawing position is calculated).

Instead of drawing tile x,y at

x*tileWidth, y*tileHeight

they are drawn at

tileWidth/2*x+tileHeight/2*y, tileWidth/2*x+tileHeight/2*y

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.