雷锋网按:就在昨晚,谷歌首款Daydream VR头盔正式登场,仅售79美元
。
本文是
VR
行业从业者胡痴儿在知乎上关于谷歌Daydream的探讨,雷锋网获授权发布于此,希望能加深你对Daydream VR的了解。
利益相关:
如图,体验完daydream领了一套广告衫睡在了Google办公室的地板上做了个『30分钟』沉浸感极强的白日梦......
打个形象的比方:刚出生的婴儿,它会到处爬,到处望,看看这世界是怎样的,这就是Google cardboard前两年头动交互所做的事情。
两年后这个婴儿大致会看世界了,于是开始挥舞着自己的小手,去抓身边的、周围的东西,可能抓得有些幼稚、有些凌乱。
但是随着它慢慢成长,便越来越会和身边的东西交互,抓东西越来越灵巧和自然……这就是daydream,它的核心就是用controller来『抓东西』。
(从尺度上来看它可以随时放进口袋,便携性符合移动端要求;而从正面的简单三个按键上看来,它也是适合做简单的、轻度的交互,所以受众广,利于VR早期的推广。)
所以,用一句话概括就是——
用手部控制controller进行操作替代了原来用头动控制cursor的交互,把头部从繁重的交互操作中解救出来,是体验上的升级。
所以我们重点讲讲它的交互——
另外,我们从文件中也可以看出来,daydream确实是由cardboard演变过来的:另外,我们从文件中也可以看出来,daydream确实是由cardboard演变过来的:
列个目录慢慢往下写:
这个controller是用蓝牙连手机的遥控器,示意图如下:
经知友经知友 @tony chen 提醒,音量键在这里。(因为在手机插入手机盒子之后不方便操作音量,而有需要随时调节。)
从触觉上来说,一个平的略往外凸的按钮,下面是凹进去的按钮,能让你在VR中摸出来。
握着这个controller的姿势和单手手持手机相似,所以它不支持multi-touch,而更多的是你大拇指单指的操作——用大拇指操纵这三个交互控件。
(为了避免手把controller甩出去,所以手腕上还是系了个绳)
在cardboard和很多移动端VR中,都使用转动头部来控制cursor的。
而Daydream的controller,则在VR中发出的虚拟『激光』移动cursor,避免过多的『头动交互』引发的脖子疲劳……这是交互的一大进步。
raycast这种交互用到了IMU
(加速度计、陀螺仪和地磁计三者数据的整合),虽然只有三自由度,但是已经够用了。
这里感兴趣的同学可以看
《如何形象地理解四元数?》
(本文相关链接请点击阅读原文查看)
,我非技术就不讲了。
想象一个点,向一个三自由度的球形曲面投射一道射线,它只要稍微转转手腕就能指到这个球面里的任何一个点。(所以交互起来很轻松)
在cursor的设计上,
Google学习了Hololens中的『gaze』
,即镭射出的射线和虚拟物体相交形成了一个圆。
而这个圆是贴着虚拟物体表面的走的,所以增强了虚拟物体的立体感。
从下面的demo中我们可以看出,在来到主视角之后,用户并不需要使用『头动』来调整cursor,而是直接轻松简单地
用了遥控器的raycast完成了交互
(微微转动手腕调整遥控器位置)。
用镭射的交互方式用来做选择其实是很轻松的(用户交互成本使用路径最低)——
用户站在&坐在一个固定位置,就能轻易地选择到他能看到的任何物体
。在VR中的交互感觉,就像激光笔一样。
不知道你们有没有过用很强的激光笔指着远处,当你在很远的地方看见激光一瞬间达到,这种迅捷的交互有种很强的快感。(
如果地球上所有人同时用激光笔指着月亮,月亮会不会变颜色?
)
我们都知道,越远处的物体,越相当于贴在一个三自由度的球面上,比如极远处的星辰,但是越远处的物体需要转动得幅度越小,却越难以精确指到。
用raycast选择道具栏中的物体用raycast选择道具栏中的物体。
在投掷道具时,激光镭射的虚线就会显示出来,示意你将会投掷到的地方。
指着一个可被激活的道具。
点击touchpad,则触发这个道具,比如这里是宝箱打开。
拾取道具,选中道具后点击touchpad,道具会向你飞来。
道具会向你飞来。
不像HTC vive那样低头弯腰过去捡那么累,
daydream controller在降低了操作成本的同时也降低了沉浸感
(因为游戏并不是让用户轻松的),但是又能提高留存率,因为玩起来轻松用户更愿意久玩。
当然还可以用来瞬移传送当然还可以用来瞬移传送。
在Google 街景地图VR中,每个点都是一个全景球,用抛物线式的raycast进行传送。
(为什么要用抛物线呢?因为如果直接用直线raycast指向地面可能不容易指准,而产生比实际距离更靠前或者更靠后的偏差,而一个抛物线投射过去其实是有两个维度的,这时能更准确地判定该点的距离,或者深度。)
这段将在《用哪些方式在VR中移动(locomotion)比较合适?》中再展开详细讨论......
2、连续motion
连续motion用到的更多是controller里的陀螺仪(gyroscope),传回来的只有角速度(angular speed)。
因为它只有三自由度的方向追踪,而没有六自由度的位置跟踪,所以这个controller只能改变方向地摆啊摆。
用motion作为游戏的交互在7、8年前的PS3 move和wii就有了,就是运动手柄以控制虚拟中的某个握着的道具。
个人理解——如果说触摸是适合2D平面的交互,那么
motion则是适合3D立体的交互
。即便以前3D交互都是用任天堂发明的摇摇杆,但还是在2D的手柄上摇动,难免有维度感的缺失。
我觉得VR交互设计的核心就是思考——将现实中你握着的controller映射到VR中你的avatar握着controller幻化的道具,要像真的握着它幻化的道具一样,就得对它幻化的道具的交互有深入的理解——
人们是怎么用激光笔指东西的?怎么用鱼竿钓鱼的?怎么用平底锅烹饪大饼的……
daydream controller把motion的交互放在了手上,而不是头上——用手来运动,而不是头动控制保证了『不晕』。
2.1、摇晃
摇动魔法花朵
2.2、平移&推动
移动平底锅
连续地一点点地把菜扒到盆子里——
这里有个细节:你得调整刀的方向,让刀用刀背(刀最宽的部位)把这些菜推过去,而不是刀刃或者其它地方,所以你感到这确实是一把刀,因为你在交互时感到了刀锋和刀背的不同功能,会产生不同结果(你用刀锋无法把它们推走)
而你手腕调节controller将它和砧板调垂直,这个状态就是『连续motion』——细微、连续的方向调节。
2.3、方向控制
摇晃手腕控制龙前进的方向,而这条龙是第三人称的,而你所在的视角是静止或者匀速的,以此来保证不晕,特别适合运动类游戏(如果这条龙是你第一人称来玩一定晕倒你吐血)。
但是沉浸感不够,龙会舞出你的视线,必须转头调整视角跟上。
你手腕舞动着controller,模拟舞龙艺人舞龙的体验。
放风筝和舞龙同理,都是上下晃动比较厉害的『镜头抖动』,所以也采用了第三人称。
你手腕舞动着controller,模拟放风筝的人放风筝的体验。
2.4、倾斜(tilt)
微微摆动『迷宫』,让弹球在里面滚出来。
倾倒平底锅
另外,吃苹果和喝水则是一种特殊的倾倒,将虚拟物体朝你的方向倾倒。
吃苹果
喝药水
3.离散motion
离散motion主要用到的传感器是加速度计用来感知加速度。
(你手甩出去一瞬间,视觉上得到反馈,所以感觉非常爽。)
如果类比平面交互的话,
这个操作有点像iOS上的快速滑动(flickr),有一种丢弃的感觉
。比如iOS中的滑动就会根据你手指滑动速度的快慢来决定页面滚动的快慢。
3.1、击打
你挥动controller,越用力则在VR中反馈到的视觉冲击力和听觉上的力度越强。
锤子锤虚拟物体