开发者将《毁灭战士》完整移植至 SQL 数据库运行
开发者卢卡斯·沃格尔(Lucas Vogel)发布了名为 SQLDoom 的项目,成功将经典游戏《毁灭战士》(Doom)的游戏逻辑和渲染器完全移植到 SQL 中,使其能够在数据库中直接运行。这一尝试回应了此前社区对类似项目 DOOMQL 的批评。

在 2025 年的一篇早期报道中,DOOMQL 虽然实现了在数据库中运行 Doom 的概念,但其视觉效果更接近 3D 怪物迷宫,而非 90 年代标志性的像素风格。当时有观点认为,说服 SQL 处理整个渲染管道可能并非最佳实践。然而,黑客新闻(Hacker News)上的用户指出,之前的版本更像是《德军总部》(Wolfenstein),因为它使用了光线投射(raycasting)技术,而 BSP 树遍历才是使《毁灭战士》具有革命性意义的核心技术。
为了纠正这一偏差,沃格尔开发了 SQLDoom。该项目遵循严格的技术限制:必须还原真正的 Doom 视觉体验,且渲染过程必须纯粹基于 SQL。根据定义,唯一可接受的 SQL 输出是包含每个像素确切 RGB 值的表或位图,同时游戏循环也完全由 SQL 驱动。Python 仅负责处理时间调度、键盘输入以及最终的位图显示,其余所有核心逻辑均通过 SQL 查询和 CedarDB 数据库执行。
沃格尔表示,他很高兴证实了将真正的 Doom 移植为纯 SQL 实现是可行的。尽管 SQLDoom 与任何现有的 Doom 端口没有共享一行代码,但他开始在空闲时间亲自游玩这款游戏,这种体验依然显得十分奇特。
性能方面,SQLDoom 可以在搭载 Ryzen 7 7840U 处理器的笔记本电脑上流畅运行。此外,玩家还可以通过位于欧盟和美国的服务器进行在线多人游戏。测试发现服务器端存在一定的延迟,但这主要归因于服务器环境本身,而非 SQL 移植版本的性能瓶颈。
值得注意的是,CedarDB 是一个编译型数据库系统,能够将复杂查询最终编译为机器代码,因此该演示并未触及系统的性能极限。尽管存在技术挑战,但相较于重建另一个常见的在线商店示例,在数据库中运行《毁灭战士》无疑更具趣味性和探索价值。





