DOOM, simulated and rendered inside the Firebird SQL database using WASM
A developer has successfully simulated and rendered the classic game DOOM entirely within the Firebird SQL database using WebAssembly. The project uses SQL queries to handle game logic, rendering, and sprite management, displaying the output in a browser canvas.
Why it matters
This project demonstrates the creative potential of WebAssembly and SQL, pushing the boundaries of how database engines can be utilized for non-traditional tasks.
DOOM, simulated and rendered inside the Firebird SQL database , running entirely in your browser on Firebird 6 compiled to WebAssembly .
▶ Play: https://mariuz.github.io/firebird-doom/
Every game tic is a PSQL procedure call. Every frame is a SELECT . JavaScript only reads the keyboard and paints the rows Firebird returns.
These screenshots come from npm run screenshots , which runs the same SQL and rasteriser as the page, headless in Node.
This project follows CedarDB's SQL DOOM (the original WAD, rendered by a database) and DOOMQL (a DOOM-like game in pure SQL), and DuckDB-DOOM (a SQL raycaster in the browser through DuckDB-WASM). This one is graphical, plays real DOOM maps, and runs Firebird in the tab.
Get smarter about the news
Sign up free for a feed built around what you actually care about, Dive Deeper research on any story, and the full text of every article.
Create free accountAlready have an account? Sign in