吧务
level 15
阿柏奇
楼主

随着Valve即将推出的新Steam Frame硬件 ,他们希望尽可能多地让开发者有多种方式支持游戏运行。目前很多VR游戏主流格式有两种格式,一种是PCVR的Windows版本和Meta Quest等VR一体机用的Android版本。
Steamworks开发文档介绍:
我们认为,如果开发者能专注于游戏的最佳版本,而不是制作和维护多个独立版本——尤其是当某个版本最终沦为二流体验,缺少一些测试或更新时,客户会更有利。我们花了很多心思让在Steam Frame上运行最佳版本变得尽可能简单。对大多数开发者来说,这可能意味着通过Proton和FEX运行Windows x86。
对于已经投入精力为其他硬件(通常是Android Arm64)制作移动优化版本的VR开发者来说,我们认为在Steam Frame上运行该版本是合理的。
Steam Frame 原生运行 Snapdragon 8 Gen 3(Arm64)芯片,运行于 SteamOS (基于 Linux Arch),并包含多种兼容其他作系统和架构的层。
通过Proton的Windows
Windows游戏可以通过 Proton 运行。Proton 是一个兼容层,允许 Windows 游戏通过修改版 Wine 和一系列高性能图形 API 实现(如 dxvk ,将 DirectX 转换为 Vulkan,Steam Frame 的原生图形 API)
Android 通过 Lepton
安卓游戏可以通过Lepton运行。Lepton 是一个兼容层,允许 Android 游戏在 Linux 上运行。它被实现为容器,以最小化开销。
通过 FEX 连接 x86
实现x86(32位和64位)。 通过FEX FEX将x86编译的游戏转换为Arm64指令,但将API调用转发到本地主机系统库如OpenGL或Vulkan,以减少模拟开销,并利用代码缓存尽可能减少游戏内卡顿。
如果你已经有游戏的现有版本想在别处运行,只要确保它在他们的兼容层中运行良好,就能为开发者节省大量时间。目前Valve在多年打造Proton并 直接资助FEX,以尽可能多的SteamOS的Linux游戏支持。自从最初Steam Machine因缺乏游戏而失败以来,valve已经走了很长一段路。

目前valve开发的Android兼容软件Lepton,已在被steamdb网站记录。
Valve资助的在ARM64上模拟x86程序FEX//github.com/FEX-Emu/FEX
