在很多人的印象中,游戏类型和设备形态往往是绑定的:想玩 3A 大作,通常需要一台性能足够强的 PC 或主机;手机、平板或是电视更多对应的是手游场景。

好在,在公有云游戏串流服务的加持下,比如 GeForce NOW,在手机平板上玩 3A 大作也变成了一种可能。游戏运行、渲染和编码等等对 GPU 负载比较大的场景全部由云端服务器处理,本地设备只负责接收画面和输入。这样做的好处也明显,我们不需要在本地下载安装游戏,且对终端性能要求也很低。只不过坏处也少,公有云游戏串流服务对网络质量要求很高,且可以玩到的游戏也取决于内容供应商有没有。

假如我就是想在手边的设备上、随时玩到我已经有的游戏呢?Sony PlayStation Portal 就是这个思路,能把 PS 上的游戏串流到掌机上。自然也引出了游戏串流的另一条路线:本地串流。

本地串流就是把你家里的主机或游戏 PC 作为算力来源,再将画面实时传输到身边的其他设备上。也就是,游戏还是在你自己的设备上运行,只是显示和操控被搬到了另一块屏幕上。由于本地网络的环境质量更加可控,自然能实现更低的延迟和更好的画面质量。

在本地串流方面,NVIDIA 之前曾推出过 GameStream。它一度是 PC 串流领域体验相当成熟的方案,可以把电脑上的游戏传输到 SHIELD 等终端设备上。但 GameStream 非常依赖 NVIDIA 显卡生态,且可能是因为宣传自家的云串流 GeForce NOW,NVIDIA 在 2023 年宣布停止维护这一方案。

关联阅读:局域网游戏串流:让我们都做一回「云」玩家

随着 GameStream 停止维护,开源社区也逐渐补上了这一空缺,比如本文的会用到的开源串流服务端工具 Sunshine。和 GameStream 相比,Sunshine 不再局限于 NVIDIA 显卡和 Windows 系统,Sunshine 还支持 Intel、AMD 显卡,以及 macOS 和 Linux 系统。

在安装和配置 Sunshine

在正式开始配置之前,先来看 Sunshine 对主机端的基本要求。总的来说,它对硬件门槛并不算高,只要是最近 8 年的硬件应该都没什么问题。

软硬件要求
GPUAMD:支持 VCE 1.0;Intel:Windows 系统需要处理器是 Skylake 更高,支持 QuickSync 编码,其他系统需要兼容 VAAPI;Nvidia:支持 NVENC 技术
CPUAMD:Ryzen 3 以及更高;Intel:酷睿 i3 以及更高
内存4GB 及以上
操作系统macOS 14.2 及以上、Windows 11 及以上,Linux、FreeBSD
网络服务端和客户端均支持 802.11ac,5GHz(建议作为服务端的 PC 主机使用有线网络连接路由器)

所以,Sunshine 是一套丰俭由人的本地串流方案。它当然可以配合高性能的 PC,把 3A 游戏串流到其他设备上;但也可以用一台配置并不算高的旧电脑作为主机,运行模拟器或轻量级游戏,再把画面串流到其他终端上。

不过在具体安装之前,还可以做一个选择题:是直接使用原版 Sunshine,还是使用第三方分支版本?

前面 Sunshine 是开源项目,社区中已经出现了若干衍生版本。由于我只用在 Windows 上跑,权衡利弊之下,最终选择的是由国内团队维护的 Foundation Sunshine。它本质上是基于 Sunshine 的增强分支,项目说明中提到的重点改进包括:更完善的 HDR 支持、虚拟显示器、远程麦克风、更偏低延迟的传输优化,以及更集中的控制面板等。

所以和原版 Sunshine 提供的跨平台支持不同,Foundation Sunshine 只支持 Windows。这种取向其实不难理解:对于大多数需要游戏串流用户来说,Windows 依然是目前最主流的平台。 

这里我们点击这里下载最新版本的 Foundation Sunshine 并根据步骤进行安装,你可以在安装选择组件时注意到,Foundation Sunshine 相比原版多了虚拟显示器驱动以及虚拟游戏手柄驱动的相关设置,原版则需要手动安装。

安装完成后会启用一个 Sunshine 设置页面,在这里面我们首先需要设置 Sunshine web UI 的账户信息和密码,后续用于进行客户端设置和连接。

接着我们进行 Sunshine 的设置,主要是用来选择显卡、串流显示器以及显示器策略,这里我先选择我当前设备上的独立显卡。

然后下一步选择显示器,这里推荐使用虚拟显示器,原因是它可以不受物理显示器的约束,只要物理显卡支持,你可以随意的设置分辨率、帧率还有 HDR 优化,而且即便你关闭了物理显示器,只要主机仍在运行,就可以继续使用客户端来玩游戏。

最后选择显示器策略组合,这里我直接选择「确保唯一显示器」即可,然后点击「完成设置」完成 Sunshine 的基础配置。

之后进入应用列表设置,这里显示的是客户端,也就是 Moonlight,连接 Sunshine 后在 Moonlight 里看到的应用列表。你可以直接调整现有条目,比如设置某个应用关闭后是否同时退出串流,或修改应用的启动命令等。

因为我主要想通过串流来玩 Steam 游戏,所以这里直接删掉了 Xbox Game 这个应用,只保留 Steam 大屏和电脑桌面。

