HeadlinesBriefing HeadlinesBriefing.com

在 SQL 数据库中渲染多尔顿

Ars Technica •
×

在数据库中渲染多尔顿是一次大胆的实验,尽管正如 Ars Technica 所指出的那样,这显然是一个坏主意。SQLDoom 项目使用一个小型 Python 客户端来管理输入、输出和游戏计时,而 Cedar DB 表处理游戏几何和状态。大约 1,300 行 SQL 查询跨越 89 个公共表表达式实现游戏逻辑并每秒生成 35 个位图帧缓冲区。这比之前的 Doom QL 项目有了重大改进,该项目仅实现了基于光线投射的灰度 ASCII 图形,让人联想起 Wolfenstein 3D。更新的 SQLDoom 生成的完整彩色 640x480 帧与原始可执行文件 indistinguishable。将多尔顿经典的 WAD 文件转换为关系数据库非常简单,因为原始游戏将关卡构建为顶点、线和扇区。甚至著名的二进制空间分区树也可以使用加载时为对象预先计算的 sort_key 翻译为 SQL,从而允许简单的“ORDER BY”语句确定每帧可见的墙壁,从而大大提高性能。

来源: Ars Technica · 由HeadlinesBriefing整理摘要