I looove this. I agree with the other commenters that this has a special feeling. And that the future for web games is bright. (For as long as Google is spearheading features with Chrome.)
I guarantee this game wasn't built with Unity: 1) Unity bad for building WebGL games. It does multiple conversions to make a WebGL build. Unity offers live editing in its application, but that doesn't apply to web; whereas modern threejs/babylonjs systems offer hot reloads. 2) And Unity is just unpleasant and bloated generally, for the last few years.
Plug for my game[0] if someone wants to see another WebGL experiment (that I devoted 10 years to...better not to ask lol). PS - WebGL supports WebXR, I've been in my world in VR!
So happy to read in a top comment on HN that the future for web games is bright :-) We've been betting on it for a while[0] and it should only get better with WebGPU.
Unity has issues indeed, unfortunately. The developer experience is shit. If you want to mitigate the user experience, you can use our open-source optimization package:
https://github.com/CrazyGamesCom/unity-optimizations-package (feedback welcome!)
WebGL2 has just recently become production quality on all browsers, take all the WebGPU talk with a pinch of salt if you're interested shipping sometihng in the next few years.
(Practically, both are low level APIs and you'll probably be using something that can reasonably easily switch between WebGL2 and possible future WebGPU backends once they finish the spec and implementations start shipping and stabilizing and waiting for Safari)
If you look at it from the perspective of “when will I be able to support 99% of users”, it will absolutely take a few years, but from the perspective of “when will a WebGPU game have distribution to more people than a Steam game”, it could be a lot sooner. Gamers generally aren't the same people stuck on enterprise-pinned old browser versions, so once Chrome + Firefox have support the chances of someone in the target audience for a 3D game having a WebGPU-supporting browser on their system are pretty high.
(I’m assuming you’re talking about distribution rather than tooling, but I acknowledge the tooling will take a few years to catch up.)
WebXR is going to take off behind these advances in WebGL like WebGPU is supported on Chromium 113 in the next few months and there are claims of 3x and higher perf. Its big draw card is supporting desktop/mobile/XR all at the same time so if you can work within its limits then definitely the way to go however you choose to get there (Unity or Three/Babylon or Wonderland or xyz).
It looks like you're right - the announcement tweet credits threejs and houdini [1]. I measured 13MB downloaded, of which most are fairly bloated "assets" (here's a 3MB blurry png, for some reason [2]), so the "engine" itself looks to be less than 1MB.
Agree that close to the metal threeJS gets you best performance but don’t sleep on Unity WebGL.
They announced at their Unite conference a few months ago they were gonna add proper mobile support for it. Nice to see them investing.
Also shameless plug for [https://spatial.io]. With Unity’s URP we can get near AAA visual quality in the browser. Plus hosted multiplayer, chat, native web/mobile/vr apps, etc.
The future is bright for web and no install! And with App Store’s 30% cut the economic winds are at our back!
Unity is useless for web games. Period. I have the scar tissue to prove it. The whole asset management pipeline is just insanely hard to use. Can’t collaborate or even source version control across devs. Compilations suck. The whole box in a box is dumb. It wastes real estate. So much insane friction. Just because of 3d artists and fan boys the whole eco system is a waste of time. Open web tools with hot loading for devs is yeaaars ahead of Unity. And their performance will always suck.
I'll plug mine too, it's got multiplayer/deathmatch etc, and I recently fixed multitouch and a lot of WebGL performance issues.
I can concur with other comments in this thread that there is something strange going on with iOS and WebGL. Just checking now though, and it does seem to run a little better after the iOS 16 update.
My 7-yr-old just played through it again. On the first run I asked her to read out all text loud, you know, calling it educational for a second-year reader :-)
> Unity offers live editing in its application, but that doesn't apply to web; whereas modern threejs/babylonjs systems offer hot reloads.
It doesn't have to. The idea is that you'll develop the game as a desktop target, with all goodness such as live editing, and then just export the game to WebGL as a final step.
I guarantee this game wasn't built with Unity: 1) Unity bad for building WebGL games. It does multiple conversions to make a WebGL build. Unity offers live editing in its application, but that doesn't apply to web; whereas modern threejs/babylonjs systems offer hot reloads. 2) And Unity is just unpleasant and bloated generally, for the last few years.
Plug for my game[0] if someone wants to see another WebGL experiment (that I devoted 10 years to...better not to ask lol). PS - WebGL supports WebXR, I've been in my world in VR!
0: earth.suncapped.com