Search Unity

WebGL Roadmap Update

Discussion in 'Web' started by WindwalkColin, Mar 4, 2020.

  1. WindwalkColin

    WindwalkColin

    Joined:
    Jan 28, 2019
    Posts:
    11
    Howdy Unity WebGL staff,
    We are really excited to build a web version of our game but need to know more about what Unity's plans are with the platform.

    I wanted to reach out to see if you guys could post an updated roadmap for what you guys are building on the WebGL front. Curious if we should expect any features that will drive additional performance in the near future.

    -colin
     
  2. OneManArmy3D

    OneManArmy3D

    Joined:
    Jun 2, 2011
    Posts:
    191
    I have suspicion that WebGL team is in vacation 9 months a year and for unity WebGL is just for checkbox.
     
    MGretton, mowax74 and gowinstudio like this.
  3. WindwalkColin

    WindwalkColin

    Joined:
    Jan 28, 2019
    Posts:
    11
    Bump. Any Unity devs who can weigh in on this?
     
  4. WindwalkColin

    WindwalkColin

    Joined:
    Jan 28, 2019
    Posts:
    11
  5. WindwalkColin

    WindwalkColin

    Joined:
    Jan 28, 2019
    Posts:
    11
  6. WindwalkColin

    WindwalkColin

    Joined:
    Jan 28, 2019
    Posts:
    11
  7. LooperVFX

    LooperVFX

    Joined:
    Dec 3, 2018
    Posts:
    180
    @WindwalkColin

    The bad news: WebGL is dead --it's an API that's been stagnant and neglected for nearly a decade, which is outside of the control of Unity. Most of the limitations Unity has with WebGL are limitations in WebGL standard itself and/or lack of browser support for WebGL features. The few improvements Unity could make to WebGL support and performance at this point would be rather unremarkable and in investment in legacy technology.
    So, forget WebGL, it's at the end of the road.

    The good news: WebGPU will soon take its place and provides a great foundation for graphics and GPU compute on the web. You can think of WebGL to WebGPU as similar to OpenGL is to Vulkan or DirectX11 is to DirectX12, (though WebGL has always been the most crippled of the bunch.) So, there are very significant performance benefits and much better feature support as well.
    You can find more info about the WebGPU draft standard and browser implementation status here:
    https://webgpu.io
    You can also see Babylon.js already has a partial implementation of the WebGPU draft spec implemented and working with Chrome Canary on Windows and MacOS. They have some performance tests / results:
    https://doc.babylonjs.com/extensions/webgpu

    So, the next step is to be asking Unity about their WebGPU roadmap, which people are already doing and getting responses from Unity developers in this currently 10 page thread: https://forum.unity.com/threads/webgl-roadmap.334408/page-10
     
    OLGV likes this.
  8. OneManArmy3D

    OneManArmy3D

    Joined:
    Jun 2, 2011
    Posts:
    191
    It explains why unity devs left this forum section and fixing bugs takes ages.

    Also "The good news" are not so good. We will have to wait years before we will get something we can use. If you plan to release game on web after 3+ years, then maybe you can say "good news".
     
    Last edited: Mar 17, 2020
    DrViJ likes this.
  9. Urland

    Urland

    Joined:
    Mar 5, 2014
    Posts:
    3
    WebGL needs more attention, but it works great. No need plugins to include in your assets, to have a youtube player, nor for A//R (using ar.js and I'm not talking of ARplugin.js for unity), nor for multitouch. I got all of that working within days scratching my head (of course) but it's working ! URP on webGL is running like a charm even on old phones, is completely WYSIWYG. And the best is no need to ask users to update, you update and then they get the changes at next visit. Really, Unity is so easy to use instead of 3.js, you have occluder, navmesh, tons of shader etc... And I repeat, you can interact with the web browser, that is really amazing. I love send small buffers of datas to unity, render unity above a html canvas with transparency, or use lightbox to make a youtube player with just 1 or 2 js files to include. I agree that is more complicated than native app but it works if you know what to do and how to do it. How many years did it take for a human to learn to walk ? WebGL is like that, it needs more than just including things, you need to link them inside the browser, but when it works, is worth the brain-sweating time. At least to my opinion. For games, surely native if more suitable, but if you want something more like an web-app, Unity is THE thing to use. I think to museums, little apps like A/R, apps including youtube videos etc... and no need to install crappy apps on stores and give them full access to your datas, a web browser cannot save or access your datas without a clear save or upload from your side, you don't need an apple license developper and in one build you have iOS/Android/PC/MAC. I love that. WebGL is the future.
     
  10. d4cl00

    d4cl00

    Joined:
    Nov 26, 2020
    Posts:
    5
    WebGL is dead, WebGPU is the future.
    Unity wasn't built to support this; when you export to WebGL there is so much conversion happening that the end-result are large build sizes and a sub-par performance. If WebGL is important, it's better to pick an engine that is more designed around WebGL, something like https://playcanvas.com, which does a much better job than Unity in this respect.
    For desktop, mobile and console, Unity is definitely more suitable.
     
    mowax74 likes this.
  11. De-Panther

    De-Panther

    Joined:
    Dec 27, 2009
    Posts:
    589
    WebGL is a graphic API for the web, WebGPU is also a graphic API for the web, using one or the other shouldn't change build size significantly. WebGPU should give a great boost in performance.
    It'll take long time until most of the browsers and devices would support WebGPU (it only got to latest desktop chrome for origin trial).
    And Apple only now got to support WebGL2 on iOS 15.
    So WebGL is not dead...

    Regarding using different engines, Unity wasn't built for web, and if you are web only an engine that was built for web might be better, but it all depends on your use cases. I don't know about engines for web that have all the assets and tools that Unity has.
    So it all comes to pros and cons in each choice.

    Personally I prefer Unity even for web projects, as it's faster to develop with all the editor tools and ready made assets. But loading times, as much as you can optimize data loadings, the wasm file still can get really big very fast.

    I'm more looking for advances in WASM/WebAssembly on browsers, like SIMD and better threads support, as I find it as a harder to challenge bottleneck right now.
     
  12. OLGV

    OLGV

    Joined:
    Oct 4, 2012
    Posts:
    57
    This is a great overview and feedback to the topic @landonth . Thanks
     
    LooperVFX likes this.