在「虚拟显示器」选项中,我们还可以进一步调整虚拟显示器的详细参数,例如新增分辨率预设、设置刷新率、选择是否开启 SDR 10 bit 或 HDR 12 bit,以及指定特定的色彩模式。因为我需要用 iPad 玩 RTS 游戏,所以额外添加了多个 4:3 比例的分辨率预设。

这些都设置好之后,切换到首页标签页,你会看到一条日志提示,说明系统尚未安装 VIGEmBus,因此暂时不支持游戏手柄。若你打算用手柄串流游戏,就需要手动安装这个组件。由于我主要用键鼠来玩 RTS 游戏,所以这里便直接忽略了。

至此,Sunshine 服务端已经启用并完成基本设置。若你还想了解更多细节,也可以查看 Foundation Sunshine 的官方说明文档,这里就不再展开了。

在手机、平板上安装 Moonlight 客户端

要想在局域网内实现游戏串流,除了在服务端安装 Sunshine,还需要在控制端安装 Moonlight 客户端才能完成连接。

Moonlight 支持的设备类型很多,包括 Android 手机、平板,iPhone、iPad,以及 Windows、macOS、Linux 等 PC 设备。你可以参考 Sunshine 页面下方提供的客户端列表,找到适合自己设备的 Moonlight 客户端并下载安装。

同样,作为开源软件,Moonlight 也有不少经过优化的第三方分支版本。由于前面我选择了 Foundation Sunshine,因此在 Moonlight 客户端上,我也选用了由 Foundation Sunshine 开发团队维护的分支版本。

相比 Moonlight 原版,这个分支客户端在串流效果和 HDR 支持方面表现更好。不过,相应地,可支持的设备类型也更少一些。目前它只提供 Android 版、iOS / iPadOS 版,以及传统桌面版客户端。你可以前往 Foundation Sunshine 主页的推荐客户端列表,选择适合自己设备的版本下载安装。

这里需要提醒的是,如果你安装了 iOS 或者 macOS 的客户端,那么还要对家中的无线路由器进行特殊的设置,将家中 Wi-Fi 的信道改为 44 或 149。因为只有改成前面说的信道后,在串流的过程中才不会遇到严重声音迟滞和卡顿问题,具体原因参见该文档

关联阅读:具透 Plus | 联机游戏延迟波动?AWDL 协议背后的小问题

和 Sunshine 配对实现游戏画面的串流

我的使用场景是在 iPad 上游玩 PC 上的 RTS 游戏,所以在 iPad 上安装了 Foundation Sunshine 推荐的 iOS 客户端 VoidLink。打开 VoidLink 并完成相应的权限授权后,它会自动扫描当前网络中的 Sunshine 服务端。

接着,在列表中点按扫描到的服务端,界面会弹出一个配对 PIN 码。这时返回 Foundation Sunshine 的 Web UI 管理界面,切换到「PIN 码」选项卡,在配对页面中填写刚才客户端提供的 PIN 码,以及服务端主机的设备名称,也就是电脑名称。输入完成后点击发送,即可完成配对。

这时候在客户端上就可以看到服务端已经在线,点击「选择应用」就可以看到之前我们在 Sunshine 设置的应用列表了。

不过,在开始串流之前,还需要先对 VoidLink 做一些设置。点击左上角的侧边栏按钮进入设置页面后,就可以看到更细致的选项。

例如在视频部分,可以设置为 720p、1080p 或全屏,也支持自定义分辨率;串流帧率则可以选择 30 帧或 60 帧,此外视频编码、HDR 等选项也都能单独调整。VoidLink 的大多数设置项都附有详细说明,如果你不清楚某个选项的作用,点开后查看说明即可。这样一来,就能结合家中设备和网络环境,灵活调整到更合适的状态。

一切设置完成后,就可以直接在 VoidLink 的应用列表中点选想要启动的项目了。以我自己为例,这里就是点开 Steam,选择游戏后便可以开始游玩。

这里我用键盘和鼠标在 iPad 上体验了一下《帝国时代 4》,分辨率设为 1600 × 1200。整个游玩过程中,在纯无线网络环境下没有感觉到明显延迟,画面也没有明显卡顿,音频同样保持稳定,没有出现断续的情况。

当然,我平时偏好的游戏类型相对有限。你也可以试着接入手柄,体验一下 FPS 或 RPG 这类游戏,看看是否会出现明显的卡顿或延迟。毕竟这两类游戏对时延往往更敏感,也更能体现串流体验的上限。

结语

对我来说,Sunshine 最实际的好处就是:打《帝国时代 4》的时候,不用呆呆地、只能在书桌前玩了。想窝在沙发上拿平板接着打,可以;睡前躺床上用手机多玩一会儿,也可以。

如果再搭配 ZeroTier、Tailscale 这类组网工具,在外面也能随时连回家里,这样就等于把 Sunshine 局域网串流变成了公有云游戏串流,只不过数据流量「会受到伤害」了。

以上就是本文的全部内容,希望可以帮你在即将到来的五一假期中,更舒服地玩上游戏。

> 关注 少数派小红书,感受精彩数字生活 🍃

> 实用、好用的 正版软件,少数派为你呈现 🚀

5
8