I don't remember the last time a new technology had such a vast distance between proofs-of-concept and widespread implementation as HTML5/WebGL. It's been years now of these amazing demos, and yet every single website I use in my daily life might as well be HTML4.
I'd rather most of the websites I frequent stay as light as possible to focus on content... certain sites would benefit GREATLY from this tech but the majority wouldn't be able to really take advantage of it.
It would be nice, though, if all the flash content got replaced by HTML5 content.
I think this is due to competing native platforms for 3D graphics (e.g desktops and mobile clients) and lack of tooling. The browser has historically worked very well for static/text content and 2D graphics and building developer mind-share for a new platform is hard. However, the new WebGL export option in Unity 5* should result in more WebGL games and simulations.
As someone who uses the Unity WebGL export in production, it's a long way away from the point where you can simply build a game in Unity, deploy with WebGL, and expect it to work reliably. It took us several months of optimizations, rebuilding assets, etc. to get it to a marginally viable state, and even then I wouldn't call it reliable.
As it is it will usually work on maybe 50% of computers. More if the game is minimal (this is the case with most, if not all, of the online demos). A lot of this is due to patchy WebGL support and the fact that ASM.js's viability is mainly due to politics, not due to it being a good solution in practice.
The computers it does work on, frequently you'll get an out of memory error, since you can't resize the memory arena in ASM.js (well, you sort of can but it makes the code much slower, and the resize operation frequently will crash the browser tab). You can mitigate this by requesting a larger memory arena, but in our testing, any size above 128MB fails to work on about 20% of machines.
The parsing time for the ASM.js code is also so long that frequently browsers will ask if you want to kill the tab, because the page has been unresponsive... And when the browser is actually parsing the code, it will usually allocate over a gigabyte of memory. (Even firefox, which supposedly has a more optimized parser for ASM.js code).
This is ignoring browsers like Safari, IE11, and Edge (not to mention mobile), which all have their own sets of problems.
I don't really know where I'm going with this, other than to say that from the people I've talked to, this is pretty much the experience of everybody who has tried to ship anything nontrivial with Unity WebGL. I've heard that Unreal's HTML5 export is similar, but I've never used it so I can't confirm.
I've already made this rant so I'll just link to it but WebGL is an atrocity and the sooner it dies and is replaced by something useful the better: https://news.ycombinator.com/item?id=4845889
Your rant is three years old. MS now supports WebGL in IE 11 and Edge. WebGL is quite useful, if inelegant. If you are waiting for the elegant version to do some 3D programming, you'll miss the opportunity.
From your point of view, that may be true, but a lot of things that were implemented as javascript or plugins in HTML4 are built-in and work better across more platforms now.
Like video, audio, forms validation, new input types, and boring things like that.
Well... Read the comments on any such demo. Or this page, even. "Crashed my computer." If your website crashes people's computers, they will quickly learn to stop visiting it.
Safari has a feature to ask you if you'd like to use plugins (like flash) for a website. It's also seeing WebGL as a plugin. It's insane how many websites use WebGL. The only thing I wonder is what those websites use WebGL for as I see nothing special.
It would be nice if the github pages demo didn't spawn quite as many units at the start as it did. It was basically unusable for me on my pretty beefy MBP.
Agreed. I gulped on seeing the progress bar sticking at "Infinity%" (that's a while, whatever the units) but overall it took about 2 minutes on my MBP 2014.
These games-as-HTML5-pages really have to cushion the how 'loading..' resources issue somehow. We should bring back loading screens perhaps?
Note: That's not a knock on this proof of concept, it looks great.
I'm sorry. I know it's resource intensive.. Firefox and Chrome have crashed on me many times while developing it, but it froze my whole computer only when there was a memory leak or bug.