SurrealEngine · dpjudas/SurrealEngine
SurrealEngine 用 C++ 重实现虚幻引擎 1(UE1),当前聚焦让《Unreal(Gold)》与《Unreal Tournament(UT99)》可运行,未来或扩展至更多 UE1 游戏。需自备原版游戏;支持 Windows 10+、macOS 15+ 与现代 Linux,显卡需支持 Direct3D 11...
AvP Forever 围绕《Aliens versus Predator》(异形大战铁血战士,1999 年,由 Rebellion 开发)如今可公开获取的游戏源码做长期维护。它并不打算从零重写这款游戏,而是把过去二十多年里分散在不同作者、不同时间点上的移植成果收集进同一个 Git 仓库,建立统一基线后持续整理,最终产出一个能在 Linux 上正常运行的版本,供 Luxtorpeda(在 Linux 上用原生引擎运行 Steam 游戏的兼容工具)使用。
README 把阶段目标写得非常直接:先做出一个「well-working Linux port」。也就是说,仓库当前的重心是移植与工程维护,而不是新增玩法。文档没有对完成度、可玩性做任何承诺,读者不宜把仓库里的分支直接等同于某个已发布的成品。
other/neuromancer/avp 中的改动使用 libav 处理 FMV 播放,体现了老式专有格式向开源解码库迁移的常见做法。主分支承载面向 Linux 的移植工作,历史分支则被统一收进 other/* 命名空间,每条分支对应一个旧移植或相关项目。这种组织方式让读者可以在同一仓库里横向比对不同移植的差异,而不必四处翻找 tarball 和 SVN 快照。
一个关键设计是统一基线:几乎所有 other/* 分支都被 rebase 到 Rebellion 官方源码发布版之上(Build 116 或 Build 117),同时尽量保留原始的 git-blame 归属信息。这样每条分支都共享同一个可信起点,每行代码最初出自哪个移植、哪位作者,也还能追溯回去。
other/icculus-releases:收录 icculus.org 上发布的三个快照(avp-20141225、avp-20150214、avp-20170505-a1)。这些 tarball 的内容被 rebase 到官方源码 Build 117 之上,包含基于 SDL1.2 的移植以及实验性的 SDL2 支持,覆盖 Linux 与 OS X。other/avp-source-code-update:来自 Assembla 上 SVN 仓库(^/branches/workbranch/trunk/)的代码,导入 Git 后 rebase 到官方源码 Build 116。这条分支包含面向 Windows XP/Vista/7/8 的移植、Direct3D9 渲染器,以及大量修复与改进。other/icculus-2009:icculus 开发分支到 2009 年 11 月为止的完整历史,从 mbait/avpmp 的 master 分支导入,rebase 到官方源码 Build 116。other/icculus-releases-rebased-1:把 icculus 快照重新 rebase 到 other/icculus-2009 之上。分支末端指向的代码树与 other/icculus-releases 相同,区别只在于历史记录更完整、更细致。other/neuromancer/avp:从 neuromancer/avp 的 master 分支导入,rebase 到 other/icculus/release-rebased-1。分支里包含为 MorphOS 发布版开发的部分改动,并被移植到面向 Linux 的 icculus avp-20170505-a1 版本上;其中包含使用 libav 播放 FMV 过场动画的改动。other/scraft/avpmp:从 Scraft/avpmp 的 master 分支导入,rebase 到 other/icculus-2009。这条分支包含为 Pyra 与 OpenPandora 掌机提供 OpenGL ES 支持的改动。从这张列表能看出一条清晰的时间线:官方源码发布 → icculus 的跨平台移植 → 各社区分支(MorphOS、掌机、Windows)→ 本项目统一收拢并 rebase。
README 明确说,当前的直接目标是产出一个适合 Luxtorpeda 的、可正常工作的 Linux 移植。Luxtorpeda 的用途是在 Linux 上以原生引擎运行游戏,因此这里需要的是一份能在 Linux 上编译并跑起来的原生版本,而非通过 Wine 之类的方式转译。具体如何被 Luxtorpeda 集成、需要哪些构建产物,README 未展开说明,需以仓库实际内容为准。
other/icculus-2009 读历史,再看 other/icculus-releases 看整合结果。README 只描述了分支来源与目标,没有给出构建步骤、依赖清单、已知问题列表,也没有说明当前移植的可玩程度。仓库中的分支数量较多,各分支的完成度并不一致,实际可用性需要读者自行编译验证。若打算动手,建议先确认所选分支对应的基线版本(Build 116 或 Build 117),再检查该分支所用的图形后端与目标平台是否匹配。
NBlood 是用 EDuke32 引擎技术与开发思路对 Build 引擎游戏所做的逆向工程移...
Frogatto & Friends 是一款 2D 横版动作冒险游戏,主角是一只青蛙;开发团队...
CatacombGL 是 Catacomb 3D 与 Catacomb 冒险三部曲(Abyss、Armageddon、Apo...