0
本文作者: 田苗 | 2016-12-19 16:28 |
12月15日,Epic Games赶在2016年年尾,举办了一场小型的Unreal VR DEV DAY。即便只有半天时间,还是有不少人为了《Robo Recall》这款游戏而去。
鉴于其本身最为引擎公司的优势,再加上与Oculus密切的合作关系,此前Epic Games推出了几款不错VR体验,从《Showdown》,到根据《霍比特人2:史矛革荒漠》制作的VR体验,以及《Bullet Train》,均得到不错的反响,但这些还都只是停留在Demo阶段。但在Oculus Connect 3大会上,他们宣布将基于《Bullet Train》,为Oculus开发一款完整的独占游戏《Robo Recall》。如果你曾体验过《Bullet Train》的话(点击可查看之前的体验文章),想必听到这个消息,会跟雷锋网编辑一样兴奋。
15日的活动上,雷锋网编辑体验了《Robo Recall》游戏的第一章节。与《Bullet Train》类似之处在于,进入游戏后,会有一段教学环节,供玩家熟悉Touch手柄的操作功能等等。随后,根据声音指示,玩家进入一个城市,开始作战。
首先,手柄的操作基本与之前一致。如枪的位置在下方,只需将胳膊向下伸,双手中指按住Touch上的按键,便可获取手枪。玩家同样可以空手抓住敌人向你射击而来的子弹,并扔回给敌人。其次,场景更丰富,体验也更多样性了。玩家身处在一个大的城市中,能来回自由移动,游戏中有指引方向的箭头,不必担心迷失方向。而且,玩家可以移动到更高的建筑物上面。
令雷锋网编辑印象比较深刻的是,当玩家打败大Boss后,玩家可以跳到大Boss的肩上,并对它控制。这时,玩家的视角是站在大Boss肩上的视角,同时上下左右移动手柄,游戏中大Boss的胳膊也会跟着移动。不过,可能由于太过紧张,拇指会不经意地碰倒Touch上的摇杆键,会导致突然发生位置传送,有些影响体验。
除了游戏外,Epic Games游戏开发团队负责人Nick Whiting也来到现场,他向我们介绍了这款游戏的由来,并且非常详细地分享了《Robo Recall》的开发经验。
右边是Nick
据Nick介绍,当时Oculus把刚研发的Touch拿给他们,想让他们做一款充分展示Touch功能的游戏体验。但那时候,他们只有两个人,只有十周的时间去完成《Bullet Train》,以赶上在Oculus Connect 2大会上展示。当时,他们考虑的主要有以下几点:
在Oculus推荐的硬件上,在更差的硬件上做到比《Showdown》更好的画面效果;
时间紧,任务重;
充分表现控制器Touch的性能;
有效利用引擎,如渲染等功能。
后来,他们决定在《Bullet Train》基础上,开发一款完整的游戏。而这次距离Oculus Connect 3大会还有一年的时间,可以让他们把之前未能实现的想法增加到游戏中。此时他们考虑的事情主要有:
既要借鉴和吸取人们对《Bullet Train》的反馈,又要保持游戏的有趣性;
在开发人员不多的情况下,用一年时间完成;
要提升画面效果,比《Bullet Train》还要好。
Nick表示, 要知道让玩家感到不爽的东西是什么,最好的办法就是让他们玩游戏,看看哪些地方让他们失望。因为玩家并不会直接告诉你哪里让他们不爽了。
开发《Bullet Train》的时候,他们会站在玩家旁边观看的反应,哪里与玩家的预期不同。这是整个Playtest(玩法测试)的循环,做完一个功能,让一些人试玩测试,看看哪些地方满足玩家的预期,哪些地方让玩家失望。玩家不一定会说出来,但通过观察表情、反应,会看出来,
在这个过程中,他们发现,他们想制作的是游戏类似《Toybox》,只是要带着枪。同时,让玩家自己去探索发现,探索的过程是非常有趣的。
Nick讲到,
“如果你在游戏中设计了一个东西,就要想到玩家会想着与其交互,所以你要让他们实现这样的预期。例如,在《Bullet Train》的列车中有一个拉环,玩家会伸手想要交互,但发现无法实现,是会特别让他们失望,后来我们就增加了交互,发现玩家会很开心。”
还有一个案例是,为了模拟真实的手雷,他们在游戏中为手榴弹增加了拉环,这只是为了物理模拟真实的手雷,实际上,并没有什么功能,直接把手雷扔出去就可以。玩家去拉这个拉环,发现没有什么用。
从Oculus Connect 2到第二年GDC他们开始去修改,但发现按键有一些冲突。拉手雷拉环是用左手去拉,很多人会用右手操作扳机键,这是有问题的。在GDC前他们做了调整,不管玩家拉不拉手环,或是直接扔出手雷,都是可以交互的。
Nick解释说,这是款射击游戏,里面会用到抢,但很多人可能没有真的用过枪。看到用枪方式与实际使用,还是有一定区别的。刚开始,一些体验的玩家,可能没有真的用过枪,会模仿电影中用枪的方式,例如握枪的位置太朝下,因为手柄的关系。但那些真正用过枪的人,射击的还是很准。
主要原因在于,手握控制器的位置与握枪的位置有一些差别。一开始,他们使用Oculus在《Toybox》中的方法,在VR中虚拟的手和真实的手保持完全一致。这个方法很简单,通常也很连贯,但比较难以用在枪上,很难实现完全一致的交互。
于是,他们选择让枪与控制器的位置一致,尽管设置起来简单了,但枪模型的样子和Touch不同,还是要做细微的调整。
那么什么样的对齐方式最好的?让扳机键完全混合起来,还是让握枪的地方与手柄方向完全一致?他们也还没有定论,最后选择折中的处理。枪的手柄和扳机键差不多可以对上,在Playtest时,有些玩家偏低,有些偏高,这是比较好的结果。
这其中要涉及到几个方面:
一是物理特性包括有重量感,开枪有后坐力;
二是枪会带给你各种反馈,闻到硝烟的味道,看到爆炸,身体反应等各种感受;
最后是枪带给玩家的乐趣,像电影中一样。
刚开始,他们直接使用Unreal 4引擎的Physics模拟功能,后坐力也很容易设置。不过,Nick感到很奇怪的是,加上后坐力是非常非常棒的感觉,但不知道为什么他看到其他带设计的VR游戏,都没有后坐力。他猜测可能大家都在遵循Oculus的规则——让真实的和虚拟的完全保持一致,但他建议,加上后坐力其实会更好。
后坐力还有一个好处是,跟其他物体碰撞,手柄给你的力反馈感都是自然反应。但问题是,枪可能会很大,如果卡在某一个地方,便会不停抖动,位置便脱离了控制器的控制,基本上会破坏使用物理的这个方式。这种情况下,需要自己去做模拟,决定哪些地方需要,哪些不需要。
一般情况下,枪的设计通常会想到,让枪的使用流畅起来,但实际上,为了表现枪的重量感,他们会稍微加些延迟。如果手到哪里,枪就跟到哪里,便会抖得很厉害。故意设计些延迟,让枪感觉很有重量。虽然没办法让玩家实际握的东西变重,但可以给玩家这样的感受。
还有增加后坐力,其中涉及到Time Line功能。Nick解释说,用到Time Line,主要是手受到后坐力后,肯定是想把枪压下来,开始的时候速度比较快,后来比较慢,不是线性的过程,否则就太机械化了。Time Line能更好地控制后坐力的感觉。
他们会把所有的功能都设计到枪中,只不过枪不同,参数可能微调。小点的枪,速度快后坐力要小一些,大的枪后坐力要大一些。双手持枪时,后坐力会增加。
他们以为抓取功能是最容易的,结果做好它却用了六周时间。
起先,他们实现的抓取跟《Toybox》差不多。抓取的时候,会出现一个球体,大小与手掌差不多。按抓取键判断球体与物体间有没有发生关联。但他们发现,人们很难抓取物体,要不就是距离很远的时候便尝试抓取,或者尝试多次按下抓取键。
人们似乎心理上把伸出去胳膊去抓取,只归结为一个抓取的动作。同时,抓取时常常会受到自光影、触觉等影响,当你感受到物体,会自然地握紧手指。
于是,针对这些问题,他们增加了触觉反馈。当手部碰倒其他物体,或有重合的部分时,控制器会有一些微小的震动。当你越来越接近抓取的物体时,震动感会由弱变强,你会知道你可以抓住物体了。
另外,他们把玩家能抓到的物体变成高亮度的黄色。即便这不是玩家想要的,可以把它扔掉。
同时,他们还扩大了玩家抓取物体的范围。在这个范围内,能抓取到任何东西。但是,当玩家弯腰时,会遮蔽掉Oculus的摄像头,可能丢失位置追踪。《Toybox》的方法是,如果物体掉到地方,就消失了。他们却希望枪掉到地上,还可以捡起来。
那么支持的抓取范围有多远?经过测试,他们认为两米是比较好。然而,支持的距离越远,人们可能越不知道要抓取的物体是什么。
这是因为,如果抓取的朝向按照手的朝向来做,当手的朝向往前,抓取的东西在下面,你可能会抓不到。如果你知道是因为手朝向的问题,那还能解决,但要是不知道,可能就无法抓取物体了。
接下来,他们又尝试从眼神到手的向量,来计算抓取延伸的位置。眼睛手一条线抓东西是很准的。但是,如果手从侧面拿东西,眼睛看到的东西往侧面偏移,这时候又抓不到了。这种方法虽然好了很多,但可能会无法满足玩家的预期。最终,他们的解决办法是:取两个朝向的平均值。
虽然现在的方案已经很好了,但他们希望还有更好的办法,如眼球追踪,玩家注视到哪里,就能抓取哪里的物体。
《Robo Recall》中我们能抓起机器人,但被抓起来后,机器人像死掉了一样,没有任何反抗。正常的动画效果还不够,必须让机器人看起来有反抗的感觉。于是,他们加入物理动画,一边尝试物理控制,一边还在播放动画。如果机器人被射中,除了正常的动画,还有受物理冲击以后的效果,两者结合在一起。
雷锋网编辑觉得,能在激战中看到射来的子弹,是非常酷的设计。Nick现场也解密了这是如何设计的。
玩家常常会瞄准目标,子弹飞出去很快,根本观察不到子弹的样子。游戏设计师设计时,子弹离开枪管时速度降到四分之一,过了0.1秒后,速度提高到原速的1.25倍。子弹飞行过程中,玩家会注意到,子弹离开枪管后,自己跟随子弹的轨迹打向目标。
有人会抱怨没有击中目标,实际上,没有人注意到子弹速度的变化。但这个改变让体验好很多。开发者要潜在地帮助玩家,但也不要让玩家觉得在帮助自己作弊。比如说,《Bullet Train》最后的大Boss会向玩家放导弹,本来可以抓住导弹,直接松手扔给大Boss。他们测试的时候,效果很好。
但一些玩家会把导弹直接砸到地上。玩家不知道松手就可以,而是抬起胳膊朝Boss扔导弹。所以,他们会帮助玩家扔导弹。
把玩家扔的轨迹记录下来,平均计算出出手的位置,朝向可能不太对,但他们做了一些调整,让导弹看起来是被你慢慢扔向前面。这样一来,大部分人已经能扔中Boss。但有些玩家可能还是扔不中。这时,玩家每扔一次,他们会略微调整系数,自动瞄准,下一次扔的时候就会发现在慢慢修正,更接近击中Boss。
最后,玩家扔的再烂,也能扔中Boss。但如果一开始就打开辅助系统,玩家会不爽,因为他明明觉得瞄的不准,怎么就扔中了。
Oculus Touch手柄是有限制的。当在虚拟世界中,玩家是静止的,并且与眼前的物体交互时,两个追踪摄像头与头显和手柄间存在视角线。既然两个手柄分离,他们便考虑传送的移动方式。《Bullet Train》中通过传送移动,玩家可以面向各个方向,但总会让你回到位置的中心。
除了定点传送,他们增加了隐身传送,让玩家可以瞬间传送到敌人面前。这个机制让玩家的行为一直发生在地图中心,于是玩家总能面向最重要的地方。但还是会受到限制。《Bullet Train》的竞技场可以让玩家朝向中间,而《Robo Recall》场景在真实的城市中,玩家可自由走动,场景也较为复杂。这时,他们找到其他的方法。
这就是“带方向的传送”。瞄向的方向是玩家传送的方向,但手指向的方向是玩家的朝向。这个传送方法的基本点是,玩家可以选择面向的方向,使他们能在环境中移动。其次,玩家能直接穿过地图。传送时,用弧线代替直线,让其更易于控制,如高一些的位置。还有一些细节,传送的目标点处有虚拟的头盔和两只手,它们的朝向可以指示出追踪的位置有多少偏差。
带方向的传送使玩家能在更大,更复杂的场景中自由移动,但依旧有限制因素。玩家依然会物理性地转动头部,丢失追踪,所以必须借助UI让玩家再转回来;迷失方向也是一个问题,这时他们会用到闪烁和方向轨迹这些老的方法;同时,玩家对VR太不熟悉了。
此外,除了设计方面,Nick还分享了UE4上的一些渲染功能,让现场的开发者们能更好地应用开发工具。
雷峰网原创文章,未经授权禁止转载。详情见转载须知。