网易首页 > 网易号 > 正文 申请入驻

用SQL跑《毁灭战士》?这群人真把游戏塞进了数据库

0
分享至

你大概从没想过,一个用来查数据、做报表的数据库语言,能跟一款三十多年前的射击游戏扯上关系。但有人真的这么干了——把初代《毁灭战士》整个搬进了SQL里。

对大多数非技术背景的人来说,SQL就是个管理大型数据集的工具。这确实是它被设计出来的用途。可它骨子里仍然是一门编程语言,带着C或Python这类通用语言才有的不少特性。它本来不是为通用任务准备的,但真拿它去做一些程序员意想不到的事,它居然也能扛下来。


他们到底做了什么

来自CedarDB的一个团队,把初代《毁灭战士》移植到了SQL上。这既是在展示SQL的能力,某种程度上也是在秀一把他们玩SQL的手艺。

项目把WAD数据——基本上就是除引擎之外的所有东西——存进了一系列表里。跟项目其余部分比起来,这一步还算简单。真正麻烦的地方在于两件事:一是管理把游戏锁在35 fps上的时序,二是渲染画面。

他们的渲染过程用了1300行SQL,分布在89个公共表表达式(CTE)里。对这门语言来说,这已经算是相当进阶的用法了。项目剩下的部分还有4000行SQL,另外配了一点Python,用来处理键盘输入、时序,以及显示生成的位图。

为什么偏偏是《毁灭战士》

说来有点反直觉,《毁灭战士》可能恰恰是最适合跑在SQL上的游戏。

它诞生在一个还没有专用显卡的年代,而且它并不是真正的3D。为了让它看起来像3D,当年的程序员不得不做大量取巧的处理。这些处理带来了很多数据变换,而这些变换恰好特别适合用SQL来做。

几乎可以说,《毁灭战士》最初的渲染器,就像是一个对SQL了如指掌的人写出来的。

想自己试试的话

这个项目的源代码已经放在GitHub上,感兴趣的人可以去找来跑跑看。

如果你对《毁灭战士》的各种奇葩移植版本有兴趣,还有别的选择:

  • 一个用正则表达式实现的版本
  • 一个跑在Microsoft Word里的版本

一款老游戏,一门老语言,凑在一起反而让人重新看了一眼那些被我们默认了用途的工具。SQL不只是查数据的,它还能做很多你以为它做不到的事——只是大多数人没往那个方向想过。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
43岁范冰冰受封拿督,事业疑获新大佬支持,全面进军海外市场

43岁范冰冰受封拿督,事业疑获新大佬支持,全面进军海外市场

萌神木木
2025-08-24 13:52:35
一个国家能蠢到什么程度?看看法国就明白了:法国黑人接近800万,巴黎新生儿里70%是黑人

一个国家能蠢到什么程度?看看法国就明白了:法国黑人接近800万,巴黎新生儿里70%是黑人

怪味历史连连看
2026-09-08 01:55:32
13票赞成通过新规则!莎拉弹劾门槛暴跌,政治生命命悬一线!

13票赞成通过新规则!莎拉弹劾门槛暴跌,政治生命命悬一线!

老范谈史
2026-09-26 19:52:44
3-4大冷门,张本智和不敌低排名选手,无缘亚运乒乓球男单四强

3-4大冷门,张本智和不敌低排名选手,无缘亚运乒乓球男单四强

侧身凌空斩
2026-09-26 17:01:18
心理学:人品极差的人,开口闭口全是这两句话,尽量不要去深交

心理学:人品极差的人,开口闭口全是这两句话,尽量不要去深交

心理观察局
2026-08-18 07:06:09
印度网红愤怒发文,来中国旅游居然被无视,为什么没人跟自己合影?

印度网红愤怒发文,来中国旅游居然被无视,为什么没人跟自己合影?

新游戏大妹子
2026-09-26 12:48:16
吉克隽逸,头像已变黑

吉克隽逸,头像已变黑

南方都市报
2026-09-26 14:23:06
004航母出现左舷升降机及外飘模块,“世一航”形态越来越清晰了

004航母出现左舷升降机及外飘模块,“世一航”形态越来越清晰了

