Pictured: My Godot 4 game running on CrazyGames. This was previously impossible because most websites don’t support SharedArrayBuffers/CrossOriginIsolation, which was required to run Godot 4 games on the web.
Today is a glorious day for us webgame/webapp developers. Godot 4 is finally viable to use thanks to this PR which should be merged by 4.3
This allows you to force the exported game to run on a single thread, meaning you don’t need any special headers and your game should be able to run anywhere on the internet. This has the added benefit of making the games work properly on MacOS/iOS, which for some reason had serious issues with SharedArrayBuffers causing the browser to freeze.
Brings a tear to my eye, really. I might not use Unity for my next project. Thanks, adam scott.
Just to be explicitly clear for other people reading this: Milestones assigned to PRs are not a promise. So while it is should be merged for 4.3, keep in mind that unexpected bugs can come up that may delay features (this is true in general, not only for this specific PR).
To help getting PRs into the engine, best we can do as a community is to help the devs by testing and reporting issues (just as @popcar2 did, thank you for that!). This ensures bugs are found early and can be fixed in time.
Is that going to fix #70691? From the comments on that issue I’d gotten the impression that nothing short of a new rendering backend was going to fix web builds on Apple devices.
Bugsquad note2:Also, please avoid asking when this will be fixed. The issue is confirmed to be with the version of ANGLE used by Chromium, so we are all waiting for Google to ship the fix.
Exactly, the bugsquad has indicated that MacOS/iOS web builds are going to stay broken unless Google changes something, but the OP has asserted that the referenced PR
So I’m wondering which of those statements is accurate.
As I understand it, the issues are not really related. The one you linked is specifically about non Safari browsers on MacOS. That’s not the general case.
The PR discussed here is about the more general case with the default browser on MacOS, which is Safari. So both are true at the same time:
PR #85939 makes Godot run nicely in Safari without the headers for shared array buffers on MacOS
Issue #70691 has to wait on Google, fixing it will make Godot load faster in Chrome/Chromium on MacOS. However the linked PR does also improve this issue, but it doesn’t fully resolve it.
Ok, so in other words the upcoming PR won’t actually “fix web builds” across the board, it will just address one of multiple problems. Thanks for the clarification.
This is partially true, unfortunately. Web builds are still barely usable in Godot4 due to aforementioned Chromium issues. So sticking with Godot3 for undefined time and hoping for [WebGPU ideally] the best!