什么是 Steam Proton 以及它如何在 Steam Deck 上运行 Windows 游戏?
Steam OS 是为 Steam Deck 提供支持的 Linux 发行版,可以高效运行 Windows 游戏。这怎么可能?答案是蒸汽质子。
Valve 已通过 Steam Deck 涉足主机游戏领域,这是一款手持设备,其硬件可与 PS5 和 Xbox Series S & X 相媲美。这是一款可靠的设备,可以可靠地运行大多数 AAA 游戏。 Deck 的突出之处在于它能够开箱即用地运行各种游戏。它附带了整个 Steam 游戏目录,因此用户不必等待流行游戏在控制台上发布。
Steam Deck 在 SteamOS 上运行,SteamOS 是一个基于 Arch 的 Linux 发行版,具有内置的 Proton 支持。您可以使用 Proton 在 Deck 上运行几乎所有 Windows 游戏。
什么是蒸汽质子?
Steam Proton 是允许 SteamOS 在 Deck 上运行 Windows 游戏的兼容层。它使用户能够安装和运行不提供本机 Linux 版本的 Windows 游戏。 Proton 是由 Valve 和 CodeWeavers 的开发人员合作开发的。
Proton 本质上为我们提供了一系列高性能图形库和 Wine 的修改版本。使用 Proton 在 Linux 上运行 Windows 游戏时几乎没有性能成本。您可以使用 Proton 以可观的帧速率玩许多流行的游戏。
截至撰写本文时,Steam Deck 可以在原始分辨率下以 30fps 运行大多数 AAA 游戏。但对于提供原生 Linux 版本的游戏来说,它可以达到 60fps,当您考虑到 Deck 是手持设备时,这是一个很大的改进。
然而,尽管 Deck 可以使用 Proton 玩许多流行游戏,但它还不支持所有 AAA 游戏,尤其是《PUBG》、《彩虹六号:围攻》和《命运 2》等多人游戏。
Proton 如何在 Linux 上运行 Windows 游戏
正如已经讨论过的,Proton 为 Windows 图形 API 提供了一个兼容层。为了清楚地理解这一点,您需要熟悉 DirectX 和 Vulkan,这两个为游戏提供应用程序编程接口 (API) 的图形库。
当您在系统上运行游戏时,这些 API 会处理底层图形任务。将它们视为游戏和显卡之间的通信通道。
现在,DirectX 由 Microsoft 开发并用于实现其图形组件。由于 Windows 控制着全球桌面份额,游戏开发人员在开发过程中主要关注 DirectX。然而,Vulkan 的功能也非常强大。它只是做一些不同的事情。
这就是 Proton 的用武之地。它利用 Wine 和 DXVK (DirectX Over Vulkan) 将 DirectX 程序转换为 Vulkan。为 Windows 构建的游戏通过 DirectX 与显卡通信,并分配运行它们所需的资源。
在底层,DirectX 启动 Direct3D 调用来渲染图形。 Proton 介入并将这些调用转换为等效的 Vulkan 调用。这就是 Proton 在 Linux 和基于 Linux 的系统(如 Deck)上运行 Windows 游戏的方式。
如何在 Linux 上使用 Steam Proton
虽然您还不能使用 Proton 在 Linux 上玩所有 Windows 游戏,但它仍然支持许多流行的游戏。 ProtonDB 网站包含在 Linux 和 Steam Deck 上本机运行的经过验证的游戏列表。只需稍加调整,您就可以玩许多其他游戏。
要在 Linux 发行版上测试 Steam Proton,请打开 Steam,然后转到设置 > Steam Play。选中为支持的游戏启用 Steam Play 复选框。您还可以从高级菜单中选择为所有其他游戏启用Steam Play。
确保从兼容性工具下拉列表中将 Proton 版本更改为最新版本。单击设置菜单中的确定保存设置并重新启动 Steam。
使用 Steam Deck 随时随地玩 Windows 游戏
Proton 为在 Steam Deck 和 Linux 上运行 Windows 游戏铺平了道路。您现在可以在任何兼容 Linux 的机器上享受现代 Windows 游戏,包括 Deck。只需前往 ProtonDB 并检查您最喜爱的游戏是否在 Deck 或 Steam Play 上运行。
Steam 还允许用户在没有有效互联网连接的情况下玩游戏。因此,当您的连接断开时,请不要担心,只需使用 Steam 离线模式即可。