5 ms·
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 ag
by socialist_coder 11y ago
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."
- socialist_coder 11y agoThe 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.
- rockdoe 11y agoI'm not very familiar with Unity but doesn't it support real HTML5?
- deleted 11y ago[deleted]
- matthewmacleod 11y agoThere'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/ http://beta.unity3d.com/jonas/AngryBots/ for example looks great and runs well.
- socialist_coder 11y ago> 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/ 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.
- giancarlostoro 11y agoOutside 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.
- devloper 11y agoWhy would you want browser games when there is mobile with native apps that give first-class experience to both users and developers?
- higherpurpose 11y agoWe'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.
- socialist_coder 11y ago> We'll probably have to wait a few more years until Webassembly I agree, so in the meantime what do we do?
- rockdoe 11y agoasm.js + WebGL
- bhouston 11y agoWebGL/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.
- bobajeff 11y agoI don't know. WebAssembly MVP could be here fairly soon as it's largly built as an extension to JavaScript engines.
- mrec 11y agoAnd I believe it's relatively trivial to polyfill wasm support by converting it to asm.js.
- bobajeff 11y agoIt sounds like your main problem is your reliance Unity's WebGL exporter not Asm.js and WebGL.
- james33 11y agoBrowsers 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 http://casinorpg.com.
- daredevildave 11y agoIgnore Unity webgl and try PlayCanvas instead? It's a lot more work to port, but you'll get much better performance.