6 ms·
Can't help but feel that the big game engines are going to have the most impact for 3D on the web. Our team at Wonder has brought Unreal Engine support back to
by astlouis44 4y ago
Can't help but feel that the big game engines are going to have the most impact for 3D on the web. Our team at Wonder has brought Unreal Engine support back to HTML5 for newer versions of the engine, and we're offering an entire platform and suite of tools to enable developers to publish, manage, host, and monetize their games and 3D experiences on the web. Full blog post with demos below:
https://theimmersiveweb.com/blog https://theimmersiveweb.com/blog
- nmfisher 4y agoI've kept an eye on WebGL/WebGPU/etc for my own app but haven't really made any moves in that direction yet. What's the market for 3d rendering in the browser at the moment (beyond your demos)? In theory it sounds nice to load up a webpage and jump straight into a game but the reality is probably quite different, what with long asset loading times and (I'm guessing) fractured userbase in terms of hardware. I know it's your product so you're bullish either way, but a candid answer would be appreciated.
- oplav 4y agoI'm not the person you are responding to but I've been working on a web 3D rendering focused product for a bit now. One issue that we've run into is that by default on laptops, Windows will not use an available discrete GPU in the browser. The only way to work around this is if you go to your power settings (not in the browser) and tell Windows to use the discrete GPU over an integrated one.
- nmfisher 4y agoI wasn't aware of that (though I don't know why I would be). That's very useful to know. Is this by default on battery, or by default full stop?
- oplav 4y agoOur testing showed default full stop.
- panzerboiler 4y agoAre you saying that windows ignores the `powerPreference: "high-performance"` setting of the WebGL context creation?
- oplav 4y agoYes, we thought that was strange too but it kind of makes sense if the process is unaware that the GPU exists because of the OS settings. As an aside, we also discovered that `powerPreference` is only a hint according to the spec, so there's no guarantee that an implementation will adhere to it: https://registry.khronos.org/webgl/specs/latest/1.0/ https://registry.khronos.org/webgl/specs/latest/1.0/
- modeless 4y agoIt's not trivial, but it's absolutely possible to build an instant-loading web game with WebGL. https://venge.io https://venge.io is my go-to example. You can click that link and starting from zero you can see 3D rendered content in about three seconds and be shooting people in multiplayer in less than 10 seconds (on a decently fast connection). Of course the graphics there are not competing with Unreal, but in principle it should be possible to do progressive loading of assets and reach a much higher quality over time without sacrificing that fast initial load.
- nmfisher 4y agoI suppose my follow-up question is: is there a sufficiently large market for that type of game? Not just blue-sky thinking, I'm more wondering if there is proven demand, as of today. Side-note: I couldn't load the game in Safari (which has amazingly poor WebGL support).
- JayStavis 4y agoMy guess: The 3D versions of web 2.0 experiences I don't think traditional AAA makes sense in the browser right now, but I see all sorts of UGC experiences having large synergy with web standards. The business playbook is largely there too. One reason the market isn't sufficiently large yet is really because of the creation tools at our disposal imo. Web 2.0 explosion was arguably driven by great network effects of the proliferation of mobile cameras. Right now, none of my friends make 3D content. I personally believe that's going to change with depth sensors, 3D scanning, nerf, generative content, etc.. so the trendline is there for me to buy this theory. I'd look more towards social games, hangout type experiences, or async consumption... as opposed to realtime, networked, embodied, immersive. Side-note: Apple has demonstrated the willingness to change their tune on WebGL, I suspect they'll catch up pretty quick.
- modeless 4y agoI think there is a decent sized market in terms of number of players but monetization is not as good as other platforms. There's no IAP and less inventory of app install ads, which I believe are the two big moneymakers for native mobile games. One successful path seems to be early access on the web to build a following, with a release on Steam/app stores for monetization afterward using Electron or Node, with the web version remaining as a free demo (e.g. Vampire Survivors or CrossCode). The other path is ad monetization, and there are a lot of portals like crazygames.com or poki.com that host that type of game. I think the market there is largely schoolkids with Chromebooks. I'm not aware of any successful web games that are sold as an up front purchase like Steam games.
- meheleventyone 4y agoYou can get really close to instant and it’s about how you build and package your content. If you need to download megabytes of assets and/or do complex processing on load you’ll be in for a bad time. The fractured hardware base you deal with by making an educated choice about the minimum spec you will target and accepting that people below that will have a worse experience or be unable to take part.
- jalino23 4y agoIt's unfortunate that unreal abandoned webgl export 2 years ago! I'm glad your doing this for unreal! as I don't want to switch back to unity just for webgl export
- greggman3 4y agoI'm very skeptical that big game engines will have any impact on the web. The issue is they're built for downloading XX gigs of data to a hard drive. Not for launching instantly like say google maps 3d mode. Further, they re-implement everything themselves instead of using the features already built into the browser. Image decoding, video decoding, sound mixing, networking, text rendering, etc meaning you end up downloading 10-50meg of WASM. And every time they make a tiny change expect another large download. Vs something like three, pixi, babylon, playcanvas, which are designed web first. I think, it's likely a successful real-time 3d web based game will be designed for the web and I don't think the big game engines are engineered to make that easily possible.
- deleted 4y ago[deleted]
- astlouis44 4y agoWe’re optimizing Unreal to work in the web, both for performance and load times. Our asset streaming system bypasses the need for users to load an entire game upfront. Only what is needed is fetched, everything else is streamed in at runtime in the background. We’ve also implemented basis texture compression, which reduces file sizes and reduces load times further.
- meheleventyone 4y agoUnity is pretty good for smallish package sizes. There’s a few people in the Web Game Dev discord making money from Unity exports to the web on portals. That said I do think web native engines are the way to go ultimately as the package size will end up smaller in a like for like comparison. Unity games can be smaller than a lot of websites depending on how they’re put together. The thing to keep in mind is overall audience expectations, the size of that market segment and how you want to monetise because that can result in some trade offs that are on the whole different to the average web app. With all that said smaller initial packages, less processing on load and later streaming of assets should all be first line concerns for any web native engine.
- flohofwoe 4y ago> The issue is they're built for downloading XX gigs of data to a hard drive. In the end, bandwidth is everything. If you can stream the asset data in the background that's most likely needed next, and discard the asset data that's most likely no longer needed without disrupting gameplay, storage space (or upfront download waiting time) is no longer an issue. The web server essentially becomes your hard drive. It won't work for games that have been built for traditional gaming platforms of course, it basically requires to design the game from the ground up around the bandwidth limitations. That said, I'm also sceptical about the whole idea of bringing AAA games to the web, even if it would be technically feasible. The main problem is that the business model isn't there (outside closed platforms like Facebook, TikTok or WeChat, which focus on entirely different types of games). You'd first need a successful "Steam for the web" platform before tackling serious game projects. A typical chicken/egg situation. PS: I fully agree about traditional game engines not being fit for the task, if there is a "web gaming" disruption, it will come out of the web hemisphere, not the traditional PC/console game engine side. PPS: I'm reasonably sure it's possible to pack a complete 3D game client into a ~3..4 MByte WASM download (compressed) if you write the whole thing from scratch and don't use one of the 'industry standard' engines. That was the (compressed) size of the native Drakensang Online game client for Windows I worked on in the past, and this didn't use any services from the operating system that aren't also available in the browser in some form or another (e.g. all rendering, including UI and text... was all done from scratch on top of D3D9, networking was done on top of UDP sockets via RakNet, sound was done via FMOD). PPPS: While traditional game engine runtimes are not fit for the task, maybe their asset pipelines, editor tools and workflows are. The 'engine' is just that little unimportant thing dangling off at the end of the asset pipeline after all ;) The Unity editor can be used to some extent in such a 'bring your own engine' role, but I guess that's at least a 'legal gray area', if not downright illegal.
- JoeyJoJoJr 4y agoWill there be support for mobile web? This tends to be largely ignored as a deployment target, but is very important to my client when it comes to games in the crypto space.
- astlouis44 4y agoMobile web is indeed a focus for us, yes.