[whatwg] Web Applications and 3D

    I've been pondering how someone would have 3D graphics inside a Web 
application using current web standards and some in development (XBL2, 
HTML5, et cetera), and while I have a general idea, I'm not exactly sure 
how it would work.

    One method would be to give <canvas> a "3d" rendering context. This 
would solve some problems, but what happens when you want objects for 
your 3D world to exist in the DOM? What happens when you want 3D effects 
that change when you use a different stylesheet? Don't we need a method 
of including 3D graphics for styling that doesn't use Javascript?

    Let's look at possible solutions:

1) <canvas> - This requires you to manage your 3D objects in Javascript 
or some other scripting language. It also means defining a "3d" context, 
which could get complicated _really_ fast.

2) XHTML + CSS + XBL2 + X3D - This would allow the greatest flexibility, 
but it comes with a serious learning curve. Also, it wouldn't work with 
HTML.

3) HTML + "CSS3D" - The idea is to extend CSS to allow for 3D 
backgrounds and such. The trouble with this is that it's hard to change 
the 3D content dynamically.

    I'm leaning toward either 1) or 2). I suspect the second choice 
would be better in the long run, but what I don't understand is what a 
page using all these standards would look like. If someone is up to the 
challenge, I'd like to see someone come up with examples for the following:

1) A Web standards version of Microsoft's "Flipin' CD Button" example.

2) An example of something similar to Quake done entirely as a web 
application, with a HUD.

3) An example of a simple 2D GUI with 3D effects as a web application.

    Not that I'm looking for very basic proof-of-concept examples and 
not fully developed web apps. Any takers?

Received on Thursday, 28 April 2005 12:12:11 UTC