微软 Azure 首席技术官 Mark Russinovich 在 GitHub 发布了名为 DoomPaint 的开源项目,该项目通过修改显示方式,使经典射击游戏 Doom 能够在 Windows 画图(Paint)应用内运行。项目采用 ViZDoom 引擎驱动,将每一帧画面通过剪贴板实时粘贴至 Paint 画布,实现独特的”电子表格级帧率”游戏体验。

技术实现原理
DoomPaint 的核心机制在于解耦游戏引擎渲染与显示输出。ViZDoom 引擎在后台无头运行真实的 shareware DOOM1.WAD 文件,每生成一帧画面便将其放入 Windows 剪贴板,随后自动执行粘贴操作覆盖至 Paint 画布。Russinovich 在 GitHub 页面强调:”Paint 仅负责渲染,不进行任何计算,这就是整个项目的趣味所在。”
独特交互设计
该项目充分利用 Paint 原生功能创造差异化体验。Ctrl+Z 撤销快捷键被重新映射为”时间回退”功能,玩家可通过连续撤销回溯游戏进程。此外,用户可随时通过 Paint 菜单将当前帧保存为 PNG 文件,仿佛这是一幅手绘作品而非游戏截图。
运行环境与控制方案
项目依赖 Python 环境运行,DOOM1.WAD 共享软件文件已内置于代码库。用户下载并解压 DoomPaint-main.zip 后执行 run.bat 即可启动。由于 Windows 系统快捷键可能与游戏操作冲突,项目提供了替代控制方案,Fire 等核心动作可通过备用快捷键触发。GitHub 页面同时提供分辨率调整、音频开关等启动参数配置选项。
via Neowin