Doom rendered in OpenSCAD geometry, now playable in browser
Doom rendered in OpenSCAD geometry, now playable in browser
Creator here. Third in a series of running DOOM on engineering tools - KiDoom rendered walls as PCB traces in KiCad, ScopeDoom piped vectors through a headphone jack to an oscilloscope. This one exports frame geometry to OpenSCAD, a parametric CAD tool. The browser version uses Three.js to render the same geometry the desktop version writes to .scad files. The desktop version was stuck at slideshow framerates until I fixed OpenSCAD's WASM renderer for another project - the npm package is from 2022 and silently ignores the Manifold flag. Switching to the 2025 build took renders from 2 minutes to 2 seconds. (Writeup: https://phaestus.app/blog/blog0031 ) But openscad-wasm isn't a renderer, it's a compiler. Each frame was compiling to STL then rendering - maybe 1fps sequential, better parallelized but with ~1s latency. Fine for previewing an item, but as a rendering pipeline it's no good for real time playback. So I removed openscad-wasm entirely and wrote a custom parser that converts OpenSCAD code to an AST, evaluates it to geometry, and renders via Three.js. The scad code is the only input - what you see comes from the same .scad you can copy, download, and run in desktop OpenSCAD or the playground to validate. Technical writeup: https://www.mikeayles.com/#openscad-doom YouTube: https://youtu.be/l9nnV-mO4wY Desktop version source: https://github.com/MichaelAyles/openSCAD-DOOM Web version source: https://github.com/MichaelAyles/openSCAD-DOOM-web
Share cardActual performance
Launch Intel predictions
Analyze your own launch →Incorrect prediction on native model
Similar products
Pong and Tetris playable via Telnet
Halo 3's Guardian, playable in the browser, as my personal website
Snake-inspired FOSS game Dungeon Rush playable in the browser
Playable Ultimate Tic Tac Toe
Xkcd mario-ish: a playable xkcd mario level
I made Five Nights at Freddy's playable in real life
Lego Island Playable in the Browser
A Playable Demo of the Young Lady's Illustrated Primer, Neal Stephenson
Terra Firma, a playable erosion simulation
A playable bingo card for being stuck in meeting hell