7 votes

How do I determine the draw order of isometric 2D objects occupying multiple tiles?

Here is a solution without resorting to 3D coordinates or splitting your sprite into 1x1 elements, that works if your objects occupy rectangular areas of tiles. Let ...
Lærne's user avatar
  • 1,065
7 votes
Accepted

In a 2D game with an isometric camera (like Bastion) do I need to create a new animation for every angle the player is facing?

You can always just use 3d models instead of 2d art (3d models don't neccessarily mean a 3d game). Apart from that, not much. You could mirror half of the sprites, but that may interfere with the ...
Bálint's user avatar
  • 14.8k
7 votes

How to convert 3D coordinates to 2D Isometric Coordinates?

You can represent the transformation between 3D world coordinates to 2D screen coordinates as a projection matrix: $$\begin{bmatrix} x\\ y\\ z \end{bmatrix} = \begin{bmatrix} X_x & Y_x & Z_x &...
DMGregory's user avatar
  • 130k
5 votes
Accepted

Is it a good idea to use per pixel collision detection in an isometric game?

The problem with per-pixel collision detection is that 1. it can be very slow and 2. your graphic design can have a lot more impact on your game mechanics than you would like. It is usually better to ...
Philipp's user avatar
  • 118k
4 votes
Accepted

Are the same number of tiles displayed in an isometric game regardless of phone orientation?

In a typical isometric-style projection, tiles are roughly twice as wide as they are tall (depending on whether you're using true isometric or its close cousin often used in games, the 2:1 dimetric ...
DMGregory's user avatar
  • 130k
4 votes

Are the same number of tiles displayed in an isometric game regardless of phone orientation?

This is a square grid shown using an isometric projection: Note how it's wider than it's tall. In fact, even if the grid was a rectangle with unequal sides, it still will be wider than taller, due ...
congusbongus's user avatar
  • 14.8k
4 votes

Isometric Tile-Based Pixel Game Code Structure

2D It is normal for 2D games to have these drawn and ordered / overlapped by code (loop), using e.g. the painter's algorithm. However, there are special conditions for constructing complex isometric ...
Engineer's user avatar
  • 29.3k
4 votes
Accepted

Deriving shadow position from a 2D heightmap

You can associate a "shadow height" with each cell on your map. This is the elevation something would need to have above 0 / "sea level" in order to rise out of the shadow and into ...
DMGregory's user avatar
  • 130k
4 votes
Accepted

How can I fit these isometric tiles into a TileMap?

It appears that the width/height ratio of your tiles doesn't match that of your Grid component. Go to the Grid component of your tilemap and set the cell size accordingly. When your tiles are 1024 x ...
Philipp's user avatar
  • 118k
3 votes

How to code a multi level isometric map?

One approach to a multilayered map would be an array (or 2-dimensional array) of linked lists or vectors holding tile objects. So your tile struct would either hold a pointer to the next tile above it,...
Salajouni's user avatar
  • 154
3 votes
Accepted

Isometric 3D grid - what order do I render elements in the grid?

What is the problem? Generally speaking, you want to do a topological sorting, where the nodes are your bricks and the edges mean "is this node behind that other node" relationship. So all you need ...
EnoughTea's user avatar
  • 2,545
3 votes
Accepted

Can I use physics in Isometric map based games?

The answer is YES, You may set the gravity vector to (0, -some number) for this purpose, your code which multiplies the g scalar with sin and cos of 45 degree will be true if the Sprite Kit physics ...
Rassam's user avatar
  • 58
3 votes
Accepted

How would you design a transformation matrix to project absolute coordinates to any orthographic projection desired?

I'm going to make some assumptions... Your 3D world coordinate system is left-handed, with the y axis pointing up in the world. You want to convert to camera space, where y is up on the screen, x is ...
DMGregory's user avatar
  • 130k
3 votes

Pathfinding in Isometric Phaser with Tunnels

I disagree that you have to have a 3D map for this, and depending on how far along you are and how you implemented things, it might be a lot of work or bring other problems if you try to convert your ...
Christian's user avatar
  • 2,067
3 votes
Accepted

Calculate position on Isometric grid

Looks like you want: ...
DMGregory's user avatar
  • 130k
3 votes
Accepted

Constraining an orthographic camera to an isometric world

Restrict only camera viewport centre to ground plane You can find the working Unity project containing this code here. ...
Engineer's user avatar
  • 29.3k
3 votes
Accepted

Why do my sprites jitter when moving diagonally?

With out code, this might be hard, but if I had to take a guess, your sprites aren't gittering, your camera is. I suspect you are moving the camera either to the exact x or y position both when ...
Krupip's user avatar
  • 1,713
3 votes
Accepted

Isometric projection, calculate camera angle for specific tile height

What we want to find here is an angle that foreshortens the depth axis of your plane to your target height:width ratio \$\frac h w\$. If we chose the angle 0°, we'd be looking parallel to the depth ...
DMGregory's user avatar
  • 130k
3 votes

Isometric ordering issue with moving entities taller than one block

Usually we would sort objects by their ground position. In fact, we can argue there are two orders: Sort objects by their ground position, back to front. Sort object by their elevation, bottom to top....
Theraot's user avatar
  • 24.5k
3 votes

How do I smoothly connect isometric tiles at different height levels?

I looked at this old question here: How to create tilted (height) isometric tiles. but I can't understand the solution of "shearing to the right, then rotate by 45 and scale in height". The ...
Isikyus's user avatar
  • 31
2 votes
Accepted

How should I set camera in Blender for example to render a sprite which can be used in an isometric map?

Well, the problem was that my sprites size weren’t a multiple of 32 so the scale and the geometric calculation were not as accurate as I expected to be. Theoretically it had to work! But it didn’t. I ...
Iman Nia's user avatar
  • 414
2 votes

Fastest way to render isometric world with moving entities?

From my own experience, I've found that using the sum of components (x + y + z) is a very good measure for sorting entities in an isometric scene. It doesn't perfectly represent the distance your ...
Bartvbl's user avatar
  • 121
2 votes

Traffic system in isometric game

The simple solution would be to just have each actor calculate the ideal path using A* and then stick to it. Implement each lane of a road as a first-in-first-out queue. The edges in your A* graph ...
Philipp's user avatar
  • 118k
2 votes

How can I use a data grid to make an isometric turn based game in GameMaker?

Using a data structure to save level data is a good idea, as there are many games using voxel engines to deal with this kind of information. A voxel engine is essentially an engine that stores level ...
liggiorgio's user avatar
  • 4,577
2 votes
Accepted

How to handle angles in an isometric game?

Keep your world coordinates, movement, and rotation on a standard X/Y coordinate grid (like your leftmost image) and then convert those coordinates to isometric coordinates via linear transformation ...
Sandalfoot's user avatar
2 votes

Isometric map black screen

There are several options: Have a non-scrolling background image which is more attractive than just pure black. This might make the game appear a bit more abstract. (example from Disgaea D2) Add a ...
Philipp's user avatar
  • 118k
2 votes

Calculate length of isometric line

Assuming a 3D object is projected with isometric projection, it becomes a bit smaller in screen coordinates, no? Maybe not quite the way you think, if you're using a true isometric projection. "...
DMGregory's user avatar
  • 130k
2 votes

Libgdx texture bleeding in tile map

If you're getting transparent edge pixels, it sounds like you haven't enabled duplicatePadding. Just to be sure, these are my recommended TexturePackerSettings: ...
Niall Quinlan's user avatar
2 votes

How to get surface position from 3D objects in 2D space

Usually, you would specify a shape or mask that would serve as that object's "physical area", so to speak, with which the other objects in the world can interact. I haven't used Pixi.js, but it seems ...
Domagoj's user avatar
  • 216

Only top scored, non community-wiki answers of a minimum length are eligible