2020年虚幻引擎1在MESA和Linux上的悲哀案例

2020-05-22 11:33:14

世纪之交游戏行业最伟大的战斗之一是地震III竞技场和虚幻锦标赛之间的对峙。由于两名多人专注的第一人称射击运动员发布的时间相隔仅几周,这两场比赛最终将针锋相对是不可避免的。如果被追问,我总是不得不说我更喜欢前者,但对我们Linux用户来说,值得注意的是,有一段时间,这两款游戏在同一发行商的领导下生活得很和谐。

与其他任何开发者相比,Loki Software可以被认为是创建了最先进的Linux游戏行业的功臣,在他们当时仍在高歌猛进的情况下,他们继续在我们的平台上发布了这两款游戏。不仅仅是流行的游戏,地震III竞技场和虚幻锦标赛也是内部引擎技术的旗舰。虚幻引擎1和id Tech 3将继续用于其他数十款游戏,其中一些游戏也将在2002年关闭之前由Loki Software移植。

虽然Quake III竞技场在2005年发布源代码时被授予了永恒的位置,但社区对虚幻锦标赛的支持为游戏注入了一些新的活力,即使有封闭二进制的限制。然而,到了2018年,这款游戏将不再为梅萨用户推出游戏。由于某些核心文件被非静态地链接到古老的libstdc++库,因此游戏只能在免费图形堆栈上的软件模式之外运行,并使用被黑客攻击的台面补丁。

在使用Arch构建系统旋转我自己的Mesa包之后,我使用来自GOG.com和uut-install-436-get的数据重新安装了虚幻锦标赛。运行Linux安装程序。我现在可以开始玩游戏了,没有产生分段故障,除了一些音质问题外,一切似乎都很正常。在安装了第三方OpenGL渲染器、OpenAL音频设备、视频和S3TC纹理后,游戏的外观和声音都比以往任何时候都要好。

由于我喜欢机器人的死亡比赛,我花了一段时间才发现,从菜单切换到任何其他类型的游戏模式都会导致游戏崩溃,并发出信号:SIGIOT[IoT Trap]";Error(信号:SIGIOT[IoT Trap]";Error(SIGIOT[IoT Trap]";Error))。这一点,加上一开始就需要应用台面补丁,严重阻碍了这款游戏在我的下一个LAN派对上使用。随着虚幻黄金的Linux版本,如icculus.org或虚幻227提供的版本,也依赖于这款游戏来工作,这也让他们退出了竞争。

正如我之前提到的,虚幻锦标赛并不是洛基软件开发的唯一一款虚幻引擎1游戏。鲁恩必须是他们制作的最合适的港口,该公司的同名挪威骗子神甚至以大反派的身份出现。它也是Loki Software在关闭之前发布的最后几个端口之一,因此它足够现代化,让我对无法再让它工作的事实感到畏缩。

有了打了补丁的台面,游戏启动和渲染效果都很好,但你在使用OpenGL时不能再加载保存的游戏,这意味着你再次被困在软件模式下。我在虚幻锦标赛上遇到的嘎嘎作响和结结巴巴的音频也出现在这里,但现在不可避免,因为游戏发货时只有默认的OpenAL音频设备。我试着使用一些虚幻锦标赛可用的替代方案,但符恩拒绝加载它们。

我记得近十年前,当我还在费多拉的时候,我打完了整场比赛,玩得很开心。Rune已经完成了一个非常坚实的战役,即使是漫长的战役,也有严格的控制,比起其他许多第三人称游戏,它更像它的第一人称射击游戏同时代的人。开发者Human Head Studios不会继续开发最初的Prey,它也支持Linux,我之前已经写过了。

如果说这一切中有一线希望的话,那就是所有这些游戏都可以与葡萄酒或质子一起相当好地工作,而不需要摆弄台面来让它们推出。如果您不提供一个完整的OpenGL渲染器(如Chris Dohnal的渲染器),性能确实会受到影响,但一旦正确配置,游戏就可以像运行本地应用程序一样运行。我甚至在虚幻锦标赛中得到了更高的帧率。

启动它们仍然需要一些耐心,因为它们似乎都容易出现错误的开始,但一旦你真的进入主菜单,似乎一切都很顺利。这也让你可以让游戏与他们的兄弟Deus Ex重聚,如果不是Loki Software的关闭,这可能会成为一个原生的Linux游戏。我可以确认,符文黄金,虚幻黄金,虚幻锦标赛GOTY版,以及来自GOG.com的Deus Ex和GOTY版都可以通过一些微调就可以很好地制作成葡萄酒。

对于一个在Linux上有着如此血统的引擎来说,这个结果仍然令人失望。这可能只是我的骄傲,但能够让两个旧的本地二进制文件正常工作有一些特别的地方,特别是在Rune的情况下,我已经将它与完整的零售包装一起放在了光盘上。这也让我想知道,我的现代原生书目图书馆在20年后会运行得多好,我是否会被迫使用兼容层来运行其中的一些书目。

根据瑞安·戈登最近在Patreon上的帖子,这位前Loki Software员工曾以某种形式差点在Linux上重振Rune,但它却从[他]的手指间溜走了。地震III竞技场的源代码发布已经让它超越了时间强加的所有界限,而它昔日的对手却开始逐渐消亡。对于那些认为游戏不只是昙花一现的人来说,我只能希望这样的发布开始成为常态。

更新:自从这篇文章发表以来,一个新的虚幻锦标赛的新版本被曝光了。此版本是为了解决与最新版本的libstdc++之间的符号冲突问题,而libstdc++的最新版本又会在现代版本的MESA中产生分段故障。我也意识到了一个Lutris脚本,它允许他们的虚幻黄金套餐与台面一起运行。

也要感谢Adamhm,因为它提供了一种方法,让所有的虚幻引擎1游戏都可以可靠地从葡萄酒开始。

文章摘自GamingOnLinux.com。