Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It's disappointing to me that it's 2015 and we have yet to have a good solution for browser games. Flash is still your best choice by a huge margin.

4 years ago I was very bullish on HTML5. Flash was dying, HTML5 was the future! It was right around the corner! I think a lot of people agreed with me.

4 years later - what has changed? Decent webGL support but still driven by a terribly slow javascript runtime. ASM.js gets us halfway there but it's brittle and does't even run in Chrome so it's basically worthless for anything that isn't a tech demo. The audio API is also still very limited.

We've been trying to port our Unity mobile app to webGL for 6 months now and it's been nothing but pain. In hindsight, it was a mistake. I was bullish on HTML5 back in 2011 and I was bullish on webGL in 2014. I was wrong, again.

So, I'd like to have faith in these efforts, but as they say, "Fool me once, shame on you. Fool me twice, shame on me."



There's a little bit of misinformation there!

First off, HTML5 has come a long way – there are still areas that need work, but generally I've seen lots of great HTML5 games and the field has improved remarkably in the past 4 years.

WebGL support is now cross-browser. The JavaScript runtime is not terribly slow, and I don't know if you're a bit confused about ASM.js – it does run in Chrome, and pretty well too. However, it's likely to be displaced by WebAssembly going forward, if I understand correctly, and that will be cross-platform and cross-browser.

It'll take a little while, but we're on the way there! Unity's HTML5 examples are pretty good – http://beta.unity3d.com/jonas/AngryBots/ for example looks great and runs well.


> I've seen lots of great HTML5 games and the field has improved remarkably in the past 4 years.

HTML5 has come a long way, but I'm talking specifically about non-trivial games. For that, it's quite difficult to use it in a "we are going to make money with this!" way. I have seen some success with people writing their whole game from scratch to work within the very limited scope of HTML5, but most of the time those games are still pretty simple. Even so, I will concede that maybe this statement is geared more towards people trying to do cross platform stuff.

> ASM.js – it does run in Chrome

ASM.js runs in Chrome but it's not accelerated like it is in Firefox, that's what I mean. I was not speaking literally.

> http://beta.unity3d.com/jonas/AngryBots/ for example looks great and runs well.

That's a demo. It does not demonstrate the problems that real developers with real games and real codebases are having with webGL. For example, it does't do any network communication with a server.

And, this game is tiny. They have 14.5 mb of assets and 4 mb of javascript.

Our game (it's a Slot Machine so it's not like it's super complex) has 23 mb of data and 16 mb of javascript. This is much more realistic. You can't do a whole lot with only 4 mb of javascript.


Outside of games by Unity my personal experience for "Cross-Browser" JS game frameworks has been highly negative. I wanted to try making simple games with JS but most / all the frameworks demos I tried out didn't seem to work on "all" browsers. It wasn't a lag issue, the biggest thing was just getting it to become responsive to my keyboard, you'd think that would be trivial right / not considered an issue "in 2015"? Guess not.


We'll probably have to wait a few more years until Webassembly and the easier to use and faster Vulkan API comes to the browser as well.

I know they've been working on WebGL 2 (OpenGL ES 3.0-based) for a while, but if it doesn't ship within a year, they might as well scrap it in favor of a Vulkan-based API.


I don't know. WebAssembly MVP could be here fairly soon as it's largly built as an extension to JavaScript engines.


And I believe it's relatively trivial to polyfill wasm support by converting it to asm.js.


WebGL/OpenGL and Vulkan operate at different levels. I suspect that OpenGl and Vulkan will co-exist and it is likely that WebGL and a web Vulkan-equivalent will also co-exist.


> We'll probably have to wait a few more years until Webassembly

I agree, so in the meantime what do we do?


asm.js + WebGL


It sounds like your main problem is your reliance Unity's WebGL exporter not Asm.js and WebGL.


The other thing that really sucks right now for game developers is that Chrome has disabled its NPAPI plugin support so you can't rely on the Unity webplayer anymore either.

As the CTO of a mobile/web game startup (using Unity), I'm really struggling on what to do here. We have been trying to launch on Facebook Canvas since late 2014 and so far the finish line isn't even in sight.


I'm not very familiar with Unity but doesn't it support real HTML5?


Browsers are quite capable with HTML5 and WebGL these days. We've built an entire MMO with hundreds of thousands of lines of hard-coded Javascript that runs fantastically for tens of thousands of users (most players don't even know it isn't flash). You can take a look at it at http://casinorpg.com.


Ignore Unity webgl and try PlayCanvas instead? It's a lot more work to port, but you'll get much better performance.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: