VRDC笔记——VR交互原型制作的50条最佳实践

谷歌工程师Rob Jagnow在VRDC(虚拟现实开发者大会)上分享了他们在实际工作中总结的VR原型快速制作最佳实践,分12个方面共计50条经验。本文经视频内容整理而成,由于讲者时间有限(32分钟),有些原则只是一句带过,斜体部分为笔者评论,文中若有翻译纰漏,请指正。原视频地址(需科学上网):Lessons Learned from VR Prototyping
文末附优酷链接。

1199677-21cf5e6f7b20db5d.png
Audio
  1. 好声音是沉浸式的关键(Great audio is critical to immersion)。
  2. 空间音频不仅仅是动态音量的改变(spatial audio is more than just dynamic volume)。VR中的音频不只是近处音量大,远处声音小,更主要的是在相同的音量下,你能知道声音在什么位置,即让体验者通过声音知道什么在他前面,什么在他身后。幸运的是谷歌有这样的解决方案,可以在Unity使用。(嗯,课后去找找)
Process
  1. 迭代。你的第一个创意不一定是最好的创意(Iterate . Your first idea probably won't be your best)。其实在Tile Brush之前,谷歌内部同时有5-9个比较好玩的创意,Rob Jagnow称Tile Brush是“happy accident”。(类似意外怀孕的心情,i guess)
  2. 尽可能多做测试(Test in VR ASAP)。不要纸上谈兵,尽早放到unity里进行测试,越早犯错越好。
  3. 受众(Scope)。确定你的应用面向的人群是哪些。
  4. 并不是所有的体验在VR里都很好(Not every experience will be better in VR)。
  5. 不要被现实约束(Don't be constrainted by reality)。Think Bigger,有人喜欢宠物,那你就做个关于宠物的VR?别这样伙计,做个霸王龙怎么样?
  6. 针对VR的特性设计交互(Design from the ground up specifically for VR)。稍后会展开。
Motion
  1. 当你的眼睛与前庭系统达不到一致,你会感到不舒服(When your eyes and vestibular system disagree,you get sick)。当体验VR过山车游戏的时候,多数情况下你会感觉到不适,你的眼睛知道哪里加速、减速、坠落,但是你的前庭系统并没有相应的感受到加速、简书、坠落,于是就引起不适,这跟晕车晕船一样的道理。
  2. 使用匀速运动或瞬移来最小化这些问题带来的影响(Minimize problems with constant velocity or "Blink Teleport")。这个就不用多说了,我们在VR开发的时候瞬移已经是标配了,只是有些人不知道为什么要用瞬移。


    1199677-d1c659f480a1d695.png
    现实中的移动曲线

    1199677-7992d6971d5e37a2.png
    瞬移的移动曲线
  3. 充分发挥创意在瞬移预览和其它移动类型上(Be creative with teleportation preview and other types of motion) 总之是为了避免晕动症,VRTK中有Dash Teleport,即以极快的速度移动到指定位置,同时闪屏;带指针的预览,即在选择瞬移位置的时候,会有箭头出现在瞬移位置,体验者通过手柄倾斜控制箭头方向,实现瞬移后,箭头决定体验者的身体朝向。
  4. 移动时缩小视野范围(Narrow the FOV While Moving):在Google Earth VR中已经应用了这条原则,当用户拖拽地图是,视野周围被黑暗包围,实际体验中,用户并不反感这种设计并很快习惯
  5. 瞬移到一个心理上能接受的安全区域(Teleport to a psychologically safe space)。比如在一个房间里,瞬移时应避免头部穿墙。在VRTK中有关于防穿墙的交互设计,通过黑一下屏幕来让体验者感到不那么奇怪
Interaction
  1. 用户喜欢创造的体验(Players love experience that allow for creativity)。Tilt brush就是关于创造的体验,你需要做的是让体验者有一个愉快且易用的创造体验。
  2. 能扔一些东西(Let them throw it)。人有野性,有做坏事的冲动,给他们一个这样随心所欲的环境,能发泄一下情绪也是不错的。还记得Job Simulate吗?
  3. 使用手势(Think about gestures)。这里不只是借助什么Leapmotion来实现手势识别,更确切的说是姿态,比如手柄伸向脑后可以认为是一个拔剑的动作,两个手柄放到左下腹可以认为是冲击波的准备动作。
  4. 让稀松的行为有结构化的结果(Let sloppy actions have structured result)
  5. 让你的用户具有超能力(Give your players superpowers)。像魔术师一样变化出各种东西,轻松举起一块巨石,这也是VR的魅力所在——有生之年实现做梦都想拥有的能力。
Controllers
  1. 使用吸附约束移动(Use snapping to constrain motion)VR是在3D环境中的交互,故三个轴向都会有运动,就像PS或3DS Max这样的软件,用户不一定必须精确控制物体达到某个位置或旋转角度,当接近目标点时,可以使用吸附来让体验更好。
  2. 保持交互发生在对用户比较舒适的区域(Keep interactions in a comfortable space)。用户不希望伸直手臂去抓取物体,而是希望伸伸手就能够到它。将需要交互的物体放在触手可及的地方。
  3. 控制行为不一定100%模拟现实(Controls don’t have to be mapped 1:1)。像VIVE或Oculus这样的体验空间有限,移动端VR更是没有空间映射,对于一些大场景,我们不一定非要让控制行为完全符合现实,激光指针就是一个很好的例子,我们可以通过它来拾取人所不及的地方。
  4. 使用振动(Use haptics)。反馈是增加真实性的关键,在触觉反馈还没有实现的现在,振动反馈是给体验者比较好的反馈形式。比较经典的是The Lab里的射箭模块,拉弓的动作会激发振动反馈,给人一种真实的体验。
Environments
  1. 我们喜欢大空间(We love huge spaces)。
  2. 将你的世界划分成更小的空间,以适合典型的物理空间(Divide your world into smaller spaces that fit into a typical physical space)。
  3. 放置物体在某种程度上是保持用户在物理空间中(Place objects in a way that keeps players in the physical space)。举了高尔夫的例子。
  4. 为所有物体做好贴图,哪怕只是给它们一些微小的噪点纹理(Texture everything, even if it’s just a subtle noise texture)。hello PBR。
  5. 在虚拟世界中标识出现实世界的边界(Show the physical bounds in the virtual world)。这个在实际体验中已经有很多经历了,有的人将手柄狠狠甩向了机箱,有的人把手柄戳到了屏幕上,有的人把头撞向了墙。
  6. 每个人都喜欢粒子系统(Everyone loves particles!)。想想星球大战的激光剑吧,光这个武器就能在VR里耍上半天。其它,下雨的场景、火焰的喷射、爆炸的效果,都能让体验者沉浸其中流连忘返。
Scale
  1. 精确的缩放比例(Accurate scale matters)。
  2. 范围的缩放能够传达强大或脆弱的情绪(Scale can convey power or vulnerability)。也很好理解了,类似蚁人,当他变小的时候,玩具火车也成了难以逾越的障碍,当他变大的时候,房间就成了玩具模型。讲者提到在VIVE场景中的例子,一个场景将CameraRig高度改变,人们能察觉出自己身高的变化。
  3. 将缩放作为工具使用(Use scale as a tool)。
  4. 当你改变缩放的时候,不要忘了缩放物理效果和声音( When you change scale, don’t forget to scale physics and audio)。讲者的建议是,巨人和矮人对于重力的感觉是不一样的。声音同理。
Copresence
  1. 体验者在触碰物体的时候总是预期它会有所反应(Players expect something to happen when they touch)。
  2. 不要鼓励不期望发生的行为(Don’t reward bad behavior)。讲者演示了一个demo,面对面打扑克,当体验者离开牌桌的时候(这是不期望发生的行为,因为你有可能绕到对面看对方的牌),场景变灰,灯光暗淡,音乐减弱。
  3. 鼓励友好的社交交互(Do reward prosocial interactions)。当你与联机的好友say hello,击掌,碰拳,这时给这些动作一个例子特效,让两者的动作更加酷炫,用户会更加倾向于做这些行为。
  4. 巩固社交的底线(Enforce social boundaries)。还是人性,当VR社交中的用户有骚扰行为的时候,阻止他们进一步做坏事,比如当一个用户太接近另一个用户的时候(尤其是女性),让对方的形象消失。
  5. 语音聊天会增强沉浸体验(Voice chat multiplies immersion)。
  6. 将共享对象放在场景中央(Put shared objects at the center of the space)。涉及到协作的VR应用,比如乐队,人们总是关注于自己手头上的东西,如果将所有乐器放在一起,人们会更好地进行协作。
  7. 考虑非对称体验(Think about asymmetric experiences)。不同的VR设备有其特性,也有其限制,所以当联机时,要考虑到这些,比如VIVE有两个手柄,Daydream只有一个,所以有些双手持握的物体,在Daydream中就会遇到挑战。
Avatars
  1. 防止全化身出现在第一人称视角中(Avoid full-body avatars in a first person view)。当前设备的限制,除非借助额外的传感器,比如VIVE Tracker,很难实现精确的全身动作跟踪,所以当人们在VR中低头看自己脚的时候,并不会精确反映当前脚的位置及朝向,会有一种很怪的感觉。当然第三人称看过去会很棒,比如在VR社交中看到好友的化身。
  2. 眼睛是心灵的窗户(Eyes are the window to the soul)。为化身加上眼睛。
  3. 当你拾取一个物体的时候,它可以变为你的控制器(When you pick up an item, that item can become your controller)。VR枪战、VR射箭游戏里这些实例已经很典型了。
  4. 注意恐怖谷(Beware of the uncanny valley)。指的是人机交互中的恐怖谷理论。
UI
  1. 防止需要你抬头的UI(Avoid UI that requires you to turn your head)。即防止UI太多或太大,需要转头或抬头才能看到,这样会使用户太累。
  2. 不要太近,不要太远(Not too close, not too far)。这个在谷歌提供的VR交互原则中已经提过,太远看不清,太近不舒服,一般出现在离体验者1.5-3米为比较舒适区域。
  3. 字大一点(Keep the text big)。
Smartphone VR
  1. 设计良好的肘关节模型可以让交互更加自然(A well-designed elbow model can make interactions feel natural)。
  2. 性能优化(Performance matters)。不止于移动端VR,移动端的任何内容都需要优化。
Final takeaways
  1. 借鉴别人的成功和失败经验(Check out what others are doing)。
  2. 我们是先驱炮灰,打开脑洞想吧!(You’re a pioneer. Think big!)。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

XR技术研习社

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值