展会信息港展会大全

美军VR专家说VR难成功 Oculus觉得言之过早
来源:互联网   发布日期:2016-06-01 07:32:24   浏览:20195次  

导读:关于这个问题,Ocululs 的第二名华人工程师胡韬(taohu.usc@gmail.com),此前曾参与 Oculus 多个 早期 VR 软件项目的开发,从他了解的相关知识与信息分析,觉得可能有点言之过早了。以下为胡韬投稿正文: 最近被一篇名为《美军专家表示 VR 可能永远不会成功...

关于这个问题,Ocululs 的第二名华人工程师胡韬(taohu.usc@gmail.com),此前曾参与 Oculus 多个 早期 VR 软件项目的开发,从他了解的相关知识与信息分析,觉得可能有点言之过早了。以下为胡韬投稿正文:

最近被一篇名为《美军专家表示 VR 可能永远不会成功》的文章刷屏了,好多朋友过来问我 VR 是不是伪需求,VR 行业能走多远。我认为,这篇文章本身包含了不少作者的个人情绪在里面,而针对这篇文章的很多评论也多多少少夹杂了个人情绪和利益站队。我尝试刨去这些干扰,只给大家讲些事实,结论大家自己去判断。

先说下自己的背景,我于 2014年7月 加入 Oculus,当时 Oculus 刚被 Facebook 以 23 亿美金收购。我有幸参与了不少早期 VR 软件的开发(Oculus Store、Oculus Video、Oculus Social),眼看着 Rift/Gear 从粗糙的开发者版本逐渐迭代为成熟的消费者版本。与此同时,整个 VR 产业在 Oculus 和其他厂商的推动下逐渐浮出水面。当然,最兴奋的还是可以和偶像 John Carmack 一起工作。(关于 John Carmack 的故事,一天一夜都讲不完,有兴趣的朋友可以翻阅《Masters of Doom》)

回到美军专家 Steve Blake 的那篇文章,他的核心观点是说佩戴 VR 设备时的恶心眩晕问题 (英文有很多种说法,包括 nausea、motion sickness、simulator sickness 等,以下简称 “眩晕” ) 无法解决。

首先,我们来看看 “到底是什么原因导致了眩晕?”。Oculus 的开发者博客上其实已经有一篇文章系统性地论述了这一问题(VR Sickness, The Rift, and How Game Developers Can Help)。文章写于 2013年,作者是 Tom Forsyth, 一位纵横游戏业 20 多年的老兵,曾在 Valve、Intel、 RAD Game Tools 工作过。他描述了导致眩晕的一些原因:

一、可以解决的。

主要有如下四点:

1、错误的畸变校正 (Distortion Correction)

为了增强用户的沉浸感,VR 设备会采用一组放大镜片来扩大用户的 FOV (Field of View,视角),原理和广角镜头是一样的。但是,视角扩大的同时,图像也会发生畸变。传统的思路是从镜片着手,采用昂贵的非球面镜片来尽量减小图像的畸变。而 Carmack 则逆势思维,在图像渲染时直接进行逆向畸变,然后通过透镜来抵消这一畸变。这样做的好处是显而易见的,它减去了采用非球面镜片所带来的额外成本。而这样做的挑战在于--需要精确地计算逆向畸变的参数值。如果数值不准确,用户通过透镜看到的图像依旧会带有畸变,从而产生眩晕。幸运的是,主流厂商 (Oculus, HTC, Google Cardboard, PSVR) 都在他们提供的 SDK (Software Development Kit, 开发者工具包) 里帮开发者解决了这一问题。

2、错误的瞳孔距参数 (IPD, Interpupillary Distance)

在模拟 3D 成像时,渲染在屏幕上的图像会分为左右两屏,分别模拟人的左右两眼所看到的图像。这两个图像基本相似,除了些微的差异 (这点大家在上面的图片中也可以看到)。差异的大小取决于人的瞳孔距,而不同人的瞳孔距是不同的。所以,在进行图像渲染时,就需要考虑用户的实际瞳孔距。如果瞳孔距参数设置的不合适,用户就无法聚焦,从而产生眩晕感。在之前的 DK2 开发者版本中,Oculus 提供了参数设置工具来让用户提前设置自己的瞳孔距参数。而在最新的 Rift 消费者版本中,Oculus 更进一步,直接提供了一个硬件开关来动态调节瞳孔距参数。

3、高延迟 (Latency)

美军专家 Steve 也在文章中提到了延迟问题。这里的延迟,指的是用户产生输入 (如头部转动) 到用户看到图像变化之间的时间差,如果延迟足够大,就会在用户所感知的行动和实际所见之间产生错位,造成眩晕。Oculus 首席科学家 Michael Abrash 有一篇文章专门讨论这个问题 (Latency – the sine qua non of AR and VR)。这篇文章写于 2012年 底,对导致延迟的原因做了精确的阐述。以头部转动为例,从用户转动头部到实际看到眼前图像变化,需要经历 3 个环节:传感器检测到头部转动角的变化->CPU 计算出新的需要渲染的图像->屏幕更新图像。每个环节都会产生延迟,当总延迟高于 15ms 时,就会产生较为明显的眩晕。文章还指出了相应的解决方案--使用高刷新率的传感器和 OLED 屏幕。做为 Michael20年 的老朋友,Carmack 通过工程努力以及推动 Oculus 与三星之间的合作,完美实现了这一方案。另外,Carmack 还在第 2 个环节做了进一步的优化,引入 ATW (Asynchronous Timewarp), 把延迟控制在了 15ms 以内。这里面的精彩故事可以从 Carmack 在 Oculus Connect 上的演讲中找到。

