對(duì)于現(xiàn)有的虛擬現(xiàn)實(shí)動(dòng)作控制器,如果沒(méi)有方法可以產(chǎn)生阻力反饋的話(huà),用戶(hù)將如何能夠感受到虛擬物體的不同重量呢? 為此,創(chuàng)意公司B-Reel探索了幾個(gè)方法,并對(duì)外公開(kāi)了他們的實(shí)驗(yàn)成果,以供其他人共同探討。
本文由B-Reel撰寫(xiě),B-Reel是一家創(chuàng)意公司,于1999年在瑞典首都斯德哥爾摩成立?,F(xiàn)在該公司擁有170多名設(shè)計(jì)師、策劃、開(kāi)發(fā)者和策略分析師,在全球范圍內(nèi)有6個(gè)辦事處。對(duì)技術(shù)和創(chuàng)意的熱愛(ài)是這家公司不斷探索未知領(lǐng)域的動(dòng)力。該公司力求扁平、迅速和有趣的創(chuàng)作流程,確保從創(chuàng)意到制作的整體性。B-Reel的業(yè)務(wù)范圍包括策略制定、理念構(gòu)思、設(shè)計(jì)、編程、動(dòng)畫(huà)制作、導(dǎo)演和問(wèn)題解決。
在過(guò)去一年中,從內(nèi)部項(xiàng)目,到與谷歌I/O大會(huì)的Google Dayream,我們一直熱衷于進(jìn)行虛擬現(xiàn)實(shí)相關(guān)的實(shí)驗(yàn)。我們堅(jiān)定不移地相信,虛擬現(xiàn)實(shí)的未來(lái)很光明,處處充滿(mǎn)著機(jī)遇。
在以往的VR嘗試中,我們通過(guò)制作一些獨(dú)立的體驗(yàn),進(jìn)一步了解到了這種媒介的制作流程和具體要求?,F(xiàn)在,我們希望更加深入地發(fā)掘提升虛擬現(xiàn)實(shí)體驗(yàn)的基本交互原則。Daydream團(tuán)隊(duì)采用的實(shí)用性虛擬現(xiàn)實(shí)平臺(tái)對(duì)我們產(chǎn)生了很大的啟發(fā),而這種平臺(tái)的實(shí)現(xiàn)則需要上面提到的交互。于是,我們決定先對(duì)某種特定的交互進(jìn)行單獨(dú)的探索。
視覺(jué)交互模型 vs 物理交互模型
目前,大部分實(shí)用性VR界面都是通過(guò)漂浮在半空的簡(jiǎn)單2D平面固定的。但如果是VR游戲的話(huà),它的界面顯然會(huì)有更少的視覺(jué)交互,更多的物理交互。以《Cosmic Trip》為例,這款游戲巧妙地采用了物理按鈕來(lái)作為菜單導(dǎo)航;而《Job Simulator》則幾乎完全摒棄了指向—點(diǎn)擊這種傳統(tǒng)的交互范式。
Cosmic Trip (左) Job Simulator (右)
我們以此前提進(jìn)行了頭腦風(fēng)暴,然后得出了一個(gè)非常吸引人的想法——我們可以模擬出與VR物體交互時(shí)的重量感。當(dāng)用戶(hù)撿起物體的時(shí)候,我們能否通過(guò)調(diào)整用戶(hù)的動(dòng)作速度讓其感覺(jué)到物體的重量區(qū)別呢?更重的物體撿起來(lái)會(huì)更慢,而更輕的物體則可以用正常的速度撿起來(lái)。雖然這不算是什么創(chuàng)新,或許也不能直接應(yīng)用在實(shí)用性的場(chǎng)景中,但我們覺(jué)得這個(gè)想法是非常值得探索的。
我們希望可以想出一個(gè)方法,可以應(yīng)用在所有使用動(dòng)作控制器的平臺(tái)上:從Daydream的仿Wii控制器,到Vive和Rift這種高級(jí)的房間追蹤控制器。于是,我們決定先為最先進(jìn)的平臺(tái)進(jìn)行設(shè)計(jì)(在Oculus Touch推出之前,我們先以Vive為基準(zhǔn)),然后為Daydream探索出簡(jiǎn)化的方式,最后是為Gear VR和Cardboard設(shè)計(jì)出基于注視點(diǎn)的控制。
VR動(dòng)作控制器
至于開(kāi)發(fā)軟件,我們不知道該選擇熟悉的Unity引擎,還是渲染能力更強(qiáng)大的Unreal引擎。目前我們還是選擇了Unity,希望在未來(lái)可以更多地嘗試Unreal引擎。
確立目標(biāo)
我們之前的虛擬現(xiàn)實(shí)項(xiàng)目都做得比較隨意,所以它們并沒(méi)有什么重復(fù)利用的價(jià)值。所以這一次我們準(zhǔn)備為自己定下更高的目標(biāo)。下面是我們至少要達(dá)到的成功標(biāo)準(zhǔn):
建立Unity引擎的協(xié)作流程,同時(shí)讓更多團(tuán)隊(duì)成員熟悉這個(gè)流程。
制作一個(gè)內(nèi)部使用的基本“樣板”環(huán)境,以便我們未來(lái)可以快速建立和進(jìn)行VR實(shí)驗(yàn)
研究過(guò)程
決定好方向和目標(biāo)之后,我們組建起了一支團(tuán)隊(duì):3位3D/動(dòng)作藝術(shù)家、2位設(shè)計(jì)師、1位創(chuàng)意技術(shù)員。我們使用了Git(YiViAn注:Git是一款免費(fèi)、開(kāi)源的分布式版本控制系統(tǒng))作為不同設(shè)備之間交流和分享資源的工具。各個(gè)場(chǎng)景每次可由一位成員進(jìn)行查看與編輯,這時(shí)其他人員則負(fù)責(zé)制作用于主要場(chǎng)景的預(yù)制件(prefab)。雖然這種方式比較適合我們這樣的小型團(tuán)隊(duì),不過(guò)我們也在積極探索適合大型團(tuán)隊(duì)和項(xiàng)目進(jìn)行高效協(xié)作的方法。
第一步:成為撿東西的藝術(shù)家
首先我們需要明確認(rèn)識(shí)撿起和移動(dòng)物品的基本物理學(xué)原理,否則實(shí)現(xiàn)重量反饋將無(wú)從談起。而我們很快便發(fā)現(xiàn),這些概念其實(shí)都是相通的。跟其他很多東西一樣,VR行業(yè)內(nèi)還沒(méi)有形成實(shí)現(xiàn)這種動(dòng)作的“正確”標(biāo)準(zhǔn)。所以,我們嘗試了幾個(gè)不同的想法,并將它們分成兩類(lèi):直接連接(直接提起,形成一個(gè)固定的節(jié)點(diǎn));寬松連接(調(diào)整速度,或者使用引力把物體牽引至控制器)。不同的連接種類(lèi)決定了我們模擬重量的方法。
直接連接
對(duì)于直接連接,物體會(huì)完全匹配控制器的運(yùn)動(dòng)。如果控制器移動(dòng)太快,物體會(huì)因?yàn)橹亓繂?wèn)題而跟不上,然后兩者的連接會(huì)中斷,物體就會(huì)掉在地上。
寬松連接
對(duì)于寬松連接,不同重量的物體的引力強(qiáng)度也會(huì)不同。更輕的物體反應(yīng)更快,更接近與直接連接的感覺(jué)。更重的物體的移動(dòng)會(huì)滯后于控制器,而且需要更多的“力氣”才能提起來(lái)。我們?cè)炔⒉黄诖@種效果會(huì)很好——因?yàn)槲矬w不能完全跟蹤控制器的動(dòng)作,這是虛擬現(xiàn)實(shí)的一個(gè)大忌。但是最后我們發(fā)現(xiàn)它的效果竟然出奇地真實(shí)。我們從中得出了兩個(gè)心得:
我們?cè)谔崞鹞矬w的時(shí)候仍然會(huì)顯示控制器(保持對(duì)物體的完全追蹤),避免用戶(hù)感覺(jué)自己失去了對(duì)環(huán)境的直接控制。
當(dāng)控制器接觸到物體的時(shí)候,我們就將兩者鎖定在一起,形成一個(gè)直接連接。我們加入這個(gè)機(jī)制的原因是,我們發(fā)現(xiàn)重量感是在“撿起”動(dòng)作發(fā)生的時(shí)候最有用,隨后它就只能起到分散用戶(hù)注意力的作用。
第二步:探索其他感官提示
除了撿起和抓取這兩個(gè)機(jī)制外,我們覺(jué)得也有必要研究一下其他可以幫助反映物體重量的反饋形式。重量感可以通過(guò)兩種形式體現(xiàn):視覺(jué)反饋和觸覺(jué)反饋。當(dāng)控制器接近特定物體的張力臨界值時(shí),我們?cè)噲D利用這兩種反饋來(lái)加強(qiáng)用戶(hù)所能感受到的“拉扯感”。
視覺(jué)反饋取決于連接的種類(lèi)。對(duì)于直接連接,我們嘗試了多種可以提示控制器速度的指示器。我們發(fā)現(xiàn)越簡(jiǎn)單的界面的效果會(huì)越好,于是我們決定使用基本的紅綠指示器,并將其連接在控制器上,隨著物體的速度逐漸到達(dá)臨界值,指示器的顏色也會(huì)從綠色變成紅色。在寬松連接中,控制器和物體之間就像是被一根“橡皮筋”連接著,所以指示器的顏色將能更加形象地反映出張力的變化。
指示器
在觸覺(jué)反饋方面,我們將視覺(jué)指示器的邏輯應(yīng)用在了控制器的振動(dòng)上。當(dāng)用戶(hù)接近張力的臨界值時(shí),控制器的振動(dòng)強(qiáng)度會(huì)加大。這種方式雖然簡(jiǎn)單,但很有效。
第三步:測(cè)試、調(diào)整、再測(cè)試
在如此多的影響因素之下,我們似乎有無(wú)數(shù)個(gè)需要測(cè)試的組合。所以為了更好地測(cè)試和比較不同的組合,我們開(kāi)始在同一個(gè)環(huán)境中使用不同的配置,遵循先測(cè)試,再調(diào)整,然后在測(cè)試的原則。
最終,我們根據(jù)“撿起”這個(gè)動(dòng)作,選定了一些最能反映出各種因素的影響的方法。這些方法之間的最要區(qū)別甚至還不是物理學(xué)規(guī)則的不同——它們主要體現(xiàn)在物理交互的視覺(jué)和觸覺(jué)反饋。
直接提起物體連接到控制器,但通過(guò)靜態(tài)碰撞器來(lái)固定。這是撿起東西最簡(jiǎn)單的形式,沒(méi)有任何的重量模擬。
帶觸覺(jué)反饋的固定節(jié)點(diǎn)連接到控制器的物體在碰撞的時(shí)候會(huì)改變位置。如果控制器移動(dòng)得太快,物體會(huì)由于自身的重力而掉落。在接近臨界速度的過(guò)程中,控制器的振動(dòng)會(huì)越來(lái)越強(qiáng)烈。
帶視覺(jué)反饋的固定節(jié)點(diǎn)連接到控制器的物體在碰撞的時(shí)候會(huì)改變位置。如果控制器移動(dòng)得太快,物體會(huì)由于自身的重力而掉落。在控制器接近臨界速度的過(guò)程中,視覺(jué)指示器的顏色和讀數(shù)會(huì)發(fā)生變化。
同時(shí)帶視覺(jué)反饋和觸覺(jué)反饋的固定節(jié)點(diǎn)連接到控制器的物體在碰撞的時(shí)候會(huì)改變位置。如果控制器移動(dòng)得太快,物體會(huì)由于自身的重力而掉落。在控制器接近臨界速度的過(guò)程中,視覺(jué)指示器的顏色和讀數(shù)會(huì)發(fā)生變化,控制器的振動(dòng)會(huì)越來(lái)越強(qiáng)烈。
張力物體通過(guò)張力牽引至控制器,當(dāng)物體接近控制器的時(shí)候速度會(huì)增加。
速率(張力太大時(shí)連接會(huì)中斷)物體越接近控制器,它的速度會(huì)越快。如果控制器與物體之間的張力超過(guò)臨界值,物體會(huì)由于自身的重量而掉落。
速率(連接永遠(yuǎn)不會(huì)斷開(kāi))物體越接近控制器,它的速度會(huì)越快,無(wú)論張力大小如何,物體永遠(yuǎn)都不會(huì)掉落。
此時(shí),我們想聽(tīng)取一些來(lái)自團(tuán)隊(duì)外部的意見(jiàn),看看什么因素是有幫助的,起反作用的,或者沒(méi)必要的。
我們制作了兩個(gè)用于用戶(hù)測(cè)試的場(chǎng)景。我們可以看到下面兩張圖片,用戶(hù)四周都設(shè)置了7個(gè)架子。在第一個(gè)場(chǎng)景中,每個(gè)架子前面都有一個(gè)物體,測(cè)試者可以采用不同的方法撿起這些物體,然后直接比較它們的感受。在他們逐一嘗試這些方法的時(shí)候,我們會(huì)詢(xún)問(wèn)一系列的問(wèn)題,如:哪一個(gè)物體感覺(jué)最重?如果你需要撿起大量物體,你最喜歡使用哪一個(gè)方法?哪一個(gè)方法的感覺(jué)最自然?
第二個(gè)場(chǎng)景中,我們?cè)诿恳粋€(gè)架子前加入了多個(gè)輕重不一的物體。這樣用戶(hù)就可以了解到哪一種方法可以更好地表現(xiàn)出各個(gè)物體之間的重量差異,然后在相同的環(huán)境中比較其他方法的區(qū)別。
心得總結(jié)
雖然我們可以從用戶(hù)測(cè)試中發(fā)現(xiàn)一些比較明顯的傾向,但是沒(méi)有得出一個(gè)普遍認(rèn)可的最佳配置。但這也是我們意料之中的結(jié)果,對(duì)于這些實(shí)驗(yàn),我們并不認(rèn)為可以找到一個(gè)“正確”的答案。但從用戶(hù)的回復(fù)中,我們還是總結(jié)出許多經(jīng)驗(yàn)。
當(dāng)連接可以斷開(kāi)時(shí),寬松連接的效果最好
我們的測(cè)試者表示,這種機(jī)制能夠最自然地傳達(dá)重量感。當(dāng)物體由于張力的關(guān)系不會(huì)斷開(kāi)連接時(shí),用戶(hù)會(huì)感覺(jué)物體像是漂浮在半空一樣,不會(huì)對(duì)用戶(hù)的動(dòng)作產(chǎn)生反饋。斷開(kāi)這個(gè)連接不僅可以讓物體掉落到地上,而且可以促使用戶(hù)有意識(shí)地根據(jù)物體的感知“重量”來(lái)調(diào)整自己的動(dòng)作。
除非對(duì)交互很重要,否則重量只會(huì)令人感到厭煩
我們的測(cè)試者很享受在寬松連接下的交互,許多人都認(rèn)為這種機(jī)制非常有趣好玩。在偶爾使用的情況下,如果要吸引用戶(hù)關(guān)注某個(gè)物品的重量,我們認(rèn)為寬松連接會(huì)是一個(gè)不錯(cuò)的機(jī)制,值得進(jìn)一步研究。
不過(guò),當(dāng)我們?cè)儐?wèn)測(cè)試者更傾向于使用哪種方法來(lái)?yè)炱鸲鄠€(gè)物體時(shí),他們不約而同地選擇了最簡(jiǎn)單的直接連接。因?yàn)樵谛蕛?yōu)先的時(shí)候,人們就不想被物體的重量拖慢自己的操作速度。
這能為我們以后的項(xiàng)目帶來(lái)許多啟發(fā)。當(dāng)需要精確模擬現(xiàn)實(shí)的時(shí)候,我們可能會(huì)直接避免讓用戶(hù)撿起體積會(huì)重量很大的物體,或者也可以讓他們這樣做。畢竟,虛擬現(xiàn)實(shí)最令人興奮的地方是,它可以讓人看到和做到現(xiàn)實(shí)生活中不可能的事情。
越多反饋越好,不要忘記聲音
我們的測(cè)試者都希望得到更多的反饋,但有一個(gè)例外:在能夠理解視覺(jué)反饋和動(dòng)作之間的聯(lián)系的前提下,加入視覺(jué)和觸覺(jué)反饋會(huì)有不錯(cuò)的效果,否則視覺(jué)反饋只會(huì)起到分散注意力的效果。
再詳細(xì)一點(diǎn)來(lái)說(shuō),我們可以想象一下聲音可以如何加強(qiáng)環(huán)境的物理性質(zhì),也就是說(shuō)如何讓環(huán)境變得更加真實(shí),更有沉浸感。我們?cè)跊Q定為測(cè)試加入聲音的時(shí)候并沒(méi)有考慮太多,但事實(shí)證明聲音對(duì)用戶(hù)的重量感知有很大的影響。重物掉落在地面所發(fā)出的聲音,或者物體之間互相摩擦的聲音都會(huì)加強(qiáng)用戶(hù)對(duì)重量區(qū)別的感知。
在虛擬現(xiàn)實(shí)中,“基本”的交互遠(yuǎn)比想象中的復(fù)雜
與基于屏幕的傳統(tǒng)UX(用戶(hù)體驗(yàn))相比,基于物理學(xué)原理的交互模型的設(shè)計(jì)會(huì)復(fù)雜得多,因?yàn)橛性S多因素都會(huì)影響到最終的交互效果。你在設(shè)計(jì)交互發(fā)生的框架時(shí)肯定會(huì)發(fā)生一些無(wú)法控制的問(wèn)題,而交互本身的設(shè)計(jì)就不會(huì)出現(xiàn)這種情況。游戲行業(yè)在這個(gè)問(wèn)題的處理上已經(jīng)有多年的經(jīng)驗(yàn),而我們才剛剛開(kāi)始趕上來(lái)。
最后的一些想法
在這個(gè)過(guò)程當(dāng)中,我們得到了很多關(guān)于重量模擬交互的寶貴經(jīng)驗(yàn)。我們知道時(shí)間總是有限的,而且要把每一個(gè)交互的所有元素都分解出來(lái)是一項(xiàng)不可能完成的任務(wù)。不過(guò),識(shí)別和解析重復(fù)的交互不僅可以?xún)?yōu)化它們,也能讓我們更好地處理以后肯定會(huì)遇到的其他特定交互。你會(huì)發(fā)現(xiàn)一些在理論上可行的方法卻不能應(yīng)用于實(shí)踐。
我們還想強(qiáng)調(diào)這些實(shí)驗(yàn)的次要目標(biāo)也是非常重要的(對(duì)我們來(lái)說(shuō),這加深了我們對(duì)Unity的熟悉,并提供了一個(gè)基本的模板環(huán)境)。設(shè)定具體、可實(shí)現(xiàn)的目標(biāo)是很有意義的。
那我們的建議是什么呢?我們發(fā)現(xiàn)這一切其實(shí)都是取決于體驗(yàn)本身。在許多情況下,我們?yōu)槟M重量而加入的限制都是不受歡迎的,因?yàn)樗鼈兘档土擞脩?hù)的操作效率,并迫使他們將注意力集中在交互本身,而不是他們正在進(jìn)行的動(dòng)作。所以,除非你有理由把用戶(hù)的注意力集中在物體的重量上,否則最好還是使用更簡(jiǎn)單的直接連接。
話(huà)雖如此,我們?nèi)匀徽J(rèn)為寬松連接(在張力過(guò)大時(shí)斷開(kāi)連接)是有一定前景的。這背后還有很多值得斟酌和探討的地方,同時(shí)還要考慮很多其他的影響因素:不規(guī)則的物體形狀,物體移動(dòng)的起始位置,還有是否使用雙手撿起物體。這只是開(kāi)始而已,我們非常期待未來(lái)更多的配置方法。
評(píng)論
查看更多