【游戏迷】Meta云游戏架构解析,目标是降低AR/VR游戏门槛

作为一种降低硬件门槛、跨平台随时可用的技术 , 云游戏常被看作是改善VR体验的关键 。 这些年来 , 将云计算与VR结合的概念一直被探索 , 但却迟迟未在C端VR游戏市场规模落地 。 实际上 , 谷歌、微软在2019年才推出PC、手机端云服务 , 技术才刚起步 , 因此应用于VR游戏还需要更久的时间 。 与此同时 , Meta也从2019年开始布局云游戏 , 包括收购西班牙云游戏公司PlayGiga , 并于随后一年在在FacebookGaming中引入云游戏服务 。
【游戏迷】Meta云游戏架构解析,目标是降低AR/VR游戏门槛
文章图片
对于Meta来讲 , 尽管目前业务仅涉及2D云游戏 , 但未来长期的目标则是将AR/VR元宇宙生态与云服务结合 。 而前不久 , FacebookGaming云游戏开始支持UGC游戏创作平台Crayta , 也可以看作是在2D环境中测试未来的3D元宇宙概念 。
近期 , Meta在博客中公布了FacebookGaming云游戏服务的基础架构 , 以及为了给3DAR/VR云游戏打基础 , 而进行的升级优化 。 Meta表示:我们的云游戏硬件架构目的是进一步降低AR/VR的使用门槛 , 让更多人玩上沉浸式游戏 。 此外还表示:目前元宇宙尚未成熟 , 其发展还需要整个行业大力推动 。 尽管如此 , Meta相信创建云游戏基础设施、解决相关技术挑战 , 也将会为Meta指明一个实现元宇宙的道路 。
云游戏的意义
Meta表示:云游戏是一种基于云计算的技术 , 即将游戏放到云服务器上运行 , 这样的好处是允许玩家可以在任何设备、任何地点玩游戏 , 让游戏变不依赖于昂贵的硬件 , 更加亲民、普遍 。
【游戏迷】Meta云游戏架构解析,目标是降低AR/VR游戏门槛
文章图片
云游戏的可访问性比传统游戏更高 , 不管你用什么设备、在什么地方 , 只要连上网就可以云串流各类3A级游戏 。 这意味着 , 玩家无需购买昂贵的新硬件 , 无需下载、更新大体积游戏应用 , 就能快速与跨平台用户联机、玩游戏 。
对于开发者来讲 , 云游戏分发效率更高 。 理想情况下 , 只需要开发一次游戏 , 就能在多个硬件上运行 , 无需针对每个硬件进行优化 。 此外 , 云游戏也有望减少作弊和盗版的可能 。
Meta云游戏基础架构
【游戏迷】Meta云游戏架构解析,目标是降低AR/VR游戏门槛】为了应对云游戏技术的局限 , Meta从硬件和软件基础架构两方面进行优化 。 需要解决的问题包括:降低端到端延迟 , 从而提升游戏体验的流畅度 , 降低视频/音频串流时的抖动等等 。 此外 , 云游戏基础架构还需要在单个云服务器上运行多个游戏 , 数据传输效率和稳定性要足够高 。
以下将详细解析Meta云游戏架构的组成部分:
1)边缘计算、GPU和虚拟化
依靠边缘计算 , Meta可以将云游戏服务部署在人口众多的城市周边地区 , 从而降低延迟 , 为更多人提供优质的运数据传输体验 。
【游戏迷】Meta云游戏架构解析,目标是降低AR/VR游戏门槛
文章图片
每个边缘计算站点都将有一个统一的托管环境 , 目的是运行尽可能多的游戏、效果尽可能流畅 。 值得注意的是 , Meta与NVIDIA合作 , 在基于NVIDIAAmpere架构的GPU基础上 , 建立了这个托管环境 。 随着游戏继续变得更加图形密集和复杂 , NVIDIAGPU将提供加载、运行和流式传输游戏所需的高保真度和低延迟 。
接着 , Meta利用机群管理系统Twine来协调边缘服务器 。
Meta设计的云游戏架构兼容Windows和安卓系统 , 并为Windows和安卓游戏提供不同的托管方案 , 其中Windows方案与云游戏服务PlayGiga(Meta在2019年收购)集成 。 同时 , 也为Windows和安卓系统建立了一个整合的编排系统 , 来管理和运行游戏 , 其好处是支持游戏在不同平台的分发和灵活运行 。
【游戏迷】Meta云游戏架构解析,目标是降低AR/VR游戏门槛
文章图片
2)视频/音频串流
流畅的视频和音频体验 , 是云游戏最重要的部分之一 。 数据延迟会给游戏体验带来明显的负面影响 。 因此 , Meta采用WebRTCAPI和SRTP(安全实时传输协议)来串流用户输入信号和视频/音频帧 , 以此来改善视频/音频串流效果 。
简单来讲 , Meta云游戏运行的基本串流过程如下:玩家在游戏中执行动作 , 系统捕获时间并发送到云端服务器 , 然后渲染并复制包含该动作结果的帧 , 使用视频编码器编码 , 并将编码后的帧打包 , 确保符合用户数据报协议(UDP)数据包 , 之后再通过网络发送到客户端 。 客户端接收到云端数据后 , 会运行一个抖动缓冲功能 , 然后再将数据包解码为帧 , 在客户端进行渲染 。