6 ms·
Why HTML5 Will Succeed for Gaming
- azakai 14y ago> Apple, Microsoft, Google, Mozilla - four of the largest tech companies One of those is not like the others.
- cryptoz 14y agoWhich one? They all produce web browsers, operating systems, a collection of user software and all have millions or more in revenue.
- azakai 14y ago> Which one? They all produce web browsers, operating systems, a collection of user software and all have millions or more in revenue. The quote in TFA was "four of the largest tech companies". There is at least a 2-3 orders of magnitude (100X-1000X) difference between one of those companies and the other three. The other three are rightfully called "three of the largest tech companies".
- kajecounterhack 14y agoMozilla is nonprofit. (Incidentally, almost all of its revenue comes from Google.)
- skadamat 14y agoWhy is that important at all. They all have browsers in the race, that's the only thing that's important for this...
- uvTwitch 14y agoMozilla operates on millions; the others operate on billions.
- programminggeek 14y agoHTML5 is not going to change the world for gaming. It's great for in-browser games now, but mobile has "changed the game" so to speak. The visibility you get by having a great mobile game in the app stores is huge for finding users and making money. If I were writing a game today, I'd do it on mobile first and work backwards to desktop from there, not the other way around. There are plenty of great tools for that - cocos2d, corona, etc.. That being said, in a future where supporting multiple platforms is a must, HTML5 might be great place to start, even for mobile, but it's still very early and immature at the moment. Great for demos and proof of concepts for cheap, I don't know that I'd bet the farm on it yet.
- jmduke 14y agoI don't follow game development much -- I thought one of the reasons HTML5 was so widely touted was because it streamlined mobile game development -- instead of writing an Android and an iOS version of a game, you could write it in HTML5? I'm surely I'm vastly oversimplifying the issue -- what am I missing?
- phoboslab 14y agoScreen size, sound and performance issues are the main problem. I recently wrote a Making Of for one of my games that offers a few more details: http://www.phoboslab.org/log/2012/06/x-type-making-of http://www.phoboslab.org/log/2012/06/x-type-making-of
- jmduke 14y agoA great read, thanks! Regarding controls: with the dual analog sticks, did you then have arrow keys/mouse bound to the sticks for non-mobile browsers, and then touch for mobile browsers? How was that handled?
- phoboslab 14y agoI just switched between these two control schemes, based on whether the browser supported the touch events. There's a certain degree to which you could do this "automagically" - i.e. generate on-screen buttons based on the keyboard keys that are used in the game. But since controls are so important, I'd rather decide for myself on case by case basis how they translate to mobile.
- seanalltogether 14y agoThe biggest problem with HTML5 gaming right now is that Canvas rendering is designed to be single threaded and Flash sprite and bitmap rendering is multithreaded. Canvas is a direct draw api and Flash uses a deferred renderer. WebGL can overcome that problem, but most people writing web games naturally gravitate towards simple 2d canvas apis.
- phoboslab 14y agoThat's a problem of the implementation, not of the API. Modern browsers have hardware acceleration for Canvas2D now. In my experience, it's already way faster than Flash ever was.
- kunle 14y agoI don't buy this. Apple was pushing HTML5 as an alternative to flash. Definitely true. Apple has no preference for HTML5 as an alternative to native iOS. Native is simply faster, and better on iOS, and as long as Apple continues to have dedicated teams whose entire purpose is improving native iOS (and as long as they continue advancing the hardware), it's tough to believe why HTML5 will ever catch up. If you believe native iOS encourages lock-in (As in, Apple doesnt make tons of money from apps, relative to hardware, but the apps make the hardware more compelling to consumers), then strategically, backing a technology that does not encourage lock-in, doesnt make that much sense. It seems to me that most of the people who believe that HTML5 is the wave of the future (particularly in gaming), dont actually make games (or make money from games). It will always be more profitable to make an awesome game in native, and monetize it on iOS first, than to make a less capable game in HTML5, and spread that around to every platform. Just my tuppence.
- mtgx 14y ago"WebGL - Everyone but Microsoft is in agreement that WebGL is the way to go for 3d graphics in a browser." Things like these are the reason IE keeps losing market share. Why limit yourself to the little functionality of IE? That's why Chrome is growing and keeps getting recommended to others.
- ilaksh 14y agoSee I think that for IE to provide a really powerful capable web platform goes directly against Microsoft's business interests, because they have the most dominant native platform.
- ilaksh 14y agoEveryone thinks I am a 'conspiracy theorist' or something for saying this, but I really think that Microsoft is holding back WebGL for business reasons. Microsoft is very dominant in games because most PC games require Windows. If WebGL were to really take off/become a popular way of distributing/consuming PC games, which would be 10 or 100x more likely to happen if Windows supported it out of the box via Internet Explorer, you would have to expect to see lots of relatively inexpensive and even free 3D games that run in the browser, and take little or no time to install. Even with Microsoft refusing to support it, now with Pointer Lock API coming very soon to a regular Firefox release (tomorrow??) and probably Chrome soon also, it will be possible to release a FPS or MMO on a website with native browser technology. Throw in the momentum and capabilities of Node.js, and I think that means choosing a web stack has big advantages as far as ease of development for a lot of multiplayer 3D games. I also think that where JavaScript/JS-based languages like CoffeeScript are really going to shine and be popular is in scripting for multiplayer 3D environments online. I think that mainly we are just waiting for Pointer Lock, maybe a tiny bit better collaboration between browser and driver developers, and some social momentum. When WebGL takes off, Microsoft Windows sales will take a big hit because people will be able to play the popular games on Macs or even on Linux machines.
- azakai 14y ago> Everyone thinks I am a 'conspiracy theorist' or something for saying this, but I really think that Microsoft is holding back WebGL for business reasons. You're not a conspiracy theorist, and I think you are 100% right here. > When WebGL takes off, Microsoft Windows sales will take a big hit because people will be able to play the popular games on Macs or even on Linux machines. I believe that when WebGL takes off, Microsoft will support it. Say what you will of Microsoft, it is a rational player in the market. If everyone plays WebGL games, IE will not be the only browser - and Windows 8 tablets the only device - that cannot play that content. Microsoft will simply implement WebGL (it probably already has internally).
- derleth 14y ago> Microsoft will simply implement WebGL But you still have to wonder what this will do to their profitable desktop business, and hence their share value, and hence their shareholder confidence. I suppose I'm really wondering if Microsoft can turn into an IBM.
- mattvot 14y agoCan someone explain this issue I have an issue with HTML5 games. I don't know much about WebGL etc, but I do know that JavaScript is used to direct the game. So to that end, considering JavaScript cannot be compiled and then sent to the browser to render, anyone can view the source. Anyone can hack it up. How do you solve this?
- ilaksh 14y agoOnce you obfuscate the JavaScript code, its actually a similar situation to that with Java or even regular C++ programs to a lesser extent, because you can still 'hack it up'. Look at all of the mods for Minecraft, for example.
- debacle 14y agoNot true. You can't really obfuscate JavaScript in a meaningful manner without making it slower.
- AshleysBrain 14y agoWhat? Take a look at Google Closure Compiler - it renames all identifiers to nonsense, making it impossible to work with, and not affecting performance at all.
- debacle 14y agoAnd that obfuscation is easily undone: www.google.com/search?q=javascript+deobfuscator
- Ralith 14y agoAny network system that relies on the integrity of the client to maintain security is fundementally broken.
- ehsanu1 14y agoClients can be hacked anyways, whether compiled or not. This has always been true. The only way to make a game secure is to keep all the game logic and data server-side. This means clients only act as dumb terminals: they provide input to the servers, and render the output.
- bsphil 14y agoFor low-end gaming to replace flash? Sure, that was inevitable and the writing has been on the wall for the demise of flash for years now.