Using the power of WebGL and some JavaScript Chris Milk, the US music video producer and some smart friends of his at Google have created some impressive visuals that play in real-time within a web browser without needing any plugins. These stunning graphics use the next round of HTML5 features that are sweeping across browsers now.
WebGL was originally an experiment started by Vladimir Vukićević at Mozilla and has grown to the point where it’s now ready to take flight and is being added to browsers such as Firefox, Chrome and Safari. It’s a very rich JavaScript API with DOM support that’s based on OpenGL ES 2.0, the same API used by modern iPad and iPhones which is great because iPhone developers should feel right at home with shaders and framebuffer objects.
Currently WebGL has been added to Safari nightly builds but it hasn’t quite hit the main release yet so if you’d like to explore these demos you’ll need to fire up Google Chrome, alternatively check out the video on the tech side of the ROME site. I feel the most impressive demos of this technology show off lighting of a finely textured surface by way of normal mapping, in this case using a 3D bust and an implementation of the Marching Cubes algorithm to create metaballs.
Already, there are some interesting developments with this technology such as a web version of id Software’s Rage so it will be interesting to see what developers imagine in the coming months. That’s quite impressive for a scripting language that has it’s origins in DHTML!