VR中的场景定位:怎样让玩家感受虚实合一?
日前,Oculus公司旗下Story Studio(故事工作室)的场景设计师John Ballantyne发表博文,讲述了他们面对定位追踪的VR体验,要将虚拟环境与真实世界同步时,虚拟场景设计所遇到的困难与挑战,并且提到他们的解决办法。全文内容可参考以下。
Story Studio面临最大的挑战是,如何在定位追踪的VR体验中设计无缝体验。定位追踪是关键,而且特别重要,甚至是Rift的体验精髓之所在。通过定位追踪系统,你在真实世界的动作,可被还原到VR的虚拟体验中,从而形成极强的沉浸感。它将用户真实身体与虚拟世界直接相连,以获得更多本能反应和意犹未尽的体验。
然而,对体验设计师来说,定位追踪也让我进一步失去对镜头的控制,其程度甚至超过了我们对电子游戏中镜头的控制。在现实世界中,你想到哪儿,就能到哪儿,而动作被映射到虚拟世界后,虚拟建模下可以容易地移动你的位置。不过,具体说明前,可以先回顾下Oculsu Rift的定位追踪系统。
Oculus Rift的定位追踪原理
雷锋网曾发文《HTC vive、Oculus rift、PS VR,三大头显都是如何做定位的?|深度》。文中详细讲述了三大头显的定位原理,并做了比较。其中Oculus的头盔上隐藏着一些的红外灯(标记点),这些红外灯会发射红外线,这时与头盔配套的两台外部摄像头便能实时探测到这些红外线。追踪系统使用探测到的红外线数据,以确定你与摄像头的相对位置。而摄像头的位置和现实空间的布局决定了你可被追踪的区域。
不同于追踪区域,你与摄像头的相对位置就是VR体验设置中,你可被追踪的实际空间。这个空间可大于追踪区域(理想情况下)或比追踪区域小一些(特别情况下)。可供体验的空间则会影响虚拟世界的界限范围,以及墙、沙发等等。
目前,我们坚持1:1的真实和虚拟人物对应移动。但也可以使用其他方式操作虚拟人物移动,如游戏手柄移动,或命令控制瞬间移动,这些可能比较方便些。
尽管,我们已经看到许多相当不错的方式,在VR中实现位置移动。但我们多数的敏感成员们依旧感到不舒服,或者说追踪系统减弱了体验中的临在感。而这个部分则需要在VR中积极探索。
开始一项体验
当体验开始时,你在虚拟世界中所处的位置是哪里?显然,该问题比我们想的有趣得多。更没有料到,一个简单的方案竟然花费了数周时间。
而这在电影或游戏中,根本不能称之为问题。通常的做法是,首先确定电影或游戏中的地点,让你进入到我们构建的世界,然后,把你放在那里。我们寻找一个搭建良好的场景,给你足够的背景环境来理解,这是个什么样的体验,或这是怎样的世界。但我们希望在具有定位追踪的VR体验中,能够实现同样的事情,不过,实践起来却稍有些难度。
为了便于理解这个难题,以及它对VR定位追踪的意义所在,可以先来看看我们先前所做的各种尝试。
找到你的追踪中心点
在你的世界,你要设计一个点作为你抵达的地方,然后体验开始。从概念上说,一般情况下我们知道,想要你去的地儿,以及想要你面对的方向。所以,就把你准确地放在那里。概念上确实是这样,但结果,能否成功地进行定位追踪,这与你和追踪区域中心的远近息息相关。
下图中,点状线代表着追踪区域的范围,实线代表你虚拟空间的范围。蓝色圈则是你与这两块区域的相对位置。
图1:在定位追踪系的VR体验中,只有用户(蓝色圆圈)站在追踪区域的中心,才能到虚拟房间中,需要去的位置。
在理想情况下(如上图),体验一开始,你站在追踪区域的中心点。你能以同等距离向各个方向移动,直到“撞上”追踪区域的边缘,从而无法在虚拟空间中移动。你将拥有最大限度的自由,去探索所处的虚拟空间。
而在坏的情况下(如下图),一开始体验,你站在追踪区域的中心点。但受到实际追踪情况的限制,你只能从那些边界移开。在此时,你受到限制,只能在75%的虚拟空间中走动。进一步说,大部分的追踪区域会映射到虚拟世界中,然而你可能无法到达“本应追踪的区域”。
图2:坏的情况是,不关心用户真实世界的位置,只将他们放在虚拟房间。而如果他们位于追踪区域的中心,多数范围的虚拟空间是无法抵达的。
实现虚拟与现实1:1同步
为矫正上述的问题,我们要尽力在追踪范围内,将虚拟和现实空间实现同步。这或许能避免你能去的或想去的地方,与实际追踪范围内你能去的地方之间,出现不匹配的尴尬。
其实,这点很容易完成。Unreal Engine和和Unity均带有默认功能。Oculus SDK的报告能显示追踪区域中心的偏值。如果你确认摄像头会一直放在距离“出生点”(Spawn Point)相同偏值的位置,虚拟和现实空间便会实现同步。从追踪区中心获得的偏值,会与你完美开始的位置偏值相一致。
这时,不管你站在追踪区域的哪个位置,你都能以同样的机会探索虚拟空间(如下图所示)。每个位置探索虚拟世界的中心点与你体验时的出生点密切相关。在所有方向上,你探索虚拟世界的空间范围均等。
图3:如果追踪区域与虚拟空间实现同步,所有抵达你设计的虚拟房间的用户将会完全进入这个空间。然而,虚拟图像定位的问题却还没解决。
该方法修正了我们设置场景时,无法到达某些虚拟区域的问题,但仍有两处重要功能我们还未掌握,也是VR体验必不可少的:定位和注视方向。为解决追踪问题,我们无法控制图像定位。显然,实际情况还要更糟一些。
我们设计的体验具有很多游戏逻辑机制,以及虚拟建模。新的解决方案使用户可能在游戏机制内,或虚拟建模内抵达VR体验场景(如下图)。
图4:在更多特殊环境下,虚拟空间与追踪区域的同步要复杂的多,因为虚拟房间并不是空无一物。 伤心脸的用户可能走到了虚拟建模内,或是游戏机制部分(彩色区域)。
假如追踪区域足够大,或是VR体验时到达的空间与追踪区域相比,要小一些,你甚至可以将出生点设置在体验外部。
在VR中指引用户
为了处理图像定位,并保证虚拟空间与追踪区域间的同步,我们给体验增加了前厅(antechamber)。前厅的目的是指引你,走到某个位置,获得实际体验的有效定位方式。
理论上来看,我们设计的前厅很简单。进入VR后,你所处的环境绝大部分是空房间。房间一片漆黑,但有一小束聚光灯照在地面上,照出一片小圆圈。靠近聚光灯处有一个传送点,要是距离传送点稍远些,则会显现“到这来”(Come Here)的字样。你一走过去,或者说你开始走近,又会出现“看这里”(Look Here)。当你走的足够近,并看向传送点时,画面渐渐消失,我们将你传送到第一个主要VR体验房间。
这里我们采用的技巧是,传送点所在的位置与理想的出生定位点相吻合。一旦移动到传送点处,向下看它,你便几乎准确地处于出生点,并面对一个已知的方向。在该点上将你转移到体验的第一关足够安全,因为我们准确地了解,你在追踪区域内所处的位置,同时我们相信,你处于最佳的位置,并在良好的定位下,开始体验之旅(如下图)。
图5:如果我们把用户与虚拟建模部分(传送点)在一个校准房间内,实现同步(左),即可确定,用户体验时将以恰当的取景定位到达(右)。
设计场景指引的小技巧
在一个体验中,不同环境之间来回转换,会出现相同的问题,就像最初的用户出生点:无法进入游戏空间,建模内到达出现问题,或是较差的图像定位。而以上的处理方法,可被更广泛地用来确保虚拟房间之间,效果良好的场景转换。
比如,先确保,随后进入的房间是在追踪区域内,你可以放置像传送点一样的触发器,以控制玩家的定位,该触发器也许是传送门,将你转移到下一级体验。
图6:“传送点”不必与追踪区中心同步。如果我们想让用户到达一个具体的位置(右边),我们可以在先前房间中同样的位置,放置一个传送点。
在其他情况下,也有可能使用“隐形”传送点。有时候为了紧邻的关卡处于良好的位置,某个关卡中的虚拟建模会限制你。
图7:除了具体明确的校准建模,通过考虑“毗邻”房间内如何设计场景,我们可以控制用户的定位。
有趣的是,在这种限制情况下,我们发现VR体验内的场景设置相互影响。某个房间的布局将约束下一个房间可能形成的布局,反之亦然。不得不说,在VR中控制玩家的定位,就像在电影中控制观众的视线。
我们讨论了很多在虚拟现实中将人们传送到其他环境的话题。但谨记,尽管人们的视线和临在感可能在虚拟现实中,身体却完好无损地处于现实世界。而我们追寻的真理则是,将带有定位追踪的VR体验与真实世界密切联系起来的,到底是什么。
对于真实世界如何影响体验设计,我们遇到了很多类似的挑战。举例来说,当在一个剧场舞台上进行场景设计时,对布局层面的思考会很有帮助。在剧院环境中,我们需要明白“演员”将出现在哪里,或是说“演员”应该站在哪里,这样会使我们设计场景转换时,更为自然。作为VR场景设计师,我们的工作便是思考,真实世界的限制如何影响我们的游戏空间。(田苗)
来源:雷锋网