◆ ◆ ◆
导读
如果在使用当今的VR的运动控制器时,却无法感受到阻力,我们又怎能让VR用户感觉或行动得就像虚拟物体具有不同的重量呢?B-Reel是一家创意公司,这家于1999年在斯德哥尔摩创立的公司探寻出了一些值得借鉴的方法,并将其开源让其他人能够学习。
过去几年,我们变得很喜爱用VR来工作,不管是公司内部项目还是Google Daydream for IO 2016。我们是VR的坚定信仰者,并且相信VR的未来是光明且充满机遇的。
经过原先在VR的努力,我们已在更好了解VR工作流及产品要求上积攒了充足的经验。但就在最近,我们想要对那些能够影响VR体验的根本的交互准则进行更深入的探究。Google Daydream团队想出了一个创造更加由效用驱动的VR平台的理论,并且发现了能够实现这种理论的交互方式,这让我深受启迪。因此,我们决定先从简单的做起---分离出某一特定的交互方式来研究。
◆ ◆ ◆
选择一个侧重点:视觉交互模型VS物理交互模型
当今,最常见的VR交互方式是通过空间中浮动的2D位面来实现的。但是从游戏的角度出发,这种情况正明显地减少对视觉的依赖、侧重更加物理的交互方式转变。可以参照的是Cosmic Trip这款游戏,其聪明地通过触控按钮在游戏菜单上操纵游戏中的物品;还有Job Simulator,其几乎完全抛弃了“指向-点击”的交互方式,这种曾在行业流行的做法。
我们对这个问题进行了头脑风暴并且发现我们已经爱上了这个创意---通过人工模拟重量来实现人与VR的交互。但具体来看,当VR用户拿起虚拟世界的物体时,我们能否降低用户的行动速度来使物体感觉更加轻或重?重的物体会需要缓慢的拿起,而轻的物体可以被正常地拿起。虽说不是一个新的想法,也可能不适用于实用情况,但是我们却觉得探索它会很有趣味。
我们希望通过这个的实践来找到一种可运用于任何使用运动控制器的平台的办法,不管是Daydream的遥感控制器还是Vive和Rift的先进的空间追踪控制器。定下这个目标,我们决心为最先进的平台做设计(在Oculus Touches发布前的平台,所以是Vive),然后我们会寻找为Daydream、到最后甚至是运用眼球进行操作的Gear VR和Cardboard简化的方法。
至于产品软件,我们在对Unity的熟悉和对Unreal所呈现的潜力间徘徊不定。我们决定先坚持使用Unity,并期望以后能在Unreal的领域有更多探索。
◆ ◆ ◆
明确目标
我们以前的相关项目进行得非常随意,使我们在未来难以再加利用其成果。因此,我们在进行这个项目前就立下了高远的目标。如果不发生意外的话,我们做到如下我们就应该算是成功:
以Unity为基础建造一个共同协作的工作流,并让更多的团队舒适地来使用它。
建造一个能让我们在内部使用的基础的“样板文件”环境,让未来的VR试验更加容易和快速进行。
◆ ◆ ◆
流程
当我们明确方向和目标时,我们开始组建我们的团队:3位三维动画师,2位设计师和1位颇具创造力的科学家。我们用Git来实现机器间的资源共享。场景可以被一个人在某个时间打开和编辑,同时其他人可以直接在这个场景上工作,并且这个场景将会整合入主场景内。在一定范围内,这种方法对我们可行,但是我们正积极寻找既适用于更大规模的团队和项目、并且简单易懂的办法。
步骤1:做一个踏实学习的设计师
如果你不首先熟悉下一个物体如何被拿起和移动的基础物理知识,那你就无法对其重量做更多的研究。我们做了这些准备,并且很快发现那些基本概念在VR也是通用的。至今在行业中也没有一个如何处理这种动作的“标准答案”,而不仅这种动作, VR中的方方面面在行业中也都是同样的情况。因此,我们探索出了一些其他办法并分为两类:直接连接(简单的操控,创造一个固定结合点)和松散连接(通过调整速度或使用力来将物体吸引至控制器)。连接的方式同时也决定了我们模拟重量的策略。
在直接连接中,物体的行动会与控制器的动作一致。如果操控者因为这个物体质量移动过于迅速,那么这种连接将会被打断,物体掉落于地。
对于间接接触,基于物体的重量,也会有对于控制器不同程度的吸引力。轻的物体反应快,就像在直接接触的感觉一样。重的物体相对操控者的动作会有延迟,需要更多的努力去提起。我们没有预期这个策略会成功,因为其违背了“不同步”这个在VR中的忌讳,但是我们莫名地感觉这种方法很有前景。我们将其细分为二点:
我们仍然让操控者拿起物体时与物体“同步”,消除操控者无法直接掌控环境的感觉。
当这个物体接触到控制器时,我们断开松散连接同时形成直接连接。我们增加这个机制的原因是因为我们在之前发现在用“拿起”动作时对物体重量的感觉最有效,后来的过程却让用户分心。
步骤2:探索其他感官线索
除了“举起”和“抓拿”这两种机制,我们觉得探索出能够转换重量的反馈的其他形式很重要。后来证明有2种形式:视觉反馈和触觉反馈。在任何一种情况下,当用户的控制器接近某个物体的拉力阈值时,我们都会刻意使用户对“张力”的感觉更加明显。
视觉反馈取决于连接形式。直接连接中,我们探索出了很多种能够表示控制器速度的计量方法。我们发现方法越简单效果越好---我们决定用一种绿-红进度条,贴近控制器,当速度接近物体的阈值时这个进度条会自动填充。对于间接接触,将控制器与物体的联系可视化成一根“弦”更有效,当张力增加时这根“弦”会从绿色变成红色。
而对于触觉反馈,我们采用和视觉反馈中“进度条”的同样逻辑,并将其运用到控制器的振动效果上。当用户接近拉力阈限时,控制器会以更高的频率振动。虽然这很直接,但是却很有效。
步骤3:测试,修改,再测试
将所有的那些因素都考虑到的话,我们可能会有无尽的排列组合去研究。所以为了测试和比较,我们开始在同样的环境中进行多种试验。我们尝试一些东西,修改后,然后重新尝试。
最终,我们经过层层筛选,我们认为由多种因素作用的的拿起行为的策略才是最佳的。大多数主要影响这种行为的因素甚至不是基于物理的---相反,更侧重物理交互时的次级视觉和触觉反馈的影响。
1.操控
物体与控制器紧密结合,但是当通过静止的碰撞器时会切断联系。这是最简单的拿起物体的方式,无需对重量进行模拟。
2.有触觉反馈的固定连接
物体与控制器紧密结合,遇到碰撞机复位,控制器速度过快时会由于质量掉落。当速度接近其阈值时,控制器会不断振动。
3.有视觉反馈的固定连接
物体与控制器紧密结合,遇到碰撞机复位,控制器速度过快时会由于质量掉落。当速度接近其阈值时,计量表会进行填充。
4.有视觉和触觉反馈的固定连接
物体与控制器紧密结合,遇到碰撞机复位,控制器速度过快时会由于质量掉落。当速度接近其阈值时,计量表会进行填充,控制器会振动。
5.力
物体由于力的作用向控制器吸引而来,因此其速度会随着与控制器距离减短而增加。
6.速度(连接会因为张力断掉)
物体的速度会进行调整,使其能够引向控制器。如果控制器和物体之间的张力超过物体质量的阈值,这个物体就会掉落。
7.速度(连接不会断)
物体的速度会进行调整,使其能够引向控制器。不管张力有多大,物体都不会掉。
在这个关键点,我们需要研究团队之外的人来帮助我们了解到底哪些因素是积极的,哪些是消极的或没有必要的。
我们为了测试创造了2种场景。在每种场景中,我们都会为用户安排7个站点。在第一个场景中每个站点只有有一个物体,所以被测试者可以直接比较每种方式中举起某种物体的感受的不同。当被测试者们在站点轮流试验时,我们会问他们一些问题:哪个物体感觉最重?当你需要拿起一堆物品时,你更偏向哪种策略?哪种策略让你感受最自然?
在第二个场景中我们将会在每个站点引入多种不同重量的物体。通过这种方式,用户可以分辨出一种策略在面对轻重不同物体时传导重量的效果好坏。然后,他们可以在同样的测试环境中与其他策略进行比较。
◆ ◆ ◆
收获
尽管我们在测试中发现了少许明显倾向,但是没有一种手段成为被测试者们一致认为的第一选择。当然,这也在我们的预期之内;在做这种尝试时,我们就没有认为这会有一个“正确”答案。但是,我们仍然能够得到许多结论。
1.如果连接能够被打断,那么松散连接是最可行的办法
我们的被测试者反应出这种机制能够最自然地传递重量的感觉。没有严格的对拉力的切断反应的话,物体总会感觉轻飘飘地,无法对用户的动作做出有效的反应。打破松散连接使物体落地,促使用户意识到自己需要改变自己的行为,使他们无法忽略物体的感知“重量”。
2.除非对交互很重要,要么重量这种东西就一文不值
我们的被测试者非常享受通过松散连接进行交互,很多人认为这种机制能让人感受到乐趣。尽管这种机制仅被少数人使用,但是如果想要用户能够注意到物体的重量,我们认为松散连接可能会成为一个值得被更多探索的有用的系统。
但是当我们问被测试者当他们需要拿起许多物品时他们会选择哪种策略,他们都会一致地选择直接连接。现在是效率优先的时代,人们不想被反复提醒自己具有人类的天生不足。
我们未来的许多项目在各个方面都深受此启发。如果分毫不差地模仿现实是重要的,那么我们就需要避免让用户拿起过于重或大的物体。当然我们也可与选择去接受它。不过虚拟现实最激动人心的一面,就是它能够让我们看见、做到一些现实生活中不可能的事。
3.我们欢迎更多的反馈---但别忘了声音!
被测试者会为更多的而不是更少的反馈所吸引,但又一个例外:如果他们不能彻底理解反馈和他们动作直接的关系,他们会认为这种视觉反馈对注意力是扰乱。否则,视觉和触觉的加入是有用的。
再提醒一下,想想声音是如何强化环境的物理面的。当我们选择将声音作为一个变量加入我们的试验中时,我们并没有认为它能有多大效果。但结果是它对被测试者对重量的感知有着非常关键的作用。重物落地的碰撞声或者是物体之间的摩擦声会强化用户对物体质量差异的感知。
4.VR中“基本的”交互要比它们看上去要复杂许多
设计基于物理的交互模型要比传统的基于显示器的用户体验要更具挑战,因为有太多的因素会影响最后的结果。一直以来,设计一个交互作用下的框架总是会让人不知所措,但是设计交互本身却来的很容易。游戏行业早些年就已经开始着手这些问题了,之后我们其他人才渐渐赶上。
原文发布时间为:2016-10-26
本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“BigDataDigest”微信公众号