Shared publicly  - 
 
Some notes on WebGL's future, along with a tour of some of the best WebGL wizardry.
78
24
Gavin Ovsak's profile photoRakesh K's profile photoSandy Ressler's profile photoCyn Skyberg's profile photo
19 comments
 
Cool. The key is the hw acceleration support. This has been the big issue with VRML.
 
Thank you for the call-out on the podcast and my Three.js tutorial :)
 
People were trying so hard to do this almost 20 years ago. I suppose the technology wasn't really there.
 
Technically nice, but it won't catch on for the same reason flying cars won't.

We suck enough at doing it in 2D, you want to try it in 3D instead?
 
In the heyday of Virtual Reality, people imagined the whole Web would go to something like this, and we'd be doing our jobs and all our browsing in a Gibsonian cyberspace. Which is obviously stupid; that's a terrible user interface that would just get in your way most of the time. But sometimes, 3D actually lends itself to some presentation or interaction.
 
+Andrew Berg I was working with 3-D immersive VR back in the mid-90s  (and have a bunch of bar stories that involve SGI InfiniteReality graphics cards and US Senators :).  So I'm totally sold on the idea that there's niche uses for 3D.

But for websites in general?  We have enough trouble designing websites that look the same in 2D on all browsers, and still haven't figured out how 2D plays with mobile devices.  It's unclear whether 3D buys you enough for general web browsing to make it worth the effort (especially considering that until it becomes ubiquitous, you still have to have the 2D version of the page).
 
+Valdis Kletnieks I'm not trying to do it in 3D, I'm already doing it in 3D :). So are many others. I'll also be speaking at JSConf on the math behind WebGL.

Once upon a time, the idea of building a dynamic site out of HTML/CSS was just as daunting. We built tools to make it less so.
 
+Valdis Kletnieks actually, this may fix the 2d cross platform issue; kind of like flash did in a way. If there are a few frameworks that render html in a flat plain inside of a canvas, or inside of webgl. This creates a virtual browser of sorts. Then developers that use those frameworks to render their designs, will be guaranteed consistency across browsers. The rendered result can and should look like any rendered site, at first; but I'll get to that later.

This also allows framework designers to attempt better standards compliance with less limitations. This might even fix the DOM issues that developers bump up against; they could build a more optimized dom, or fix it.

I'm not saying it's going to happen, but I know plenty of javascript coders who are already moving to using canvas for layouts instead of dom.

Once that move has been made, to the 2d plain in 3d space. Then we can take our webgl browser and move it into more interesting spaces. That's when things get fun for me.

Now imagine this running on a chromebook, or the new firefox driven distro out there. These are geared directly towards the web and a combination of webgl and our browser could give better OS contextual switching between browsing and an app or game.

Just food for thought.

Also, VML kind of sucked back in the 90's.
 
+Michael Christenson II The main problem with virtual browsers is that they don't perform great on mobile devices. CSS3D is the way to go there, and mobile devs tell me that "position absolute all the things" is the key to fluid graphics.

However, because CSS3D is just another way of looking at GL, it is quite easy to synchronize it with WebGL, like this:

Demo: http://www.emagix.net/images/portfolio/academic/mscs-project/code_projects/projects/webgl-three-css3-sync01.html

http://www.emagix.net/academic/mscs-project/item/camera-sync-with-css3-and-webgl-threejs

You get the best of both worlds: mouse picking and keyboard interaction remains native, even on 3D surfaces, but you can draw anything you want behind it. You don't get true 3D stacking of course, but it's less of a problem than it seems.

And indeed, VML sucked, and so does the recent attempt to resurrect it with XML3D.
 
I completely agree with you; though I think eventually they may merge as browser developers get tired of keeping an artificial barrier up.
 
Well on mobile it's not so much an artificial barrier as it is a necessary step in getting the performance needed. CSS 3D and CSS animations are very nice for the intended use cases, which is mostly transitional and background effects. Graphics designers on a team love being given a sandbox to play with and prototype ideas in. The coders can come in afterwards to optimize it.

It's also tempting to think you can do keyboard input, text rendering, scrolling and gesturing on your own, but the modern UI is really not a simple thing. Better to use the HTML-layer for what it's good for...
 
Your website is beautiful and so educational! I love it
 
For a university type course, there's a free course on Udacity
 
Although not exclusively WebGL I  post pointers to useful WebGL and other 3D on the Web technologies and demos at a Flipboard Magazine at: http://flip.it/AwNcN
Add a comment...