模改作者让《GTA III》跑在《GTA: 圣安地列斯》的游戏内电视上

查看原文 HN 讨论

文章摘要

模改作者 Dryxio 演示了一件听起来不太可能的事:《GTA III》正在《GTA: 圣安地列斯》里的一台电视机上运行,而且是可玩的。视频里 CJ 站在电视机前,屏幕上《GTA III》的世界照常运转,玩家可以随时在「操控圣安地列斯里的 CJ」和「操控 GTA III 里的 Claude」之间切换。

关键在于,这不是把预录视频或外部窗口贴到贴图上。按 Dryxio 的说明,《GTA III》是在《圣安地列斯》的同一个进程内运行的,两个游戏共享同一个 Direct3D 设备,《GTA III》直接把画面渲染进电视机那块实时 GPU 贴图里。更重要的是,《圣安地列斯》的世界在这期间并没有暂停或被全屏界面覆盖——两个游戏世界是同时在被模拟的。

这次演示建立在 Dryxio 早前一个更大的项目之上:2026 年 2 月发布的一个 mod,把《GTA III》和《GTA: 罪恶都市》一并移植进了《圣安地列斯》,每个游戏都作为一个独立引擎在《圣安地列斯》的进程中运行,各自保留独立的剧情进度、存档、设置和玩法。技术底座是社区逆向工程项目 re3 / reVC(《GTA III》和《罪恶都市》的源码级重制)以及 librw(RenderWare 图形层的开源重实现)的修改版。发布的公开包不包含《GTA III》和《罪恶都市》的游戏文件,玩家必须自己拥有这两款游戏并提供资源文件。

而 Dryxio 后来又把这个实验推进了一层:第二段演示里,《罪恶都市》跑在《GTA III》的一块贴图上,而《GTA III》本身又跑在《圣安地列斯》的电视机上——三款游戏在同一个进程里同时活着,每一层都可以实时游玩。作者本人在说明里用全大写强调:这不是视频贴图,全部游戏是活的、在同一进程内运行,没有任何东西是从别的程序流过来的。

HN 评论精华

评论区一半在惊叹技术实现,一半在怀念《圣安地列斯》的 mod 黄金年代。