Loading Live Market Data...
Technologie

Un développeur réussit à faire tourner Doom dans une base de données SQL

Ars Technica•3 min read•3 oct. 2026•Updated: il y a 1 j•REF: OPA-261003-PRO
Un développeur réussit à faire tourner Doom dans une base de données SQL

Points Clés

  • SQLDoom génère 35 images en couleur de 640x480 par seconde en utilisant 1 300 lignes de code SQL.
  • Le projet utilise 89 expressions de table communes pour traiter la géométrie et l'état du jeu dans CedarDB.
  • Vogel a réussi à mapper les fichiers WAD de Doom dans des tables relationnelles en utilisant des clés de tri précalculées.
Listen to Article0%
Share Story

Dans une prouesse d'ingéniosité technique, le développeur de logiciels Lukas Vogel a réussi à faire tourner le jeu vidéo classique Doom entièrement au sein d'une base de données SQL. Bien que Vogel admette lui-même que faire fonctionner un jeu haute performance dans une base de données est objectivement une mauvaise idée, le projet sert de démonstration profonde de la puissance et de la flexibilité des structures de requêtes SQL modernes. En tirant parti d'une configuration spécialisée, le projet parvient à contourner les contraintes traditionnelles des moteurs de jeu pour donner vie au célèbre jeu de tir de 1993 en utilisant uniquement des techniques de gestion de données relationnelles.

L'architecture technique du projet SQLDoom repose sur un petit client Python qui agit comme un pont, gérant les entrées utilisateur, les sorties et la synchronisation du jeu. Derrière cette interface, le travail lourd est effectué par CedarDB, qui suit la géométrie et l'état du jeu. Le moteur utilise environ 1 300 lignes de code SQL réparties sur 89 expressions de table communes. Cette logique complexe génère 35 images bitmap par seconde, offrant une expérience étonnamment fluide qui reflète les mesures de performance du jeu original.

Cette réalisation fait suite à la précédente tentative de Vogel, DoomQL, qui a fait ses débuts l'année dernière en tant que jeu de tir multijoueur entièrement construit en SQL. Cette itération précédente était limitée par des graphismes ASCII en niveaux de gris basés sur le lancer de rayons, qui ressemblaient aux visuels primitifs de Wolfenstein 3D. En revanche, SQLDoom représente un saut évolutif significatif, produisant des images en couleur de 640×480 qui sont visuellement indiscernables de l'exécutable original de Doom, prouvant que les bases de données relationnelles peuvent gérer des tâches graphiques complexes lorsqu'elles sont poussées à leurs limites absolues.

Les implications de ce projet vont bien au-delà de la simple nouveauté, car elles mettent en évidence le potentiel des bases de données à gérer des charges de travail non traditionnelles. En convertissant les fichiers WAD classiques de Doom en tables relationnelles, Vogel a démontré que les niveaux du jeu, composés de sommets, de lignes et de secteurs, peuvent être mappés directement sur des structures de base de données. L'utilisation de clés de tri précalculées pour les arbres de partitionnement d'espace binaire permet au système d'utiliser des instructions standard 'ORDER BY' pour déterminer quelles parties des murs afficher, améliorant considérablement les performances en temps réel.

En regardant vers l'avenir, le succès de SQLDoom remet en question les limites conventionnelles de l'utilité des bases de données. Bien qu'il soit peu probable que les développeurs commencent à créer des jeux commerciaux en SQL, le projet fournit des informations inestimables sur l'optimisation des requêtes et l'efficacité du traitement des données. Alors que les bases de données continuent d'évoluer, l'expérience de Vogel témoigne du fait qu'avec suffisamment de créativité, même les structures de données les plus rigides peuvent être pliées pour effectuer des tâches pour lesquelles elles n'étaient pas initialement conçues.

Share Story

Reader Discussion

Leave a Comment

0 Comments

Loading comments...

MK
Mohammad KaramaliStaff JournalistToronto, Canada

Owner

OWNER

Editorial Oversight & Machine-Assisted Reporting

Human-in-the-Loop Verified

Editorial Oversight & Machine-Assisted Reporting: This dispatch was synthesized and localized via OPA automated intelligence under continuous human editorial supervision.

Source Dépêche

This report was synthesized from Ars Technica under journalistic fair use.