VR已经成为游戏业的下一个引爆点。VR186一篇文章点出三个方向:风景、爱情以及幻想。虽然之前已经断断续续茶余饭活聊起。今天突然想彻底找找VR的信息了。抄来几篇比较好的文章和点子。
http://www.zhihu.com/question/24425068 知乎里一段不错讲解
作者:Ye Feng
链接:http://www.zhihu.com/question/24425068/answer/37770420
来源:知乎
Oculus Rift是一种虚拟现实仪器(以下简称rift),用一个遮罩在双眼前的不透明显示器,搭配两个可更换透镜,高质量陀螺仪、加速度传感器和地磁传感器,以及后来的位置跟踪器(DK2专有)而成的一整套设备。目前rift尚未发布面向正式消费者的版本,而只公开了两个版本开发包(development kit),通常称之为DK1和DK2。
Rift的工作原理分为两部分。一部分跟目前3D电影或者3D眼镜概念类似(顺带说一句,我个人比较讨厌3D这个说法,太宽泛也极具商业欺骗性,更准确的说法是stereoscope,这里感谢@Milo Yip指正),即模仿现实世界,通过为左右两眼显示不同的画面,让大脑合成一副带有更多深度信息的“立体”图像。另一部分是跟互动相关。由于rift不只是要做另一个Sony HMZ-T3W,所以它为了互动体验还专门提供和优化了捕捉头部运动的组件。Rift设备可以很精准且迅速地捕捉到头部的任意旋转,DK2更能在一个空间角范围内捕捉头部的线性运动。
结合这两部分,rift能营造一个和现实世界完全隔绝的视觉环境,且能提供一定程度上的体感结合,即头部旋转和小范围线性移动。在硬件上也做到了较好的广视域和低延迟。
=============================
Rift的义务广告到此结束。了解了rift是什么后,我们进入正题:要具备怎样的知识才能进行rift开发?
首当其冲的一点是3D相关知识。这里我说的不是stereoscopic的“3D”,而是一些计算机图形学基本知识。这里面包括现代实时图形应用的主要逻辑组成部分,包括:
摄像机
光照及其原理
坐标系及其转换
材质和纹理系统
基于网格的物件表示
其他方面如屏幕空间后处理效果、shader、动画系统等铺开的部分不是必须项。说得更明白一些,是一个运用3ds max/Maya这类数字内容创作软件的创作人员应该熟知的部分。这方面稍有门槛,但不算太高。
在早期stereoscope概念出来的时候,很多开发者还必须关心如何在节省性能的前提下渲染左右两张不同的画面。而现在rift硬件和SDK已经做掉大部分工作,不要说什么头部高速同步,连透镜色散和调瞳距都被我们卡马克大神和Abrash大神做掉了。而且Oculus公司也跟很多引擎大厂合作,提供了这些引擎的插件。所以如果你用Unity或者Unreal的话,连SDK集成的事都可以省去了(out-of-box)。留给开发者的任务是更好地理解rift硬件所能带给我们的特性,并将这些特性应用到实际应用中去。
举个很实际的例子:由于rift是沉浸式的体验,带上了rift视觉上就跟外界说拜拜了。这时候输入便成了一个棘手问题。如果要用户在看到logo之后,再脱下rift去摸键盘就太弱了,而且不是所有键盘用户都能应付盲打,保不齐某些用户还要在使用过程中再脱下来去找键位。配备一个手柄会好一些,但不能从根本上解决问题。当然还有一些诸如挂载LeapMotion、MYO之类的解决方案,但这都超出了rift本身的范畴。就这个问题来说,我倾向于从rift能提供的输入来着手解决。比如把头部旋转和移动不仅看做是摄像机的同步,还能当做一种输入方式。这方面比较好的例子有《Titans of Space》和《Vanguard V》,但我最欣赏的还是Google Cardboard官方应用的做法(好像有奇怪的东西混了进来)。
所以我认为除了必要的3D知识之外,rift开发要学习的东西对于大部分人都是全新的,而且他们基本都属于应用层问题。
官方煞费苦心地在官网放了很多关于如何开发rift应用的忠告(Oculus Best Practices Guide),主要是一些Do and Don't的条例,有较多关于避免眩晕(sickness)和增强沉浸感方面的内容。不过我浏览了官方Oculus VR Share (Beta)中的demo(吐了)之后,却发现好像甚少有人注意这些点。这里先列出一些我初步看下来有必要关心的吧:
从头部动作到画面展现之间的延迟控制在20ms以内,以减少眩晕感。可使用内置的延迟测试工具测试应用的延迟。
使用位置跟踪的场合下,当用户接近跟踪区域边缘时,以某种方式提示用户回到跟踪区域内。
不要尝试修改图像变形算法、不要尝试修改头部跟踪数据、不要尝试修改位置跟踪数据。
人眼通过立体图像获得场景深度信息,对近处物体很敏感,一旦物体拉远则感知度立即变差。
尽可能地将UI融合在场景内,且最佳显示的位置是距离观察者2-3米的位置。准星一类的UI应该以聚焦对象的深度进行渲染。
加速/停止会引起视觉和平衡器官之间的感知冲突,如果加速/停止不是由用户发起的,则尽可能地避免上述情况。
避免线性垂直震动,接近0.2Hz频率的垂直震动让人最感不适。非垂直震动在接近0.3Hz的频率让人最感不适。
Zoom,或镜头缩放效果,尽可能避免。
避免要求用户平移、后退、旋转的场景。
使用用户熟知的环境作为背景(如响应头部转动的天空盒)有助于减轻视觉冲突和增强舒适感。
避免使用高频纹理(如条状、精细的纹理),高频纹理会增强环境中对于运动的感知,会让人不适。改用低频纹理可以改善这一状况。
解决用户接触输入设备困难的问题,或者将头部运动本身作为一种输入方式。
使用3D音效加强沉浸感。
最后还是夹一下私货,这是我在知乎专栏写的:[原]Oculus Rift DK2试用手记 - 灯塔实验室,有兴趣可以看看。
以上
====
UPDATE: 上面说到的“官方解决”的输入问题,Oculus Touch控制器和Steam VR(HTC Vive)所提供的几个原型控制器,可以算是初步解决问题了。相比之下Gear VR头盔上的触摸板、Cardboard上的磁块拨片对于重度游戏来说就显得过于简单了。
http://m.vr186.com/vr_news/vr_industry_news/608.html 文章来源
“给国内VR游戏开发者的8条建议”
1.笨鸟先飞(尽早入场非常关键)
大公司进入VR硬件领域的冲击肯定很大,但在VR游戏领域未必。但我仍然主张国内开发者早些入场,原因在于:
1)早入场是混资历的最好方式,以后无论成功与否都可以跟人吹嘘:“我xx时候就在做VR游戏了!”
2)VR游戏开发技术和理念需要积累。虽然我们也可以等国外开发者做出成功作品后再来克隆(这是比“山寨”要更高科技的表达),但国内外用户喜好不一样,就算国外成功的作品克隆回来也不见得有好结果(看看手游就知道了),所以早些积累总是没错的。尤其对于那些喜爱休闲游戏、单机游戏的独立游戏开发者来说,VR游戏或许是一片更容易成功和发挥才能的土壤。
2.VR从满足小众用户开始(VR并不是所有人的必需品)
嗯,如果你决定要做VR游戏,那么不要试图说服你身边的同事、亲人来使用。他们首先很可能连VR是什么都不知道,然后又会质疑你“用VR玩游戏有什么好处”。你要做的事情就是坚信VR游戏是有前景的,然后沿着这条道路走下去。这就像2009年的手游市场,当人们还在怀疑这个市场是否存在时,《愤怒的小鸟》出来了。
3.选好硬件支持很重要(考虑不同的设备)
国内的游戏开发者在开发前首先要想好支持什么VR头显,这意味着体验的内容、用户和渠道都有差异。
举个例子,如果你决定要为Oculus Rift开发,那么你首先要成为他们授权的开发者,使用他们的SDK,考虑其产品覆盖的地域和人群,体验其他开发者制作的内容,然后再来决定做什么内容。
倘若你决定要支持国内的VR头显,那么你最好跟厂商取得联系,定好内容类型(比如厂商推崇FPS游戏),最好还能获得一些资金支持。
选硬件还包括选择操控设备。VR游戏的关键之一是如何操控,这也是影响用户体验最重要的因素之一,一旦确定好内容,就需要想好如何操作。但目前操控设备的问题很多,要么繁杂(手柄),要么不成熟(手势、脑波、语音),要么功能不够(手环)……
4.VR从满足小众用户开始(做独特的内容)
其实这是废话。从红白机时代开始,我们就知道所有游戏种类都只会满足一部分人的喜好,区别只在于是大部分还是小部分。所以,如果你还是一个秉持“做出一个满足所有人喜好的游戏”理念的开发者,那我劝你还是老老实实“玩机机”好了,不管手机、电视机还是游戏机,自个儿玩去吧。
VR游戏在这一点上尤甚。现在的趋势之一是内容片段化,通过制作某一段场景和某一种体验,就能让用户乐于反复尝试,譬如过山车、翻转大摆锤等。
5.最好找到资金支持(找到可以帮忙的发行商)
VR游戏开发成本会大于开发者预期,所以最好能提前找到资金支持。这是忠告。
国内VR应用发行商现阶段可能只有Nibiru睿悦,但目前也仅限移动VR游戏。而且它也没有Oculus那么财大气粗,可支持的资金有限。所以最好想办法寻找创业资金。
如果你不能找到资金支持,那么最好勒紧裤腰带,轻装上阵,并选择比较容易实现(开发成本不高)的内容。
当然,如果你是富(不服)二代(就死),那就可劲造吧,功成名就的机会就在眼前(能不能成功就看天意)。
6.眩晕感具有两面性(眩晕感可能不会消失)
现在包括Oculus在内的硬件厂商一直担心VR游戏带来的眩晕感会影响VR的口碑甚至前景发展,但事实上,VR的眩晕感应当一分为二来看待。一方面,因系统性能、处理效率瓶颈和图形显示技术缺陷带来的眩晕应当被解决;另一方面,因体验本身而产生的眩晕应当被正确认识和保留。举个简单例子,如果VR过山车之类的应用让用户体验后并没有眩晕感觉(刨除个体差异),这说明体验并未到位(胃)。对于这种因体验本身而产生的眩晕,笔者认为这是可以接受和被克服的,历史上包括Quake、CS、魔兽世界等游戏都向我们证明了这一点。
好现象是包括AMD、Intel、NVIDIA、Unity、ARM、Google等在内的芯片/系统厂商们已经在为VR提供技术支持,这会极大程度缓解甚至完全解决因系统性能、处理效率不足和图形显示技术缺陷带来的眩晕现象。
7.盈利模式要清晰(游戏内并非唯一收入)
国内手游产品因为“免费+道具付费”的模式而大发其财,VR游戏则因为没有渠道、没有成规模的用户,难以进行复制。
尽管现在国内的硬件厂商还受困于“先卖硬件,后出内容”的模式:没内容不好卖硬件,没用户就没付费。但笔者一直主张硬件+软件共同销售的模式,如果开发者能够与硬件进行结合,那么就不要错过机会。
8.AR值得关注和借鉴(增强现实可以先行)
不要把VR游戏当做新事物,而要看到VR与传统行业/应用结合的威力。甚至VR也并非你必须要先做的事情,你可以了解一下AR(增强现实)。AR应用已经有比较清晰的盈利模式(感兴趣的请阅读本公众号3月14日文章《专访旨尖动漫》),并且AR内容无论从技术、用户、渠道等,都与VR有相通和可以借鉴的地方。
来源:智云 微信号:VR产业人