Vai al contenuto
Italiano
Contenuto FikirPilot

Abusare di SQL per giocare a DOOM

Aggiornato: 26/09/2026 · 2 min di lettura · 370 parole

Pubblicato: · Notizia ricevuta: · Tempo di elaborazione: 4 min

Abusare di SQL per giocare a DOOM
Corridoio buio di un data center

Sebbene SQL sia considerato dalla maggior parte delle persone uno strumento per gestire grandi insiemi di dati, in sostanza è un linguaggio di programmazione con caratteristiche presenti in linguaggi generici come C o Python. Pur non essendo progettato per un uso generico, può svolgere compiti inaspettati. Per dimostrare questa capacità, il team di CedarDB ha portato il DOOM originale in SQL. I dati WAD, cioè quasi tutto ciò che si trova al di fuori del motore, sono stati archiviati in tabelle. Più difficile è stato mantenere la velocità di 35 fps del gioco e generare le immagini: la parte di rendering è composta da 1300 righe di SQL distribuite in 89 espressioni di tabella comune (CTE). Nel resto del progetto, 4000 righe di SQL sono affiancate da un po’ di Python per la gestione della tastiera, dei tempi e delle immagini bitmap. Il fatto che DOOM non sia realmente in 3D e che sia stato sviluppato prima delle schede grafiche consente trasformazioni dei dati adatte a SQL. Il codice è disponibile su GitHub; esistono inoltre versioni realizzate con espressioni regolari e in Microsoft Word.

Perché è importante

Questo lavoro mostra che considerare SQL limitato all’interrogazione e alla gestione dei dati potrebbe non riflettere pienamente la capacità espressiva del linguaggio. In particolare, offre uno esempio concreto, soprattutto per gli sviluppatori di database e per chi esamina i limiti dei linguaggi di programmazione, di come un carico di lavoro insolito come la logica di gioco possa essere modellato mediante strutture relazionali. Il fatto che DOOM non utilizzi una vera struttura 3D e sia stato sviluppato prima dell’hardware grafico è stato determinante per rendere possibile tutto ciò; di conseguenza, il risultato non significa che ogni applicazione grafica funzionerebbe in modo analogo con SQL. Il codice su GitHub e le altre versioni realizzate utilizzando espressioni regolari e Microsoft Word mostrano come la stessa idea possa essere messa alla prova con strumenti diversi. La questione ancora aperta è in quali attività pratiche questo approccio potrebbe risultare significativo al di là di una dimostrazione divertente.

Contesto

DOOM non è un nome nuovo nell’archivio di FikirPilot: negli ultimi 90 giorni abbiamo pubblicato 3 notizie in cui compare questo nome; la più recente è datata 15 settembre 2026.

Fonte: Hackaday