WebKit adopts WebGL E-mail

It's great to see that Apple is leading the way, improving the HTML 5 experience by adding WebGL support well before I'd expected it to show up.

At this stage it's only in the development version of WebKit, however the future looks bright thanks to the intense competition between the major browser vendors, as demonstrated by the recent and ongoing Javascript performance wars.

One of the long standing problems with desktop PC games is that they are usually written against a specific operating system (ie. Windows), which leaves everyone else out in the cold, promotes lock-in, and leads to all sorts of nastiness like installers spewing files all over your system and not cleaning them up at uninstall, DLL version issues and conflicts, massive patches before you even get to play and crashes that bring down your entire system to name just a few. It was for this reason that I gave up on PC games and moved to the Wii and XBox 360 instead.

It would be remiss to overlook Flash as an alternative to traditional PC games, as it had the potential to free users freedom from the previously mentioned issues. Flash offers a device independent platform for games and interactive media. Unfortunately, as Flash is proprietary, it wasn't until recently that Adobe actually began to deliver Flash for platforms besides Widows, and even with Adobe's change of heart, Flash is a buggy resource hog that is insecure and is now being actively exploited by hackers, providing yet another back door your into operating system that the vendor has no control over.

Enter WebGL

WebGL is based on OpenGL, the well known, and reasonably well supported (second only to Direct3D), cross-platform 3D API, promising to bring a device independent 3D experience browser near you. In time it will bring about hardware assisted 3D games, free us from the risks of Flash's low-level browser plugin and eliminate operating system incompatibility.

There are still plenty of hurdles for WebGL to overcome if it is to make significant inroads into gaming. For one, I would like to see some sort of method for switching a HTML5 canvas element to full-screen on the fly, though I can see this could be a significant problem, because if a game can grab control of the full display, so can something annoying like an ad for a Viagra clone.

Commercial developers are unlikely to embrace WebGL enthusiastically, especially those who like to punish customers with software like SecuROM. WebGL and HTML5 offer freedom to users, and as such, it's quite easy for a 3rd party to grab much of the code and the media assets for a standards based game. Indie developers are the ones who will be taking the lead on this.

Flash has no support for 3D hardware, though Adobe could accelerate development to duplicate WebGL functionality, but Adobe would have a lot of work to do in trying to support all the different devices that Flash now runs on. WebGL & HTML 5 would still have the advantage that they are compiled directly into the browser, so they would be even more ubiquitous than Flash, which up until now, has been Flash's strong point.

In the long run, WebGL is going to a killer app for HTML5, which is currently engaged in the ongoing battle with the defacto Flash standard and Microsoft's foot dragging, so, if you are a web developer, why not do yourself and your users a favour by supporting HTML5 now, so you are ready to go when WebGL arrives?

blog comments powered by Disqus