← Back to the feed

Developer recreates Doom in SQL with full-colour graphics at playable speeds

Ars Technica ·

Developer Lukas Vogel has created SQLDoom, a version of Doom whose game logic and graphics are generated largely through SQL queries. The project shows that a relational database can render a recognisable, full-colour version of the classic game at playable speeds, while also exploring how database features could help manage multiplayer game state.

A small Python client handles input, timing and display, while CedarDB tables track the game and roughly 1,300 lines of SQL produce 640×480 frames. Vogel reports around 60 frames per second on a Ryzen 7 laptop, with busy scenes sometimes falling to 35 fps. SQLDoom builds on an earlier SQL-based attempt that produced slower, greyscale ASCII graphics; Vogel says a database’s consistent snapshots and concurrency controls could help avoid conflicting updates in multiplayer.

  • SQLDoom renders full-colour Doom using about 1,300 lines of SQL.
  • It runs at around 60 fps, with dips to 35 fps in busy scenes.
  • Vogel says database features could help keep multiplayer game state consistent.

New here? Start with this

Doom is a landmark video game from 1993 that pioneered the first-person shooter genre and remains culturally significant as a frequent target for creative reimplementation by programmers. SQL is a query language typically used to manage and retrieve information from structured data collections, not to generate video game graphics.

Video games are normally built using specialised game engines and programming languages designed for real-time graphics, physics and input processing. The recent project represents an unusual technical demonstration: using a database system to generate a playable version of Doom including its full-colour graphics.

Databases have built-in mechanisms for managing conflicts when multiple users access data simultaneously, ensuring information stays consistent. This approach could have practical applications for multiplayer game design, making the project potentially relevant beyond its technical novelty.

Software

Read the full article at the source →

Originally published by Ars Technica as “Someone got Doom in an SQL database”.