据悉,大鹏DPVR将于8月8日发布最新产品——巨幕影院:由于工作原因,笔者有幸提前拿到大鹏的DPVR。
用于研究的工程原型。
由于两者都是一体化产品,因此很自然地会想到将其与今年 5 月发布的 Oculus Go 进行比较来进行技术分析。
近日,大鹏DPVR发布了其巨幕影院新品的技术创新思路和参数。
此时,对比Oculus Go的产品参数和实际上手体验,笔者得出以下结论:大鹏基于看似弱小的国产芯片做出了以下几点。
在观看电影方面,这是一种与 Oculus Go 相当甚至更好的体验。
笔者相信,几年之内,该产品将成为国内VR头显研究中的经典产品。
在接下来的文章中,笔者将从VR产品趋势、技术创新和优化等方面,以事实为依据,客观地分析大鹏DPVR的新产品——全景声巨幕影院。
VR娱乐正在发生变化:游戏正在向左移动,电影和电视正在向右移动。
今年以来,VR行业的焦点再次从PC VR转向一体机VR。
今年,行业领头羊Oculus推出了Oculus Go; HTC Vive还推出了Vive Focus高端一体机。
从另一个角度来看,也佐证了这种变化:自2016年推出Rift和Vive以来,这两个品牌还没有推出过真正的第二代PC VR。
(HTC的Vive Pro,售价过万元,已经没有革命性的参数升级或突破,也不能称为第二代PCVR。
)转型的原因很明显。
其中,Oculus转向VR一体机的原因在去年和今年的Facebook 8甚至Google I/O大会上都提到过:无论Oculus平台还是DayDream平台,用户花费了近80他们 % 的时间用于观看电影。
图1 从Facebook8来看,高达83%的观影时间真正代表了消费者的核心诉求。
近两年火爆的VR游戏,从游戏本身的日常活跃度和内容体验来看,很可能只是小圈子内硬核玩家的自娱自乐。
因为现阶段整个VR产业链和技术储备还不足以满足这些挑剔的硬核玩家,游戏公司无法通过制作VR游戏赚钱(SteamVR平台上的第一款PC VR游戏,甚至排名前十的游戏不一定能赚钱),基本上形成了VR游戏开发商根据用户数决定开发、用户根据游戏决定开发的“鸡生蛋,蛋生鸡”的恶性循环。
体验一下,然后购买游戏。
。
基于以上背景,国内VR一体机厂商很快意识到了这一问题,竞争也迅速变得激烈。
为了节省时间,小米选择向美国顶尖科技公司代工Oculus GO产品。
此时,VR行业老牌大鹏VR也携新品“Atmos巨幕影院”入阵。
这里值得一提的是大鹏VR,无论是支持°Room-Scale范围的最高端的基于红外激光定位的Polaris,还是2年前在国内外销售的一体机M2 ,基于大鹏自有技术:从算法理论、硬件制造、头盔固件、FPGA,到Mobile VR SDK,再到开发工具,都是大鹏的“攻城狮”用一行行代码打造出来的,可以说代表中国VR水平。
制造商之一。
目前市场上的一体机大多采用美国高通或韩国三星的芯片。
大鹏最早的一体机M2也不例外,同样采用三星芯片。
但这一次有点不同。
在如今国产芯片“力挺”的背景下,大鹏早在几年前就大胆选择了国产全志的VR9。
大鹏曾向全智建议,将ATW等VR算法运算从GPU中释放出来,创建专有的硬件模块来提高效率。
经过四年的努力,全志终于发布了首款面向全球VR市场的专用芯片VR9。
它的定位非常尖锐,为用户提供极致的VR音视频体验。
VR9的视频解码是它的强项,但它牺牲了游戏GPU能力。
鱼与熊掌不可兼得,谁又能说呢?图2 VR9框架图 基于VR9国产芯片设计,大鹏开始从下到上对产品进行优化。
以下核心技术分析摘自大鹏DPVR官方讲解。
我引用并与大家分享。
阅读它并不能保证你对VR的理解会发生质的改变,但它充满了有用的信息,这至少对每个人选择适合自己的VR产品都很重要。
参考意义。
VR管线:从渲染到人眼想要真正理解VR技术的本质,首先要从VR世界中的物体如何渲染到最终进入人眼的过程开始。
图3:VR物体进入用户眼睛的过程(流水线) VR系统本质上是一个异构计算系统,内部的CPU、GPU、Display等硬件模块始终并行工作。
VR世界中的每一个物体都从第一个模块开始,经过整个流程一步步前进,最终进入用户的眼前。
如何提高流水线每一步的效率和并行度是VR系统高效运行的关键。
- 巨幕影院渲染算法优化 - 设计时受到功耗和芯片面积的限制,移动GPU的性能参数,无论是FLOPs还是内存带宽,都远低于同级别的PC GPU,例如Nvidia的PC GPU GTX和移动虽然高端GPU Tegra K1来自Kepler架构,几乎同时出现,前者的显存带宽为80G/s,后者仅为18G/s。
对于用户来说,这种差异意味着移动VR应用和实现不能采用与PC系统相同的方法。
对于VR SDK提供商来说,只能本着“螺丝肚里造道场”的精神,想办法。
提高移动平台上的 GPU 利用率。
在此背景下,Adaptive Queue Ahead技术应运而生,该技术可以挤出CPU和GPU之间的泡沫,提高其运算的并行性。
在之前的VR世界中,CPU总是在VSync(垂直同步)到来的时候开始向GPU发出渲染命令(如下图)。
对于较重的 GPU 任务,很可能无法在当前 VSync 的剩余时间内完成,其后果是应用程序 FPS(Frame Per Second,帧速率)降低,最终用户体验应用程序或游戏卡顿、“重影”和头晕。
图 4:没有提前排队的渲染。
Oculus首先在PC端的Rift上提出了所谓的Adaptive Queue Ahead技术。
CPU不必傻傻地等待Vsync的到来。
相反,它会在垂直同步到来之前的几毫秒内预测并开始发出渲染指令。
给予GPU更多的时间来执行任务,有效提高VR应用的FPS,产生更好的用户体验。
图5:队列超前渲染 大鹏首次将PC VR端技术引入一体机VR一体机世界,让之前运行卡顿的应用变得流畅,给用户带来流畅、沉浸、细腻的VR体验。
世界。
但考虑到PC平台和一体机平台计算能力的差异,这种优化还远远不够,因此大鹏通过一种名为“Hidden Mesh”的技术进一步提高了GPU的渲染效率。
在VR头盔的光学视场中,由于镜杯的结构和人眼的特性,图像中的某些区域是人眼无法看到的。
它们在VR图像渲染中被称为隐藏区域(下图中红色三角形覆盖的区域,实际上人眼是看不见的)。
图6:Hidden Mesh技术 大鹏巨幕影院的图形渲染中巧妙地利用了这一点。
通过使用专门绘制的Hidden Mesh(隐藏网格),可以有效减少GPU的渲染工作量。
CPU和GPU并行度得到了提升,GPU渲染效率也得到了提升,又向前迈进了一步。
出于好奇,笔者进一步分析了Oculus Go系统,发现它并没有使用Hidden Mesh,或许是出于其他考虑。
下图中的红框就是用户在Oculus Go Home中可以看到的部分。
用户通过镜头和镜杯无法看到红框外圆圈内的内容。
接下来要做的就是有效减少用户佩戴时的眩晕感。
人体并不是为 VR 而设计的。
通过 VR 设备人为刺激感官,我们正在破坏自然环境中数亿年进化的生物机制的运作。
我们还向大脑提供与我们的现实体验并不完全一致的信息。
在某些情况下,我们的身体可能会适应新的刺激。
但在某些情况下,我们的身体会产生头晕和恶心等症状,部分原因是大脑比平时更快地理解此类刺激。
眩晕的已知原因包括显示分辨率/刷新率不足、前庭系统和视觉系统之间的冲突以及虚拟世界中的比例失真。
过度的运动到光子延迟也是罪魁祸首。
Motion-To-Photons 延迟是指 VR 场景运行时,用户头部移动,直到信号通过 VR 头盔输出的光信号映射到人眼所花费的时间。
一般认为,大于20毫秒的延迟会导致用户出现更明显的眩晕感。
图7:Motion-To-Phontons 目前市面上所有的VR单机无一例外都是基于Android系统。
为了提高手机和平板电脑显示的流畅度,传统的Android系统采用双显示缓冲区或三显示缓冲区。
然而,这种机制使得VR应用程序无法知道何时可以在头盔屏幕上显示指定的图像,从而增加了一体机VR一体机的Motion-To-Phonton延迟,让用户体验到更多的眩晕感。
大鹏通过独特的硬件结构和算法优化,使Front Buffer Rendering成为可能:管线中仅使用一个显示缓冲区,最大限度地减少Motion-To-Phonton延迟并提供给用户。
更好的视觉体验。
图8:前缓冲渲染-显示优化-除了渲染性能之外,显示清晰度一直是判断VR头盔品质的另一个重要指标。
然而,显示优化并没有所谓的一招制敌的“银弹”。
这种提升来自于各个模块的综合效果,大鹏在各个部分不断迭代和改进,从而带来了优异的成绩。
首先,GPU渲染的图片必须清晰。
然而,计算机渲染的场景从三维空间的角度来看是连续的,但光栅化后最终显示在屏幕上的二维图像本身是离散的,这导致边缘上出现锯齿状边缘,这些边缘不是完全垂直的或完全水平。
。
图9:SSAA/MSAA 减少锯齿和抗锯齿最直接的方法是SSAA(超级采样抗锯齿)和MSAA。
具体思路是,首先将对象渲染到大于屏幕分辨率(例如4倍)的缓冲区中,然后下采样到与屏幕分辨率相同分辨率的显示缓冲区中,最后输出显示,这样更多显示信息。
图像对象边缘的颜色被保留,并且由于不同颜色采样点的混合而消除或减少锯齿。
大鹏巨幕影院的图形渲染实现中,采用SSAA和MSAA进行抗锯齿。
然而,事情似乎还没有结束,因为 VR 用户经常抱怨图像或文本闪烁。
为什么我们在PC或手机上看不到闪烁,但在VR耳机中却很容易看到闪烁?这主要是由于用户改变与VR世界中物体的距离、图像或文字本身的缩放以及镜头本身的放大倍数引起的,用户会观察到闪烁。
大鹏采用MipMap技术来防止文字和图片闪烁。
MipMap 是指根据与观看者的距离不同,以不同分辨率的多个图像的形式表达单个材质贴图:最大的图像放置在前面的显着位置,而相对较小的图像则退到背景区域。
每个不同的大小级别被定义为 mipmap 级别。
图 10:Mipmap 可防止闪烁。
这样,系统每次渲染时都会找到最适合当前场景的图像,并执行最小的缩放操作或根本不进行缩放,以最大限度地提高图像信息的保真度。
- 70HZ 显示刷新率 - 与 Oculus Go 一样,Dapeng 使用快速响应的快速 LCD 屏幕。
不同的是,Oculus Go 的默认刷新率为 60HZ(某些特殊情况下可以达到 72HZ),而大鹏的刷新率始终为 70HZ。
Fast-LCD屏幕上的像素在每次Vsync过程中都没有完全点亮,屏幕的持续时间约为1-2ms。
假设屏幕余辉为1ms,对于60HZ,屏幕上像素亮的时间为6.25%,而对于70HZ刷新率,像素亮的时间为7%。
大鹏巨幕影院用户将会感觉VR世界更加明亮。
同时,人眼工作在较高刷新率模式下,较低刷新率的VR头显会导致用户感觉闪烁。
- 显示芯片中的异步时间扭曲 - 在清晰、流畅、高刷新率的世界中,常见的 VR 晕眩感还存在吗?可能吧。
如果佩戴头盔的用户在使用过程中不断转动,则渲染图像时使用的姿势信息可能与图像显示在屏幕上时的姿势完全不同,用户也会感到头晕。
该怎么办?解决方案是在图像帧扫描到显示器之前进行另一项调整:根据最新预测的姿态更新图像。
这称为Time Warping(时间扭曲)或Reprojection(重投影)。
如果实现中的渲染线程和扭曲线程是不同的线程,则也称为异步时间扭曲。
一般来说,VR计算过程的重要部分,异步时间扭曲(包括畸变校正和色散校正)是在GPU中完成的。
图11:传统ATW 然而,由于VR游戏或应用在渲染过程中会占用大量的GPU资源和计算能力,GPU将无法及时完成上述任务,导致用户体验不佳,尤其是在移动平台上。
非常。
在大鹏巨幕影院中,首次创造性地将时间畸变/畸变校正/色散等处理实现在独立显示芯片中,减轻了GPU负载,释放了GPU资源,有效提升了系统性能,同时也降低了成本系统功耗。
不要低估这一步的优化。
如此一来,大鹏就可以在系统功耗方面一下子拉大与同类产品的差距,这一点后面会进一步解释。
图12:显示芯片中的ATW——图像后处理机制——在手机的世界里,不同滤镜拍出的同一张照片,瞬间凤姐变成凤凰,老太太变成少女,尤其是在手机世界里VR就是这样。
所谓滤镜,说白了就是图像后处理。
大鹏巨幕影院系统中的图像后处理系统称为SmartColor,可以带来更鲜艳的色彩和更好的色温控制,包括以下功能:(1)自适应细节和边缘增强; (2)自适应色彩增强; (3)自适应对比度增强和色调校正。
尝试在 Oculus Go 和 Dapeng 上拍摄相同的照片。
大鹏的色彩更加自然,脸部层次更加丰富,头发的细节也更加细腻。
Oculus Go有明显的光环。
图13:图像后处理对比(右为大鹏巨幕影院)——镜头设计——VR头盔上的镜头本质上是一个放大镜,也是纱门等VR中诸多光学缺陷的“罪魁祸首”效应、杂散光等“帮凶”。
当显示屏幕分辨率大致相同时,VR镜头有两种观点:从镜头中心到镜头边缘的清晰度下降速度、菲涅尔杂散光和拖影。
例如,下图被美国军方用来测试镜片各个区域的清晰度。
将照片放入头盔中。
您可以清楚地看到图像中间的水平和垂直红线的最大比例是多少?图 14:净度对比基准图答案揭晓。
通过将上图导入到大鹏工程原型机和 Oculus Go 中,左右两侧可以看到的最大清晰比例分别为 11.2(大鹏)和 11.2(Oculus Go)。
从清晰度下降的程度来看,通过耳机观看上图时,大鹏巨幕影院和Oculus Go达到了相同的边缘清晰度。
与Oculus Go一样,大鹏巨幕影院也采用菲涅尔透镜。
与非球面透镜相比,菲涅尔透镜更轻,并且可以具有更大的视场角。
它们可以在长期使用后更好地保护用户的眼睛。
但由于其特殊的工艺和形状,牙齿之间漫反射的光线会造成杂散光和特殊的光晕。
图15:菲涅尔透镜的出现利用了菲涅尔透镜的优点来弥补其缺点。
大鹏的光学镜片经过专门设计和优化,有效消除杂散光和光晕。
这种优化效果可以在暗背景上亮光形成的图案中有效地观察到。
从 Oculus Go 头盔中捕捉图像,并将其显示在大鹏巨屏影院头显上。
仔细观察视野左下角“未安装的应用程序”和“环境”白色字体的拖影,与Oculus Go头盔的显示拖影一致。
影子是一样的。
图16:拖动测试图片 另外,在大鹏巨幕影院中打开“3D电影”->“三少爷的剑”,选择影院场景中的第7行,然后“关灯”,时间线就会冻结到00:01:02 暂停,屏幕显示如下内容。
如果仔细观察虚拟屏幕以外区域的杂散光晕,几乎是难以察觉的。
作为比较,Oculus Go 也显示类似的内容。
在SKYBOX中,找到宣传视频,将时间线暂停在00:00:11,观看场景选择“太空”,同时仔细观察虚拟屏幕以外区域的杂散光光晕会稍差一些。
图17:Halo测试全景声场 为了增强沉浸感,大鹏巨幕影院加入了独特的全景声模拟算法,让用户在观看视频时体验到全景声效果。
图18:全景声示意图(图片来自网络) 同时,为了减少周围环境对用户的影响,还实现了定向声场传播,让用户自己和周围旁观者听到完整的声音不同的效果。
深度功耗优化 根据CPU本身的状态,大鹏巨幕影院系统可以进入3种不同的功耗级别:正常、待机和深度睡眠。
实际观看续航可达4小时。
结合相应的用户操作和接近开关,大鹏巨幕影院系统可以自动切换不同模式,以节省电量。
同时,根据当前CPU、GPU等硬件模块的负载情况,大鹏巨幕影院可以动态调整CPU、GPU的频点,以满足不同使用场景的性能需求。
例如,当CPU使用率大于某个阈值时,系统将以更高的频率运行CPU,以满足更高的性能要求;当CPU使用率低于一定阈值时,系统将以较低的频率运行CPU。
点以满足较低功耗的需求。
Oculus Go也有类似的电源管理机制,称为Dynamic Clock Throttling(中文翻译动态时钟调整),但实际观看时间只有大鹏的一半,大约2小时。
结束语 以上是大鹏巨幕影院技术创新分享的主要内容。
笔者期待越来越多像大鹏这样的真正的国产硬科技企业从底层开始走向顶层。
毕竟,中国科技的发展需要越来越多的技术人员坚守在板凳上,脚踏实地地解决一个又一个技术难题。
真的要嚼下去了。