The HTML5 Age Is Upon Us
In this guest editorial, Turbulenz CEO James Austin details what HTML5 means for games and what is possible with HTML5 today
Developers have been creating financially successful games with web technologies for many years: Travian was successful using static web pages and Farmville ploughed an entirely new furrow using Flash. But there is now a growing acceptance that HTML5 will be a major platform for games in the future. So why is HTML5 interesting, and is it really ready?
HTML5 is currently the ultimate Internet buzz word, so let's start by defining what it actually is. For me, HTML5 is basically two things: One, new HTML tags, most significantly for playing movies and audio; two, new programming interfaces that browser-hosted JavaScript applications can leverage. Basically, new features for programmers to use.
The second point is the relevant one for games. Any application that is written in JavaScript - the native language that runs within a web browser - that leverages the new HTML5 programming interfaces can be classed as an HTML5 game. But I would go further, because I think there is an expected level of fidelity for games. It's not enough to be a little gaming experiment, a spinning duck with some modern shading - we should be targeting games that match the fidelity and complexity possible on other modern platforms.

Score Rush by Xona Games
HTML5 is gradually allowing JavaScript applications to fully utilise all hardware available within a device. With that in mind, I think we can only seriously consider HTML5 games when they match the quality and fidelity possible via a native application on the same device. This time has come: just look at what StrawDog Studios achieved with Space Ark, or Xona Games achieved with Score Rush, both of whom used the Turbulenz HTML5 JavaScript SDK.
Why Is HTML5 Interesting?
Game developers will typically create content for platforms that have, or have the potential to attract, a large paying audience. When making an investment decision, developers take into account the size of the audience and the potential for that audience discovering, playing and ultimately paying for the game. To recoup their investment, developers need to get a game onto many devices to many consumers in an instantly accessible and simple way.
Portability
It's not enough to be a little gaming experiment, a spinning duck with some modern shading - we should be targeting games that match the fidelity possible on other modern platforms
A major perceived strength of an HTML5 game is its potential portability across devices that implement the HTML5 interfaces. Clearly, there are significant design challenges to making an application useable on a wide range of devices. The game would need to cleanly handle screens of different sizes and resolutions, with different user interfaces and wildly different performance, but the portability of JavaScript and HTML5 makes this possible. Of course, HTML5 isn't the first application platform that enables this - just think of Sun's 1995 release of Java to consider a 17 year old alternative. Nothing new indeed.
Reach
Another potential strength of the HTML5 platform is its sheer reach. Developers love the iOS platform because their game is not only accessible to a huge market, but most importantly it is rapidly accessible to a huge market. HTML5's reach has the potential to include all personal computers no matter the operating system: all mobile devices including Android and iOS, and any other smart Internet connected device such as the mythical Smart TV that may one day start gaining traction. All with just one click on a weblink. Perversely, it is the games consoles that are the least accessible devices when it comes to HTML5 content. But then again, why would the console manufacturers want to enable content that falls outside of their ecosystems?
Neutrality
The console manufacturers' control of their platforms leads us onto another strength of HTML5, namely its neutrality. HTML5 isn't owned or controlled by any single company. The first draft of HTML5 was created in 2004, and arguably the distributed nature of HTML5's development and growth have seriously slowed its progress. But this neutrality is exactly what will give HTML5 a life expectancy well beyond other conceptually similar owned platforms. The platform doesn't have a single vested interest, such as Adobe has with Flash; rather, it has a shared interest for companies building upon the internet as their platform.

