#BuildPropulsionLab at #DevoxxUK: @jbaruch with @yostane
summary
Doom is running in the browser by taking an existing C→.NET port, compiling the .NET runtime to WebAssembly, and fixing many runtime incompatibilities; the SFML multimedia layer is reimplemented with Canvas and Web Audio, the game loop is swapped for requestAnimationFrame instead of blocking loops, and .NET 7’s JSExport/JSImport interop ties browser JS and compiled .NET together. The build requires manual fixes for desktop-only APIs but produces a playable browser (and phone) demo hosted from a GitHub repo.
AI-written summary · about
related talks
33mRun your favorite games everywhere with WASM: the BlazorDoom use case
29mHow I Ported Doom to the Browser with WebAssembly
34mPanel Discussion: Browsers & Wasm
28mLet’s build with WebAssembly! by Tejas Kumar (Eng) | JSConfAM19
28mNorDevCon2020 Day 1 - Part 3 - Mark Flanagan
34mBack to the FUTURE! From C++ to JS
34mModern Web Game Development
57mC++ on the Web: Let's have some serious fun.
