Due to my job as a software developer, I spend much of my day dealing with cutting edge technologies and watching the progress of the IT bandwagon as it barrels uncontrollably through every corner of our lives. From listening to music on your iDevice to Internet-connected TVs and fridges to Twitter on your car’s dashboard, it’s difficult to see what’s just about to happen, let alone will happen a year or more away. However, if you look at some of the emerging tech, while watching what consumers are interested in, one technology seems to have the potential to be the next secret sauce of the Internet…

On modern computers we are all used to playing 3D games and seeing 3-dimensional animations. This is usually done by one of two technologies, DirectX (on Windows) and OpenGL (on everything including Windows). On the Web, 3D usually comes down to either Silverlight 3D, Flash (typically using Swift 3D – which interestingly also exports to Silverlight!) or some esoteric plug in that you need to download and install before you can meet your friends in some virtual coffee shop in cyberspace. It’s all a bit late-90’s really.

But now there’s an answer and it comes as part of the package of technologies we’re calling “HTML5”. One of the features is “WebGL” and was born from Mozilla (home to my personal favourite browser, Firefox). As you can probably guess from the name, it is designed to bring 3D graphics to the browser completely natively (i.e. without any need for plug ins).

This means that developers who are used to writing HTML and JavaScript for making functional but pretty dull web applications (even Facebook at its core is just a bunch of text and links and a couple of cheesy animations) can now write HTML and JavaScript to produce fully-functional, interactive 3D games directly in the browser.

 

Why You Need to Be Excited

Smart TVs are becoming more popular and, unlike 3D TVs (at least, while you still need the stupid glasses), they make a lot of sense and will continue to grow. Web-enabling your television is long overdue, especially with the glut of online streamable media from Blinkbox, Netflix and even Youtube.

Now listen hard to what Apple are doing: iCloud, iTV, iTunes.

And then think about the rumours of the iConsole.

Imagine getting home, turning on your Smart TV and seeing that the next Call of Duty game has been released. You hit “Buy” and (because of broadband and sensible splitting up of the game) you’re playing it against all your friends almost immediately. In the browser on your television! Updates? Well, they happen automatically, just like when Facebook unveils a new feature and suddenly it’s already there waiting for you next time you log in.

And because it’s “The Web” it’s connected to everything. You can choose to post your latest achievements on your choice of social networks, put your face on your character by choosing your best pic from Flickr and you can take it with you on your WebGL enabled mobile device for playing on-the-move.

This is 18-24 months away from a technical perspective. If you look at the demos below, WebGL is probably at the standard that PC games were 10 years ago. However, PC gaming took so long to get where it is now because hardware was so (relatively) pants. Now the hardware is already available, WebGL will come of age significantly faster than DirectX and OpenGL. In fact it is being driven (and hard!) by people who have a vested interest in making this work (Google, Mozilla, Apple), while also being driven by the people who make the browsers (Chrome, Firefox, Safari) to run WebGL. It’s a perfect union of the best people in the best places to make WebGL take off.

Of course, there are commercial benefits to the browser vendors doing all of this work. Once Google knows what kind of games you buy, it can advertise those types of games to you in the future on searches and on websites with AdSense.

Once Apple see you playing games in Safari, they can sell you iCloud space for your game saves and profiles.

Mozilla, whose business model I’m not terribly au fait with, umm… well, they’ll end up with a better browser than Internet Explorer!

 

Demos

You can see examples of what is possible with WebGL at various websites.

  • Cloudmach Demos – Cloudmach is a new cloud-based platform for WebGL games. Offering both in-browser and “cloud-based” rendering modes (which is pretty quick). This page shows some of their demos such as a 3D helpdesk, a social game and a fly through of a cityscape.
  • Google Chrome Experiments (primarily Google Chrome only)
  • Ro.me – A stunning, interactive music video in full WebGL. (You’ll need the special Google Chrome Canary build to get the full effect, but it is well worth it!!)
  • Quake 2 WebGL Port – A port of Quake II to WebGL

 

It’s madness. It’s probably not even gaining traction!

Wrong! After the late Steve Jobs slammed Adobe Flash (ironically, for exactly the same reasons why I will never pay a penny for an Apple product), Adobe admitted defeat and started to wind down Flash in favour of HTML5 on mobile devices, and desktop Flash can’t be much further behind.

Adobe have even launched a new product, which enables “devigners” (developers/designers) to create Flash-like animations using HTML5, jQuery and CSS3 called Edge. This is gestating in Alpha but is free to download to anyone with a free Adobe account. As we’ve learned again and again (from PCs, gaming, Flash, Silverlight and movies) we’re never happy staying in the 2D realm and it can’t be long before Adobe introduces 3D functionality into Adobe Edge.

 

Let’s say you’re wrong. What else might happen?

I’m happy to be proven wrong. Life is all about learning. And in a chaotic world like “tech”, being wrong about stuff happens so often it’s hardly anything to worry about. So hedging my bets, what else could happen?

Microsoft’s cross-platform(ish) Silverlight already has great developer tools (Visual Studio!) and support. A shift in their licensing model could mean we see televisions appearing with Silverlight enabled on them (for a fee to MS from the TV maker), and for developers to use the DirectX-based Silverlight to create awesome games and experiences. I’d love for Microsoft to stop fudging what “Silverlight” actually is. Is it for Windows Phone 7 only? Can I keep making Line-of-Business apps with it? Or is it much more and developers shouldn’t be apprehensive about treating it like a general-purpose creative-content tool?

There may be too much money invested in the XBoxes and Playstations of this world for such a disruption to occur. But if the PlayStation died in favour of Smart TVs, then Sony would recoup that in Smart TV sales. What Nintendo would lose in Wii sales would be recouped in selling Web-enabled mobile gaming devices.

In fact, the only loser in a switch away from consoles would be Microsoft and their XBox. By introducing WebGL to their browser, Microsoft could keep themselves “in the game”, but I don’t consider them a particularly web-savvy company… Perhaps driven partly by a need to keep their lucrative XBox empire alive, they have declared WebGL as a huge security problem and wont have anything to do with it. Meanwhile, other browser vendors appreciate the security problems and are working towards making the technology safe. Once other browsers are at that stage of commercial robustness, Microsoft and Internet Explorer will be so far behind the curve they will be dead in the water.

With the increasing might of Google, Apple, Intel and others behind WebGL, I don’t think Microsoft’s slipping popularity will be much of a delay to the technology gaining proper traction and pushing gaming in a new, connected, social, engaging, cross-platform, cross-device direction.

Plus, think of all the games developers out there having to manage code for different devices across different hardware platforms, etc. If all they had to do was maintain one set of HTML+JavaScript, it greatly reduces their maintenance costs too!