There's been a lot of hype lately about famo.us, a javascript framework that claims to have solved performance issues in HTMl5. Famo.us gets its performance by heavily using "matrix3d" CSS property to allow positioning, rotation and alignment of elements by means of applying a 16 cell transformation matrix array onto these elements. Matrix3d is also one of the few CSS properties that reliably invoke GPU acceleration in the browser. You can see some demos of the framework @ http://periodic.famo.us and http://famo.us/demos/.
But there are alot of things that famo.us cannot do - one of them is rendering real 3d models. Reason for that is that famo.us relies on divs as its core building block, and divs are, by design, rectangular. To create a 3d mesh with famo.us, you'd need to create tons of tiny divs, positioned to create an illusion of a 3d object. Each one of these divs would need to have a matrix3d transformation applied to it. That quickly becomes extremely hard for a browser to render.
There is, however, a web technology that can do it much better. Its called WebGL, and it's been around for a few years now. WebGL operates completely differently from the way famo.us does. It, instead, relies on HTML5's canvas tag and its also GPU accelerated. Because it uses canvas, which is basically a pixel based drawing board, it's much more flexible in regards to what it can display. Downside is that you can't use any of html elements we are so used to. For example, if you want to create a text input, you'd have to create (or use) a class that actually creates one my means of canvas. You can check out some examples of WebGL @ http://threejs.org/examples/.
And now, Apple has made and announcement that webGL is coming to the iPhone near you. What do you think that means for things like matrix3d and famo.us? Would this prompt more developers to use webGL? Or would the two technologies compliment each other?
Disclaimer I work at Famo.us