Un desarrollador ha logrado portar la lógica y el renderizador del videojuego original de 1993, Doom, exclusivamente a SQL, ejecutándolo dentro de una base de datos. Este proyecto, conocido como SQLDoom, permite que el bucle del juego funcione a la velocidad original de 35 FPS, mientras que el renderizador genera el búfer de imagen completo de 320x200 píxeles a una tasa de hasta 60 Hz en un portátil. Python se utiliza únicamente para la gestión del tiempo, la entrada de teclado y la visualización del bitmap resultante, dejando la lógica del juego y el renderizado puramente en la base de datos.
El proyecto se construye sobre DOOMQL, una herramienta anterior que utilizaba raycasting y se asemejaba más a Wolfenstein 3D. La nueva implementación aprovecha los árboles BSP (Binary Space Partitioning) de Doom para lograr una fidelidad visual y mecánica superior, permitiendo texturas, ángulos de pared arbitrarios y alturas de suelo variables. El formato .wad de Doom, altamente relacional, se tradujo a la base de datos en aproximadamente 1000 líneas de Python, un proceso que toma unos 18 segundos en un portátil. La arquitectura separa la lógica del juego, que opera a 35 Hz, del renderizador, que es una función pura de las tablas de estado del juego. Este diseño permite que el cliente solicite nuevos fotogramas con la máxima frecuencia posible, superando la limitación del bucle de juego. El proyecto incluye una versión shareware del primer episodio con modo Deathmatch de cuatro jugadores, donde los usuarios pueden jugar o consultar el estado del juego en vivo mediante SQL mientras esperan su turno.
