不仅仅是 Proton:深入了解 Valve 的 SteamOS 新兼容层
Valve 正在引入 FEX 和 Lepton 两个新的兼容层,以便在 SteamOS 和 Steam Frame 设备上运行更多游戏。
要点
- Valve 引入了 FEX 和 Lepton 两个新的兼容层。
- FEX 在 Arm 芯片组上模拟 x86 处理器指令以支持 Steam Frame。
- Lepton 通过软件容器在 SteamOS 上运行标准的 Android APK。
- 首批 120 款“在 Frame 上运行良好”的游戏中有 52 款通过 Lepton 作为 Android 可执行文件运行。
- Valve 正在探索面向其他 Arm 设备的通用 SteamOS 版本。
自从 Steam Deck 发布以来,Valve 的粉丝们对 Proton 兼容层已经非常熟悉,该层允许为 Windows 编写的游戏在基于 Linux 的 SteamOS 上流畅运行(尽管 Valve 在这方面的努力还要更早一些)。
为了让更多游戏在由 SteamOS 驱动的 Steam Frame 上运行,Valve 依赖于两个对 Steam 架构而言全新的兼容层。
第一个是 FEX,它是 Valve 对 fex-emu 的移植版本。fex-emu 是一个在 Arm 芯片组上模拟 x86 处理器指令的开源项目。据 Fex 网站介绍,自 2018 年以来,这个最初的小型跨平台模拟项目已经发展成为“一个支持 x86(-64) 指令集所有现代扩展的高级二进制重新编译器”。
根据 Steam 自身的开发者文档,该模拟器还可以调用 OpenGL 和 Vulkan 等图形库以减少开销,并使用“代码缓存来尽可能减少卡顿”。
尽管 Proton 基于现有的 Wine 转换工具,但 Valve 工程师皮埃尔-卢普·格里法斯(Pierre-Loup Griffais)去年对 The Verge 表示,该公司自该项目还是个原型时起就一直在资助 Fex 首席开发人员瑞安·豪德克(Ryan Houdek)。
当时,Valve 已经预测“在 [Fex-emu] 变得足够强大、人们可以依靠它来构建他们的库之前,需要近十年的工作”。
“我要感谢 Valve 的人们从一开始就在这里,并允许我启动这个项目,”豪德克在去年 11 月纪念该项目七周年时写道。“他们信任我,让我以一种能够长期发挥作用的方式来设计和构建项目框架;不仅是为了他们的用例,同时也将其作为一个任何人都可以根据自己的用例进行调整的开放项目。”
既然 Fex 终于准备好集成到 Steam Frame 头显中,Valve 表示它正在积极探索适用于其他 Arm 设备的 SteamOS 版本。
“我认为我们想做的事情之一,也是 Frame 正在铺平道路的一点,就是更通用的面向 Arm 的 SteamOS,对吧?”格里法斯在最近接受 Rock Paper Shotgun 采访时表示。“有很多设备你可以在上面运行 SteamOS 并获得极佳的体验,它们目前只是一点点不同的邻近生态系统。但在我们看来,其实并没有那么不同。”
对格里法斯而言,其目标是让玩家在考虑基于 Arm 的硬件时,不必说:“哦,这个设备很好,规格很好,性价比很高,但如果我考虑它,我就必须抛弃一部分游戏库。”
你正在寻找的机器人吗?进入 Steam 的第二个新兼容层是 Lepton,它是对现有 Waydroid 项目的扩展,旨在通过软件容器让标准的 Android APK 在 SteamOS 上运行。
这个层对于 Steam Frame 尤为必要,因为玩家将在该设备上运行的许多独立 VR 游戏最初都是为基于 Android 的 Quest 头显设计的。
虽然其中许多游戏已经有了 Windows 端口以与之前的 SteamVR 头显兼容,但许多当前的 Steam Frame 游戏似乎只是通过 Lepton 兼容层作为 APK 运行。
VR.org 本月查阅了 Steam 元数据,发现前 120 款“在 Frame 上运行良好”的游戏中有 52 款作为通过 Lepton 转换的 Android 可执行文件在 Steam Frame 上运行。
这包括商店中列出的前三个没有任何 Windows、Mac 或 Linux 构建版本的 Steam 游戏(注意商店页面上缺少桌面系统要求)。
“他们真的是想要发布 VR 内容的 VR 开发者,他们正在移植一个移动 VR 标题,他们已经熟悉如何制作这些 APK,”Valve 工程师杰里米·塞兰(Jeremy Selan)去年对 The Verge 表示。“他们现在可以自由地将这些带到 Steam,它们将在这个设备上直接运行。”
这是否意味着其他 Android 开发者可以通过 Lepton 投放他们的 APK,以在 SteamOS 上运行通用的 Android 应用(和非 VR 游戏)?
Valve 的劳伦斯·杨(Lawrence Yang)对 The Verge 表示:“我们从来没有拒绝过人们这样做”,但在几乎同一口气中补充道:“我们是一家游戏公司,我们专注于游戏。”
无论一波 Android 应用现在是否开始涌向 Steam,与 Valve 过去要求开发者为第一版 SteamOS 创建自己的定制 Linux 端口相比,我们确实已经取得了长足的进步。
现在,也许 Valve 和社区终于可以开始着手完善一个兼容层,以便在 SteamOS 上直接运行 Apple II 游戏。