【侃侃云VR】云VR游戏

举报
wangzhibing 发表于 2020/03/05 08:50:13 2020/03/05
【摘要】 云VR游戏演进及对应技术探讨。

强交互类云VR业务以VR游戏、VR社交等为代表,具有更强的沉浸感。从长远看,VR业务都会向强交互发展。强交互云VR采用实时云渲染方案,将本地复杂的计算、渲染移至云端,使得VR终端更轻便、成本更低。

本文以VR游戏为例,简单了解下当前VR游戏的问题以及可应用的技术。

现状

VR游戏是360度全方位全身心的沉浸式体验的一种形态,需要借助承包人们感知的外部设备达成虚拟世界的表现效果。我们知道当前有PC VR和移动VR,这两种形式的区别有:

l  PC VR:知名产品较多,游戏过程的体验流畅感较好,画面特效处理较丰富。但是PC VR设备繁多、固定,使得玩家不得不被圈地玩耍。

image.png

l  移动VR:以小游戏居多,部分VR产品的画面颗粒感还是存在的,游戏过程的延迟性和眩晕感也比较明显。但是移动VR凭借其便携性,使得用户愿意在各个场合利用VR体验产品。

image.png

移动VR高移动性低体验,PC VR高体验低移动性,两者不可兼得。因此,当下如何同时支持高体验和高移动性,是VR游戏面临的挑战。

云VR游戏技术演进

我们先通过一张图简单了解下云视频和云游戏的传输架构。

image.png

两者的区别:

l  云游戏互动性强;云视频多是被动模式。

l  云游戏要求时延低,不能缓存,Buffering 0 容忍,且避免引起丢包和重传;云视频是可以缓存的,可以利用CDN提升规模分发效率。

业界主流云游戏的技术:

1.      运算在云端,端侧需要较强的GPU渲染能力。

image.png

2.      运算和渲染完全在云端,端侧GPU要求较低。

image.png

FromETSI TR 102 794 V1.1.1 (2010-12) Media Content Distribution (MCD); 3D Gaming Graphics Delivery Overview

目前华为采用的是第二种技术。

而纵观普通云游戏和云VR游戏,我们会发现,云VR游戏左右眼都有图像,终端播放会形成3D效果,同时它对时延敏感度更高、处理数据量更大、处理数据流程更复杂,近眼演示对质量稳定性要求也更严格。而且,云VR游戏流水线环节多,持续提供大范围的高体验的实时云渲染服务,pipeline长,涉及使用的资源种类多,如何保持时延稳定可控,确保每16.6/11.1nms都有新的图像用于显示,是极大的技术挑战。


华为在云VR游戏保证稳定时延方面的实践如下图所示。

image.png

并行低时延、自适应算法的合理应用:

l  游戏渲染自适应算法:适应游戏内容、当前硬件算力、网络环境,控制游戏出图分辨率。

l  编码参数自适应算法:适应传输图像分辨率、当前网络环境,平衡码率与画质。

l  高效渲染算法:基于底层OpenGL ES引擎,最小化端侧渲染流程,提升渲染效率。

l  运动预测算法:预测头显姿态以减小ATW显示黑边,预测手柄轨迹以降低响应延迟。

l  清晰度优化算法:按区域设置不同像素密度,以较低分辨率保持中心区域较高清晰度。

l  远程VSync算法:同步端侧VSync信号,避免无效帧渲染、编码、传输与解码。

l  并行低时延算法:渲染、编码并行;单画面多Slice编码并行;基于UDP和应用反馈机制传输;基于反馈机制实时调整编码参数;降低E2E时延。

最终在华为实验室测试结果,E2E时延30ms,采用5G网络的话,网络时延小于10ms。

HDC大会预约

基于新型冠状病毒感染的肺炎疫情防控形势,原计划于2月11-12日在深圳召开的华为开发者大会2020(Cloud),将延期至2020年3月27-28日以网上直播的方式呈现,敬请期待。

预约直播链接:https://www.huaweicloud.com/HDC.Cloud.html

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

举报
请填写举报理由
0/200