Isometric 3D Engine

Since Flash is not a 3D program by nature, I thought it would be a fun challenge to see if I could make a 3D engine. All the shapes are two dimensional but sorted in depth to appear as if they were 3D. Use the arrow keys to move and the spacebar to jump.

Click on the game to activate it.

The map info is stored in a multi-dimensional array and I created a function to translate 3D positions to 2D locations on the screen. The depth sorting system is a 3 step process that first chops the cube into 2D slabs, sorts those, splits each of those slabs into columns, sorts those, then takes indiviudal cubes from those columns and sorts those. This allows me to manage the sorting one axis at a time.

The biggest problem that I faced while creating this is that I can't physically see what is happening when all the sorting is occuring as compared to other projects where I can tweak something, observe its results, and tweak it again.