0
本文作者: 田苗 | 2016-12-19 16:28 |
12月15日,Epic Games趕在2016年年尾,舉辦了一場小型的Unreal VR DEV DAY。即便只有半天時間,還是有不少人為了《Robo Recall》這款游戲而去。
鑒于其本身最為引擎公司的優(yōu)勢,再加上與Oculus密切的合作關(guān)系,此前Epic Games推出了幾款不錯VR體驗,從《Showdown》,到根據(jù)《霍比特人2:史矛革荒漠》制作的VR體驗,以及《Bullet Train》,均得到不錯的反響,但這些還都只是停留在Demo階段。但在Oculus Connect 3大會上,他們宣布將基于《Bullet Train》,為Oculus開發(fā)一款完整的獨占游戲《Robo Recall》。如果你曾體驗過《Bullet Train》的話(點擊可查看之前的體驗文章),想必聽到這個消息,會跟雷鋒網(wǎng)編輯一樣興奮。
15日的活動上,雷鋒網(wǎng)編輯體驗了《Robo Recall》游戲的第一章節(jié)。與《Bullet Train》類似之處在于,進入游戲后,會有一段教學環(huán)節(jié),供玩家熟悉Touch手柄的操作功能等等。隨后,根據(jù)聲音指示,玩家進入一個城市,開始作戰(zhàn)。
首先,手柄的操作基本與之前一致。如槍的位置在下方,只需將胳膊向下伸,雙手中指按住Touch上的按鍵,便可獲取手槍。玩家同樣可以空手抓住敵人向你射擊而來的子彈,并扔回給敵人。其次,場景更豐富,體驗也更多樣性了。玩家身處在一個大的城市中,能來回自由移動,游戲中有指引方向的箭頭,不必擔心迷失方向。而且,玩家可以移動到更高的建筑物上面。
令雷鋒網(wǎng)編輯印象比較深刻的是,當玩家打敗大Boss后,玩家可以跳到大Boss的肩上,并對它控制。這時,玩家的視角是站在大Boss肩上的視角,同時上下左右移動手柄,游戲中大Boss的胳膊也會跟著移動。不過,可能由于太過緊張,拇指會不經(jīng)意地碰倒Touch上的搖桿鍵,會導(dǎo)致突然發(fā)生位置傳送,有些影響體驗。
除了游戲外,Epic Games游戲開發(fā)團隊負責人Nick Whiting也來到現(xiàn)場,他向我們介紹了這款游戲的由來,并且非常詳細地分享了《Robo Recall》的開發(fā)經(jīng)驗。
右邊是Nick
據(jù)Nick介紹,當時Oculus把剛研發(fā)的Touch拿給他們,想讓他們做一款充分展示Touch功能的游戲體驗。但那時候,他們只有兩個人,只有十周的時間去完成《Bullet Train》,以趕上在Oculus Connect 2大會上展示。當時,他們考慮的主要有以下幾點:
在Oculus推薦的硬件上,在更差的硬件上做到比《Showdown》更好的畫面效果;
時間緊,任務(wù)重;
充分表現(xiàn)控制器Touch的性能;
有效利用引擎,如渲染等功能。
后來,他們決定在《Bullet Train》基礎(chǔ)上,開發(fā)一款完整的游戲。而這次距離Oculus Connect 3大會還有一年的時間,可以讓他們把之前未能實現(xiàn)的想法增加到游戲中。此時他們考慮的事情主要有:
既要借鑒和吸取人們對《Bullet Train》的反饋,又要保持游戲的有趣性;
在開發(fā)人員不多的情況下,用一年時間完成;
要提升畫面效果,比《Bullet Train》還要好。
Nick表示, 要知道讓玩家感到不爽的東西是什么,最好的辦法就是讓他們玩游戲,看看哪些地方讓他們失望。因為玩家并不會直接告訴你哪里讓他們不爽了。
開發(fā)《Bullet Train》的時候,他們會站在玩家旁邊觀看的反應(yīng),哪里與玩家的預(yù)期不同。這是整個Playtest(玩法測試)的循環(huán),做完一個功能,讓一些人試玩測試,看看哪些地方滿足玩家的預(yù)期,哪些地方讓玩家失望。玩家不一定會說出來,但通過觀察表情、反應(yīng),會看出來,
在這個過程中,他們發(fā)現(xiàn),他們想制作的是游戲類似《Toybox》,只是要帶著槍。同時,讓玩家自己去探索發(fā)現(xiàn),探索的過程是非常有趣的。
Nick講到,
“如果你在游戲中設(shè)計了一個東西,就要想到玩家會想著與其交互,所以你要讓他們實現(xiàn)這樣的預(yù)期。例如,在《Bullet Train》的列車中有一個拉環(huán),玩家會伸手想要交互,但發(fā)現(xiàn)無法實現(xiàn),是會特別讓他們失望,后來我們就增加了交互,發(fā)現(xiàn)玩家會很開心?!?/p>
還有一個案例是,為了模擬真實的手雷,他們在游戲中為手榴彈增加了拉環(huán),這只是為了物理模擬真實的手雷,實際上,并沒有什么功能,直接把手雷扔出去就可以。玩家去拉這個拉環(huán),發(fā)現(xiàn)沒有什么用。
從Oculus Connect 2到第二年GDC他們開始去修改,但發(fā)現(xiàn)按鍵有一些沖突。拉手雷拉環(huán)是用左手去拉,很多人會用右手操作扳機鍵,這是有問題的。在GDC前他們做了調(diào)整,不管玩家拉不拉手環(huán),或是直接扔出手雷,都是可以交互的。
Nick解釋說,這是款射擊游戲,里面會用到搶,但很多人可能沒有真的用過槍??吹接脴尫绞脚c實際使用,還是有一定區(qū)別的。剛開始,一些體驗的玩家,可能沒有真的用過槍,會模仿電影中用槍的方式,例如握槍的位置太朝下,因為手柄的關(guān)系。但那些真正用過槍的人,射擊的還是很準。
主要原因在于,手握控制器的位置與握槍的位置有一些差別。一開始,他們使用Oculus在《Toybox》中的方法,在VR中虛擬的手和真實的手保持完全一致。這個方法很簡單,通常也很連貫,但比較難以用在槍上,很難實現(xiàn)完全一致的交互。
于是,他們選擇讓槍與控制器的位置一致,盡管設(shè)置起來簡單了,但槍模型的樣子和Touch不同,還是要做細微的調(diào)整。
那么什么樣的對齊方式最好的?讓扳機鍵完全混合起來,還是讓握槍的地方與手柄方向完全一致?他們也還沒有定論,最后選擇折中的處理。槍的手柄和扳機鍵差不多可以對上,在Playtest時,有些玩家偏低,有些偏高,這是比較好的結(jié)果。
這其中要涉及到幾個方面:
一是物理特性包括有重量感,開槍有后坐力;
二是槍會帶給你各種反饋,聞到硝煙的味道,看到爆炸,身體反應(yīng)等各種感受;
最后是槍帶給玩家的樂趣,像電影中一樣。
剛開始,他們直接使用Unreal 4引擎的Physics模擬功能,后坐力也很容易設(shè)置。不過,Nick感到很奇怪的是,加上后坐力是非常非常棒的感覺,但不知道為什么他看到其他帶設(shè)計的VR游戲,都沒有后坐力。他猜測可能大家都在遵循Oculus的規(guī)則——讓真實的和虛擬的完全保持一致,但他建議,加上后坐力其實會更好。
后坐力還有一個好處是,跟其他物體碰撞,手柄給你的力反饋感都是自然反應(yīng)。但問題是,槍可能會很大,如果卡在某一個地方,便會不停抖動,位置便脫離了控制器的控制,基本上會破壞使用物理的這個方式。這種情況下,需要自己去做模擬,決定哪些地方需要,哪些不需要。
一般情況下,槍的設(shè)計通常會想到,讓槍的使用流暢起來,但實際上,為了表現(xiàn)槍的重量感,他們會稍微加些延遲。如果手到哪里,槍就跟到哪里,便會抖得很厲害。故意設(shè)計些延遲,讓槍感覺很有重量。雖然沒辦法讓玩家實際握的東西變重,但可以給玩家這樣的感受。
還有增加后坐力,其中涉及到Time Line功能。Nick解釋說,用到Time Line,主要是手受到后坐力后,肯定是想把槍壓下來,開始的時候速度比較快,后來比較慢,不是線性的過程,否則就太機械化了。Time Line能更好地控制后坐力的感覺。
他們會把所有的功能都設(shè)計到槍中,只不過槍不同,參數(shù)可能微調(diào)。小點的槍,速度快后坐力要小一些,大的槍后坐力要大一些。雙手持槍時,后坐力會增加。
他們以為抓取功能是最容易的,結(jié)果做好它卻用了六周時間。
起先,他們實現(xiàn)的抓取跟《Toybox》差不多。抓取的時候,會出現(xiàn)一個球體,大小與手掌差不多。按抓取鍵判斷球體與物體間有沒有發(fā)生關(guān)聯(lián)。但他們發(fā)現(xiàn),人們很難抓取物體,要不就是距離很遠的時候便嘗試抓取,或者嘗試多次按下抓取鍵。
人們似乎心理上把伸出去胳膊去抓取,只歸結(jié)為一個抓取的動作。同時,抓取時常常會受到自光影、觸覺等影響,當你感受到物體,會自然地握緊手指。
于是,針對這些問題,他們增加了觸覺反饋。當手部碰倒其他物體,或有重合的部分時,控制器會有一些微小的震動。當你越來越接近抓取的物體時,震動感會由弱變強,你會知道你可以抓住物體了。
另外,他們把玩家能抓到的物體變成高亮度的黃色。即便這不是玩家想要的,可以把它扔掉。
同時,他們還擴大了玩家抓取物體的范圍。在這個范圍內(nèi),能抓取到任何東西。但是,當玩家彎腰時,會遮蔽掉Oculus的攝像頭,可能丟失位置追蹤?!禩oybox》的方法是,如果物體掉到地方,就消失了。他們卻希望槍掉到地上,還可以撿起來。
那么支持的抓取范圍有多遠?經(jīng)過測試,他們認為兩米是比較好。然而,支持的距離越遠,人們可能越不知道要抓取的物體是什么。
這是因為,如果抓取的朝向按照手的朝向來做,當手的朝向往前,抓取的東西在下面,你可能會抓不到。如果你知道是因為手朝向的問題,那還能解決,但要是不知道,可能就無法抓取物體了。
接下來,他們又嘗試從眼神到手的向量,來計算抓取延伸的位置。眼睛手一條線抓東西是很準的。但是,如果手從側(cè)面拿東西,眼睛看到的東西往側(cè)面偏移,這時候又抓不到了。這種方法雖然好了很多,但可能會無法滿足玩家的預(yù)期。最終,他們的解決辦法是:取兩個朝向的平均值。
雖然現(xiàn)在的方案已經(jīng)很好了,但他們希望還有更好的辦法,如眼球追蹤,玩家注視到哪里,就能抓取哪里的物體。
《Robo Recall》中我們能抓起機器人,但被抓起來后,機器人像死掉了一樣,沒有任何反抗。正常的動畫效果還不夠,必須讓機器人看起來有反抗的感覺。于是,他們加入物理動畫,一邊嘗試物理控制,一邊還在播放動畫。如果機器人被射中,除了正常的動畫,還有受物理沖擊以后的效果,兩者結(jié)合在一起。
雷鋒網(wǎng)編輯覺得,能在激戰(zhàn)中看到射來的子彈,是非常酷的設(shè)計。Nick現(xiàn)場也解密了這是如何設(shè)計的。
玩家常常會瞄準目標,子彈飛出去很快,根本觀察不到子彈的樣子。游戲設(shè)計師設(shè)計時,子彈離開槍管時速度降到四分之一,過了0.1秒后,速度提高到原速的1.25倍。子彈飛行過程中,玩家會注意到,子彈離開槍管后,自己跟隨子彈的軌跡打向目標。
有人會抱怨沒有擊中目標,實際上,沒有人注意到子彈速度的變化。但這個改變讓體驗好很多。開發(fā)者要潛在地幫助玩家,但也不要讓玩家覺得在幫助自己作弊。比如說,《Bullet Train》最后的大Boss會向玩家放導(dǎo)彈,本來可以抓住導(dǎo)彈,直接松手扔給大Boss。他們測試的時候,效果很好。
但一些玩家會把導(dǎo)彈直接砸到地上。玩家不知道松手就可以,而是抬起胳膊朝Boss扔導(dǎo)彈。所以,他們會幫助玩家扔導(dǎo)彈。
把玩家扔的軌跡記錄下來,平均計算出出手的位置,朝向可能不太對,但他們做了一些調(diào)整,讓導(dǎo)彈看起來是被你慢慢扔向前面。這樣一來,大部分人已經(jīng)能扔中Boss。但有些玩家可能還是扔不中。這時,玩家每扔一次,他們會略微調(diào)整系數(shù),自動瞄準,下一次扔的時候就會發(fā)現(xiàn)在慢慢修正,更接近擊中Boss。
最后,玩家扔的再爛,也能扔中Boss。但如果一開始就打開輔助系統(tǒng),玩家會不爽,因為他明明覺得瞄的不準,怎么就扔中了。
Oculus Touch手柄是有限制的。當在虛擬世界中,玩家是靜止的,并且與眼前的物體交互時,兩個追蹤攝像頭與頭顯和手柄間存在視角線。既然兩個手柄分離,他們便考慮傳送的移動方式?!禕ullet Train》中通過傳送移動,玩家可以面向各個方向,但總會讓你回到位置的中心。
除了定點傳送,他們增加了隱身傳送,讓玩家可以瞬間傳送到敵人面前。這個機制讓玩家的行為一直發(fā)生在地圖中心,于是玩家總能面向最重要的地方。但還是會受到限制?!禕ullet Train》的競技場可以讓玩家朝向中間,而《Robo Recall》場景在真實的城市中,玩家可自由走動,場景也較為復(fù)雜。這時,他們找到其他的方法。
這就是“帶方向的傳送”。瞄向的方向是玩家傳送的方向,但手指向的方向是玩家的朝向。這個傳送方法的基本點是,玩家可以選擇面向的方向,使他們能在環(huán)境中移動。其次,玩家能直接穿過地圖。傳送時,用弧線代替直線,讓其更易于控制,如高一些的位置。還有一些細節(jié),傳送的目標點處有虛擬的頭盔和兩只手,它們的朝向可以指示出追蹤的位置有多少偏差。
帶方向的傳送使玩家能在更大,更復(fù)雜的場景中自由移動,但依舊有限制因素。玩家依然會物理性地轉(zhuǎn)動頭部,丟失追蹤,所以必須借助UI讓玩家再轉(zhuǎn)回來;迷失方向也是一個問題,這時他們會用到閃爍和方向軌跡這些老的方法;同時,玩家對VR太不熟悉了。
此外,除了設(shè)計方面,Nick還分享了UE4上的一些渲染功能,讓現(xiàn)場的開發(fā)者們能更好地應(yīng)用開發(fā)工具。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。