💬 观点Simon Willison
DOOMQL — 用 SQLite 递归 CTE 实现完整光线追踪,打造一个 Doom 风格游戏。
用 SQLite 递归 CTE 实现完整光线追踪,打造一个 Doom 风格游戏。
2026-07-13原文
本文为要点摘要,完整细节以原文为准。
🧭 一图看懂
由原文自动提炼 · 以原文为准点击任一分支,查看这一点的一句话解读
DOOMQL:SQLite 光线追踪游戏
让 SQLite 当游戏引擎,而非仅存数据
- SQL 负责移动、碰撞、敌人、战斗与像素
- 由 Peter Gostev 用 GPT-5.6 Sol 构建
⚙️ 流程拆解
STEP 1克隆 doomql 仓库
STEP 2uv 运行终端游戏
STEP 3生成 SQLite 数据库
STEP 4Datasette 加载数据库
STEP 5创建 Apps 显示画面
STEP 6每秒刷新并显示小地图
🔗 涉及的概念与玩家
- DOOMQL产品
- SQLite产品
- GPT-5.6 Sol模型
- Peter Gostev人物
- Datasette产品
- Datasette Apps产品
- 递归 CTE方法
- 光线追踪概念
- Peter Gostev—构建→DOOMQL
- DOOMQL—基于→SQLite
- DOOMQL—使用→递归 CTE
- DOOMQL—实现→光线追踪
- Peter Gostev—使用→GPT-5.6 Sol
- Datasette Apps—插件→Datasette
- Peter Gostev 用 GPT-5.6 Sol 构建了 DOOMQL,核心思想是让 SQLite 成为游戏引擎,而非仅数据存储。
- 游戏通过一个巨大的 SQL 递归 CTE 查询实现光线追踪,所有移动、碰撞、敌人、战斗和像素渲染均由 SQL 驱动。
- 作者利用 Datasette Apps 插件创建 HTML+JS 应用,实时显示游戏画面和迷你地图,展示了 SQLite 作为实时渲染引擎的潜力。
对开发者而言,这证明了 SQL 在非传统场景(如游戏引擎)中的强大能力,并展示了 AI 辅助编程如何快速实现复杂创意。
原文:DOOMQL · 作者 Simon Willison
🕸 顺着图谱继续读
- datasette-apps 0.2a0 — Datasette Apps 0.2a0 新增调试工具,让 AI 代理能隐形测试2026-08-01 · 共同涉及 Datasette Apps、Datasette
- datasette-agent 0.4a0 — Datasette Agent 新版本支持在用户浏览器中直接运行代码的 agen2026-07-31 · 共同涉及 Datasette、Datasette Apps
- Datasette Apps: Host custom HTML applications inside — Datasette 新插件 datasette2026-06-18 · 共同涉及 Datasette、Datasette Apps
- datasette-apps 0.1a2 — Simon Willison 介绍 Datasette Apps 0.1a2 更2026-06-15 · 共同涉及 Datasette Apps、Datasette