Quick answer: Godot 4 HTML5 export refusing to start with SharedArrayBuffer not available? Browser requires COOP/COEP headers - configure your web server or use the single-thread export.
Game runs in editor, blank screen in browser. Console: SharedArrayBuffer is not defined.
Set COOP/COEP headers
Cross-Origin-Opener-Policy: same-origin
Cross-Origin-Embedder-Policy: require-corpRequired for SharedArrayBuffer. Browsers disable it without isolation guarantees.
Or export single-threaded
Export preset > HTML5 > Thread Support = false. Larger binary; works without COOP/COEP. Right choice for itch.io which doesn't let you set headers.
itch.io specifics
itch.io added a SharedArrayBuffer support checkbox in 2023. Enable it in your project's metadata; itch sets the headers automatically.
“Browser security got tighter. Threading-dependent code needs the right headers to run.”
Single-threaded is the safer default for indie web games. Threaded export saves on physics-heavy games but the header complications are real.