Cientista de computação utiliza SQL puro para criar jogo multiplayer inspirado em DOOM
O DOOMQL, desenvolvido por Lukas Vogel, cofundador da empresa de desempenho de bancos de dados CedarDB, foi criado em aproximadamente 150 linhas de código ao longo de um mês, utilizando o próprio CedarDB. O jogo roda a cerca de 30 FPS em resolução de 128 x 64 pixels e utiliza SQL tanto para renderização quanto para entradas no modo multiplayer.
Diferentemente de projetos anteriores, como o DuckDB-DOOM de Patrick Trainer, que roda em uma única página web usando WebAssembly e JavaScript para renderização e controle de entradas a cerca de 8 FPS, o DOOMQL mantém o estado do jogo em tabelas que incluem mapa, jogadores, inimigos, entradas, configurações e sprites.
A renderização é realizada por uma pilha de views SQL que implementa raycasting e projeção de sprites, enquanto o loop do jogo é executado por um pequeno script shell que processa um arquivo SQL cerca de 30 vezes por segundo. O cliente utiliza aproximadamente 150 linhas de Python para capturar entradas e consultar o banco de dados, gerando a visão 3D.
O projeto está disponível no repositório cedardb/DOOMQL no GitHub.