SpaceArk by StrawDog Studios
Instant accessibility
The beauty of an HTML5 game is its instant accessibility and deployment. Installation and updates, which still challenge many non-technical users, are all handled by the application developers. The way an HTML5 game is delivered to users is highly efficient. The application is downloaded seamlessly by the browser whenever updates are made, and potentially huge content payloads are distributed on demand by the application. The starting process of an HTML5 game is a generational improvement over the already slick application model used on mobile devices and application stores today.
So it seems HTML5 is nothing special and nothing new. But when you take all of the little differences and strengths together - portability, reach, neutrality and instant accessibilityc - we have something with huge potential. And most importantly of all, there is a groundswell of developers and businesses investing in the platform for their future benefit.
Turbulenz is a free-to-play game network conceived and devoted to pushing the boundaries of HTML5 game in the future and most importantly today. To find out more click here, or attend the Turbulenz-sponsored HTML5 hackathon (gamehack.co.uk) on 28th-29th April.
Performance is pretty good, seems to be about on par with 2D Flash - obviously a native app would make more sense in a mobile context, unless there was some established means to store the game locally. Still it's impressive to see how quickly HTML5 is evolving.
The downside of there not being a single entity responsible for HTML5 is that there's the risk of nobody driving it.
It's still got a way to go I think but the way it's developing is encouraging.
e.g. You ask "why would the console manufacturers want to enable content that falls outside of their ecosystems?"
You can extend that to any manufacturer. Do you really think the mobile ecosystem is going to encourage content in a free and open format that falls outside their billion dollar monetization and distribution channels?
Monetization on mobile is one area where HTML5 fails. We've already seen one high profile HTML5 company go out of business because they can't monetize content on the open web like native mobile apps can. The platform owners have exactly zero incentive to enable this, and it's a major Achilles heel.
On the technical challenge of running HTML5 games outside an app, I have yet to see a compelling HTML5 mobile game demo that actually runs on iOS and Android and matches native look and feel. Even HTML5/JS wrapped in a native mobile app looks substandard to me. My first question on seeing any HTML5 demo is - show it to me on the iPhone - and the response is always some excuse about how it doesn't quite work yet because the graphics/audio etc support isn't there. And it's been that excuse for years. Let me know when Zynga ships an HTML5 game on iOS or Android, and they have invested millions in it.
I see the attraction for Javascript as a single language, even if it's not a great choice for games. But 90% of the talk around HTML5/JS as the panacea for all problems, especially in mobile gaming, is just hype IMHO.
FYI, Score Rush won't even load on iOS for me. After forcing me to login via Facebook, I get 'An error occurred with Turbulenz. Please try again.'
Edited 2 times. Last edit by Todd Hooper on 19th April 2012 5:23pm
You still have to do a lot of optimization per 'platform' as you also have to query what features are available on the specified HTML5 'platform'..
Yes it's a big advantage over the older javascript/HTML, but it's still lightyears of native-development.
Think of it this way. Give me ANY "HTML5" program/game and I'll remake it in HTML4 and it will work in older browsers. And I mean ANY.
Canvas has already existed it was just renamed and everything else javascript could still be done. WebGL was not invented as part of "HTML5". Html5 is a word; nothing else.
If I publish a javascript game in "HTML5" is it an HTML5 game?
If I publish a flash game within "HTML5" tags is it an HTML5 game?
Our HTML5 engine UltimateJS (http://www.logicking.com/index.php?page=html5) won't run on IE8 for example because, IE8 is not HTML5 compatible browser.
HTML5 is just great for social games. There are few very nice already. Think of it this way - why you want to do Flash version of Farmville and miss iPad/iPhone browser while you can just do it in HTML5. Farmville like games require limited graphics capabilities and HTML5 definitively not worse than Flash here.
Edited 2 times. Last edit by Yuri Dobronravin on 19th April 2012 9:04pm
No it's not really ready yet to answer all our needs, but it's gaining a little more momentum now as the features are now becoming more concrete and more web+game developers jump on board.
Here is a superior article on the subject from about 1 month ago:
http://www.gamesindustry.biz/articles/2012-03-23-future-proof-html5-native-client-and-the-battle-for-the-browser
Many engines are working with this tecnology, will be a BOOM to casual games, more quality and speed.
sorry flash.
On the mobile front, we have alpha versions of both titles working on Android with a great touch interface and they are absolutely comparable to the desktop version, minus a few frames (although we fully expect the hardware to catch up). If you're at Develop Conference in Brighton this year we'll be speaking and I'd be more than happy to sit with you (or anyone else who's interested!) and show you. It sounds too good to believe, which is why it's such a great demo!
For the record this article is about why we think HTML5 is ready (and I think we have the demos to prove it). We're not trying to smack down Unity or any of it's developers — we're offering what we think is a really awesome HTML5 alternative that we think will only getter better (and more supported) over time. Unity is a absolutely great tool and anything that gets people playing high-quality, super fun games in the browser and across devices is great by us!
Which part is not working? I'd be happy to fix whatever you programmed incorrectly so it works in IE8.
I wouldn't build a boat on a highway, and I wouldn't program something that won't work for at least the 3 major browsers.
Take a look at this near perfect Arkanoid clone with sound and graphic effects, a level editor that allows you to share and view levels made and more:
http://www.schillmania.com/arkanoid (Hit the first grey bubble to play)
And when was the technology available to make this amazing HTML + Javascript possible?
Well, let's take a look at the help.
October 2002
(When Netscape still existed and Mozilla was only 1.0)
Error message: event is not defined | URL: http://www.schillmania.com/arkanoid/arkanoid-v1.2b.js | Line: 2516
Current release of Firefox on Windows
:)
It's obvious that hasn't been updated in awhile. It's also well known that browsers REMOVE functionality in order to sell the same stuff back to people. That doesn't nullify the fact we have had this type of "technology" for many years now.
Sadly, my university will always be behind the times, we are still stuck using Flash and Unreal Engine as well as C++ and Java programming.
It'll be great if HTML5 takes off but it's certainly not the go-to tech just yet.