---
title: "SQLDoom Project Renders Classic Game Using SQL Database"
url: https://noti.group/sqldoom-project-renders-classic-game-using-sql-database/
language: en
publisher: "Noti Group"
section: "Technology"
published: 2026-10-02T21:19:05.000Z
updated: 2026-10-03T01:29:28.078Z
id: 326e6c81-ea69-4cb8-af9a-52e6c7c26e18
source: "Ars Technica https://arstechnica.com/gaming/2026/10/can-it-run-doom-sql-database-edition/"
attribution: "Link to https://noti.group/sqldoom-project-renders-classic-game-using-sql-database/ and name Noti Group when you quote or summarize this story."
---

# SQLDoom Project Renders Classic Game Using SQL Database

A team has successfully rendered the classic game Doom using an SQL database with a combination of Python and CedarDB.

A remarkable project has emerged in the world of gaming and database technology, where someone has successfully rendered the classic game Doom using an SQL database. The achievement is all thanks to a team's innovative approach, which utilizes a combination of Python and CedarDB to bring the game to life.

At its core, the SQLDoom project relies on a small Python client that manages input and output, as well as timing and display of each frame on the screen. Meanwhile, behind the scenes, the system employs CedarDB tables to track the game's geometry and state. These tables are then queried using an impressive 1,300 lines of SQL code spread across 89 common table expressions.

This complex setup generates full-color frames at a rate of 35 per second, with each frame displaying at a resolution of 640x480 pixels - eerily reminiscent of the original Doom executable. This marks a significant improvement over the project's predecessor, DoomQL, which struggled to produce even basic graphics.

The SQLDoom project's success has sparked interest among gamers and tech enthusiasts alike, who are eager to see how this innovative approach will continue to evolve in future iterations.

The conversion of Doom's classic WAD files to a relational database was made relatively simple by the game's original design. The game breaks down levels into vertices, lines, sectors, and other components that can be easily translated into SQL tables.

Breaking down Doom's binary-space partition trees into SQL also proved straightforward. A pre-computed sort\_key for objects at load time allowed for a simple "ORDER BY statement to determine which parts of walls to display or ignore in each frame, significantly improving performance.

However, translating the database back into rendered first-person frames posed some challenges. One key issue was developing an algorithm to render floors and ceilings without relying on the original game's efficient column-by-column rendering techniques.

To address this problem, Vogel employed a somewhat unconventional approach, which he describes as pretty hacky. He used iteration over an ordered list of panels to achieve the desired rendering effect.

Despite the increased overhead of reading and writing to SQL tables for each action, Vogel reported that DoomSQL ran at approximately 60 frames per second on a Ryzen 7-powered laptop. However, performance occasionally dipped to around 35 fps during busy scenes.

This was still an impressive achievement, particularly when considering the benefits that come with using a database-based approach. Notably, the steady reference snapshot of the game state and inherent concurrency features offered significant advantages for running a multiplayer server.

The unusual combination of a game database and a first-person shooter is now possible thanks to an innovative project that brings Doom into an SQL database environment.

This setup leverages CedarDB's ability to handle concurrency and create a reference snapshot" of the game state, allowing for seamless multiplayer experiences. The use of CedarDB as the underlying technology also enables efficient data management and retrieval. Overall, this unique experiment successfully merges two distinct domains: gaming and database administration.

---
Source: [Ars Technica](https://arstechnica.com/gaming/2026/10/can-it-run-doom-sql-database-edition/)  
Published by Noti Group: https://noti.group/sqldoom-project-renders-classic-game-using-sql-database/
