HTML5 Canvas Element with 3D Graphics

I’ve been toying around with the idea of using the HTML5 Canvas element for Feralor. I’m not sure whether this will be a replacement for the top-down 2D interface I had originally planned, or if it will be an additional interface that people with a more feature-rich browser (and more CPU) could use if they choose. One of my design criteria for the game is to make it work in the largest possible number of browsers without any plug-ins, so I’m leaning towards the “additional interface” path.

At any rate, one of the things that I needed to wrap my head around was implementing some kind of a 3D graphics engine with the Canvas element, which currently only supports 2D graphics.

Well, I read some information on Wikipedia about 3D projection and converted some of the information there into a functioning 3D Canvas demo. Of course, the example requires a working HTML5 Canvas implementation, and as such it will not work in Internet Explorer until at least version 9. Have a look:

Tim’s HTML5 Canvas 3D Graphics Implementation