爱迷彩的老虎
2026-09-26 10:47:31
旅客将2000万日元藏匿在4罐薯片盒中,出境时被查获,折合约13万美元

旅客将2000万日元藏匿在4罐薯片盒中,出境时被查获,折合约13万美元

扬子晚报
2026-09-26 14:12:59
“小孩姐”陈妤颉,收到一本《五年高考三年模拟》,不是汪顺送的!名古屋亚运会女子100米决赛后名场面

“小孩姐”陈妤颉,收到一本《五年高考三年模拟》,不是汪顺送的!名古屋亚运会女子100米决赛后名场面

开成运动会
2026-09-26 07:08:59
“喝完泰奶差点要见太奶了”冲上热搜,第一批喝泰奶的“受害者”已经出现……

“喝完泰奶差点要见太奶了”冲上热搜,第一批喝泰奶的“受害者”已经出现……

极目新闻
2026-09-25 13:33:30
美国称:中国最可怕的是,中国淘汰4000年的东西他们还在用

美国称:中国最可怕的是,中国淘汰4000年的东西他们还在用

王二哥老搞笑
2026-09-14 07:36:12
新研究发现阿尔茨海默病损伤或始于大脑之外 免疫系统成为关键线索

新研究发现阿尔茨海默病损伤或始于大脑之外 免疫系统成为关键线索

cnBeta.COM
2026-09-24 14:06:06
亚运田径200米跑中国男女两将退赛 汶颂过于强势葛曼棋受伤连锁反应

亚运田径200米跑中国男女两将退赛 汶颂过于强势葛曼棋受伤连锁反应

威猛孟巍
2026-09-26 13:35:07
93岁医学老专家曹泽毅:我从不养生,日常坚持这7件小事就够了

93岁医学老专家曹泽毅:我从不养生,日常坚持这7件小事就够了

小方说跑步
2026-09-24 17:44:58
22.25万 !特斯拉新车突然官宣降价

22.25万 !特斯拉新车突然官宣降价

科技堡垒
2026-09-26 09:18:36
TyC体育:阿根廷无梅西时固定使用劳塔罗和阿尔瓦雷斯双中锋

TyC体育:阿根廷无梅西时固定使用劳塔罗和阿尔瓦雷斯双中锋

懂球帝
2026-09-26 19:08:15
“父爱永久消失”,高考女儿起诉父亲不买苹果手机:不如赶出家门

“父爱永久消失”,高考女儿起诉父亲不买苹果手机:不如赶出家门

泽泽先生
2026-09-25 15:05:14
中国“安全套大王”被抓,卖了一辈子避孕套,最终栽在了自己手里

中国“安全套大王”被抓,卖了一辈子避孕套,最终栽在了自己手里

北海史记
2026-08-10 13:04:27
谢娜带女儿去乐园游玩,母女三人手牵手,跳跳俏俏长高到妈妈肩膀

谢娜带女儿去乐园游玩,母女三人手牵手,跳跳俏俏长高到妈妈肩膀

汪巗的创业之路
2026-09-26 17:49:03
2026-09-26 21:12:53
有态度网友ytd2993
有态度网友ytd2993
有态度网友ytd
50文章数 28关注度
往期回顾 全部

游戏要闻

最高7千块!GTA6新实体被黄牛炒疯了 甚至不含游戏

头条要闻

《甄嬛传》官微发文悼念刘欢 网友叹他和姚贝娜都走了

头条要闻

《甄嬛传》官微发文悼念刘欢 网友叹他和姚贝娜都走了

体育要闻

奇迹之子,亚运七金王,张展硕的19岁秋天

娱乐要闻

刘欢离世前疑已有预感 默默提前告别

财经要闻

盖茨:AI已强大到足以造成"10亿人死亡"

科技要闻

拖了近10年,特斯拉Semi终于量产!

汽车要闻

可城可野可旅行 捷途旅行者 7 双车预售14.99万起

态度原创

本地
亲子
游戏
时尚
公开课

本地新闻

中秋逛白塔寺,体验国医妙荟雅集

亲子要闻

养儿不防老,女婿胜亲儿(3)

《三角洲行动》两周年赛季上线 新地图与模式计划

老钱们沙漠远游穿什么?看看这场秀就知道

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版