And thing is, here's another case (There is no right wall in 1,0,0, it's actually a scenery at 1,-1,0, but imagine there actually is one. I just couldn't find an example with a right wall, but if it'd be there, it would work just the same way.) Anyways, as you can see, in this case, we must draw 0,0,1 here after our agent, which is either in 0,0,0 or 1,0,0. However, agent must be drawn after walls in 1,0,0 and ground in 1,0,0, so the agent must be drawn in 1,0,0 So in this case, draw order is: ... 1,0,0 ... 0,0,1 Which leads me to believe this cannot be handled in our current tile engine. I think we will require a proper z-level algorithm that draws everything as it would in a 3D game - object after object, based on which object is in front of which. And when drawing limited by layers (like, up to layer 3 or only layer 2), it would just skip objects not belonging to the limit.