4、不符合 VR 的产品设计准则

VR 应用的开发和传统 3D 游戏的开发有不少相似性,但因为 VR 提供了全新的交互方式,二者又有很多不同。Valve 的 Joe Ludwig 专门写过一篇文章来阐述 VR 应用开发和传统 3D 游戏开发的不同以及注意点 (Lessons learned porting Team Fortress 2 to Virtual Reality)。

二、无法解决的。

正如美军专家 Steve 所描述的,这里面主要有两类:

缺乏深度信息:正常人眼在观看物体的时候,是有焦距的,不同焦距对应不同的视角,在视角内的图像,会很清晰,而在视角外的,就会比较模糊。玩过单反的朋友应该对此有比较深刻的体会。但是,目前的 VR 设备在进行图像渲染时,并没有考虑焦距,都是默认焦距为无限远 (既所有的物体都能清晰看到)。这个问题其实并不是非常严重,但是有少部分人会因为这一原因而导致眼疲劳,造成眩晕。

运动信息感知的错位:这里导致眩晕的原因其实和之前所述的延迟类似,即用户所感知的行动和实际所见产生了错位,更深层次的原因是视觉神经和前庭刺激 (vestibular stimuli) 之间无法达成一致。比如说,用户在 VR 世界里玩跑酷游戏,但是在现实世界中却静坐着。其实,现实生活中的一些眩晕,也是由这个原因导致的,比如说晕车晕船。

Tom Forsyth 的这篇文章写于 2013年6月,事实上,站在 2016年 的今天,我们再回过头去看, 上面所说的两个无法解决的问题,都已经得到一定程度的解决。最新的 AR 设备,已经可以展示深度信息(参考硅谷小伙伴 Amber 的文章Magic Leap 和微软的 Hololens 相比有哪些异同点?,他详细描述了 Lightfield Display 技术);而最新的 VR 设备,已经实现了位置追踪 (positional tracking),意味着用户在真实世界中的移动可以一对一的映射到虚拟世界中。而诸如 Virtuix Omni 这样的硬件,也在尝试解决如何在虚拟世界里自由奔跑的问题。

另外,在产品设计层面,开发者们也有很多创新。Steve 所说的第一人称模拟飞行是 VR 里最容易导致眩晕的一类应用(视觉神经和前庭刺激有非常强烈的不一致),但是用户又偏偏非常喜欢这种类型的应用。于是,机智的开发者们通过各种产品设计层面的创新,来满足用户的需求。无论是 GearVR 上的 Smash Hit, 还是即将上线 Oculus Rift 的 Eagle Flight, 都是其中的典范。

好了,讲到这里,我相信大家对于美军专家 Steve 的观点,已经有了一个更全面的认识。Steve 的观点,放在 2016年 的今天,是很难站住脚的。另外,在其余一些来自他的判断中,也有不少有漏洞,具体如下:

1、“每个人都觉得这些设备是崭新且具有革命性的,但这不是真相。在这两年发生的事情,仅仅是这些设备的价格从 8 万美元跌到 5 百美元。我们并没有做出太多技术上的创新”, 这个论据非常脆弱,位置追踪和手势追踪 (hand tracking),都是当代 VR 设备的核心技术,这些技术在 20年 前都是不存在的。

2、“目前大多数 Demo 都是宣传性质的,在其他的行业展会上通常都是只有几分钟长的 VR 内容。我不知道这些厂商是不是故意这样做的……这也解释了为什么这么多人认为他们喜欢 VR”,这是典型的阴谋论,事实上,早期的 demo 都只有几分钟长,是因为他们真的只是 “demo”。Oculus 即将上线的三十多款应用,每一款都可以让用户体验好多个 “几分钟”。

3、“我们都是专家,知道自己在做什么,但当你站在我们的实验室里举目四望,会发现没有一个人戴着 Oculus。仅在很少数的情况下,研究人员会戴上 VR,只是为了确认一些内容,然后在 30 秒内摘下来。大多数时候,我们都是在并排放置的两个显示器上观察视觉效果。当项目最终完成时,因为再也不用带这些头盔了,我们所有人都很开心。” 工程师不在开发时佩戴 VR 设备,并不是不喜欢 VR,而是因为戴上后就没办法进行开发了。虽然 Unity/Unreal 都在尝试 VR Editor (可以实现头戴 VR 设备进行开发),但是目前阶段效率最高的还是在 PC 上开发,然后必要时戴上 VR 设备检查效果。另外,项目完成了,大家都很开心,难道不是因为项目完美收工么?

在硅谷的各种 VR 展会上,经常能碰到一些十几年前就心怀 VR 梦想的技术人员,他们对这个领域倾注的热情,是常人难以想象的。正是这群人十几年的技术积累,使 VR 在今天有可能走进每个人的生活。文末,引用 Michael Abrash 在 Oculus Connect 上的一句话,和所有关注 VR 行业的同学共勉。

“VR 时代正在来临,这一段崎岖的小路能否走通,靠的是几千个关键人物的行动——这里面很可能就包括你。这也许让人难以置信,然而我完全坚定。”

“VR is coming, but the path it takes depends on the actions of a few thousand key people, potentially including you. That may be hard to believe, but I’ m completely serious.”

赞助本站

人工智能实验室

相关热词: VR Oculus

相关内容
AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港