閱讀732 返回首頁    go 阿裏雲 go 技術社區[雲棲]


深度 | 探索實物與VR間重量轉換的方法


0?wx_fmt=jpeg

 ◆ 

導讀


如果在使用當今的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用戶拿起虛擬世界的物體時,我們能否降低用戶的行動速度來使物體感覺更加輕或重?重的物體會需要緩慢的拿起,而輕的物體可以被正常地拿起。雖說不是一個新的想法,也可能不適用於實用情況,但是我們卻覺得探索它會很有趣味。


0?wx_fmt=jpeg


我們希望通過這個的實踐來找到一種可運用於任何使用運動控製器的平台的辦法,不管是Daydream的遙感控製器還是Vive和Rift的先進的空間追蹤控製器。定下這個目標,我們決心為最先進的平台做設計(在Oculus Touches發布前的平台,所以是Vive),然後我們會尋找為Daydream、到最後甚至是運用眼球進行操作的Gear VR和Cardboard簡化的方法。


至於產品軟件,我們在對Unity的熟悉和對Unreal所呈現的潛力間徘徊不定。我們決定先堅持使用Unity,並期望以後能在Unreal的領域有更多探索。


 ◆ 

明確目標


我們以前的相關項目進行得非常隨意,使我們在未來難以再加利用其成果。因此,我們在進行這個項目前就立下了高遠的目標。如果不發生意外的話,我們做到如下我們就應該算是成功:


  1. 以Unity為基礎建造一個共同協作的工作流,並讓更多的團隊舒適地來使用它。

  2. 建造一個能讓我們在內部使用的基礎的“樣板文件”環境,讓未來的VR試驗更加容易和快速進行。


 ◆ 

流程


當我們明確方向和目標時,我們開始組建我們的團隊:3位三維動畫師,2位設計師和1位頗具創造力的科學家。我們用Git來實現機器間的資源共享。場景可以被一個人在某個時間打開和編輯,同時其他人可以直接在這個場景上工作,並且這個場景將會整合入主場景內。在一定範圍內,這種方法對我們可行,但是我們正積極尋找既適用於更大規模的團隊和項目、並且簡單易懂的辦法。


步驟1:做一個踏實學習的設計師


如果你不首先熟悉下一個物體如何被拿起和移動的基礎物理知識,那你就無法對其重量做更多的研究。我們做了這些準備,並且很快發現那些基本概念在VR也是通用的。至今在行業中也沒有一個如何處理這種動作的“標準答案”,而不僅這種動作, VR中的方方麵麵在行業中也都是同樣的情況。因此,我們探索出了一些其他辦法並分為兩類:直接連接(簡單的操控,創造一個固定結合點)和鬆散連接(通過調整速度或使用力來將物體吸引至控製器)。連接的方式同時也決定了我們模擬重量的策略。


在直接連接中,物體的行動會與控製器的動作一致。如果操控者因為這個物體質量移動過於迅速,那麼這種連接將會被打斷,物體掉落於地。


對於間接接觸,基於物體的重量,也會有對於控製器不同程度的吸引力。輕的物體反應快,就像在直接接觸的感覺一樣。重的物體相對操控者的動作會有延遲,需要更多的努力去提起。我們沒有預期這個策略會成功,因為其違背了“不同步”這個在VR中的忌諱,但是我們莫名地感覺這種方法很有前景。我們將其細分為二點:


  1.  我們仍然讓操控者拿起物體時與物體“同步”,消除操控者無法直接掌控環境的感覺。

  2.  當這個物體接觸到控製器時,我們斷開鬆散連接同時形成直接連接。我們增加這個機製的原因是因為我們在之前發現在用“拿起”動作時對物體重量的感覺最有效,後來的過程卻讓用戶分心。


步驟2:探索其他感官線索


除了“舉起”和“抓拿”這兩種機製,我們覺得探索出能夠轉換重量的反饋的其他形式很重要。後來證明有2種形式:視覺反饋和觸覺反饋。在任何一種情況下,當用戶的控製器接近某個物體的拉力閾值時,我們都會刻意使用戶對“張力”的感覺更加明顯。


視覺反饋取決於連接形式。直接連接中,我們探索出了很多種能夠表示控製器速度的計量方法。我們發現方法越簡單效果越好---我們決定用一種綠-紅進度條,貼近控製器,當速度接近物體的閾值時這個進度條會自動填充。對於間接接觸,將控製器與物體的聯係可視化成一根“弦”更有效,當張力增加時這根“弦”會從綠色變成紅色。


而對於觸覺反饋,我們采用和視覺反饋中“進度條”的同樣邏輯,並將其運用到控製器的振動效果上。當用戶接近拉力閾限時,控製器會以更高的頻率振動。雖然這很直接,但是卻很有效。


0?wx_fmt=jpeg


步驟3:測試,修改,再測試


將所有的那些因素都考慮到的話,我們可能會有無盡的排列組合去研究。所以為了測試和比較,我們開始在同樣的環境中進行多種試驗。我們嚐試一些東西,修改後,然後重新嚐試。


最終,我們經過層層篩選,我們認為由多種因素作用的的拿起行為的策略才是最佳的。大多數主要影響這種行為的因素甚至不是基於物理的---相反,更側重物理交互時的次級視覺和觸覺反饋的影響。


1.操控

物體與控製器緊密結合,但是當通過靜止的碰撞器時會切斷聯係。這是最簡單的拿起物體的方式,無需對重量進行模擬。


2.有觸覺反饋的固定連接

物體與控製器緊密結合,遇到碰撞機複位,控製器速度過快時會由於質量掉落。當速度接近其閾值時,控製器會不斷振動。


3.有視覺反饋的固定連接

物體與控製器緊密結合,遇到碰撞機複位,控製器速度過快時會由於質量掉落。當速度接近其閾值時,計量表會進行填充。


4.有視覺和觸覺反饋的固定連接

物體與控製器緊密結合,遇到碰撞機複位,控製器速度過快時會由於質量掉落。當速度接近其閾值時,計量表會進行填充,控製器會振動。


5.力

物體由於力的作用向控製器吸引而來,因此其速度會隨著與控製器距離減短而增加。


6.速度(連接會因為張力斷掉)

物體的速度會進行調整,使其能夠引向控製器。如果控製器和物體之間的張力超過物體質量的閾值,這個物體就會掉落。


7.速度(連接不會斷)

物體的速度會進行調整,使其能夠引向控製器。不管張力有多大,物體都不會掉。

在這個關鍵點,我們需要研究團隊之外的人來幫助我們了解到底哪些因素是積極的,哪些是消極的或沒有必要的。


我們為了測試創造了2種場景。在每種場景中,我們都會為用戶安排7個站點。在第一個場景中每個站點隻有有一個物體,所以被測試者可以直接比較每種方式中舉起某種物體的感受的不同。當被測試者們在站點輪流試驗時,我們會問他們一些問題:哪個物體感覺最重?當你需要拿起一堆物品時,你更偏向哪種策略?哪種策略讓你感受最自然?


在第二個場景中我們將會在每個站點引入多種不同重量的物體。通過這種方式,用戶可以分辨出一種策略在麵對輕重不同物體時傳導重量的效果好壞。然後,他們可以在同樣的測試環境中與其他策略進行比較。


 ◆ 

收獲


盡管我們在測試中發現了少許明顯傾向,但是沒有一種手段成為被測試者們一致認為的第一選擇。當然,這也在我們的預期之內;在做這種嚐試時,我們就沒有認為這會有一個“正確”答案。但是,我們仍然能夠得到許多結論。


1.如果連接能夠被打斷,那麼鬆散連接是最可行的辦法

我們的被測試者反應出這種機製能夠最自然地傳遞重量的感覺。沒有嚴格的對拉力的切斷反應的話,物體總會感覺輕飄飄地,無法對用戶的動作做出有效的反應。打破鬆散連接使物體落地,促使用戶意識到自己需要改變自己的行為,使他們無法忽略物體的感知“重量”。


2.除非對交互很重要,要麼重量這種東西就一文不值

我們的被測試者非常享受通過鬆散連接進行交互,很多人認為這種機製能讓人感受到樂趣。盡管這種機製僅被少數人使用,但是如果想要用戶能夠注意到物體的重量,我們認為鬆散連接可能會成為一個值得被更多探索的有用的係統。


0?wx_fmt=jpeg


但是當我們問被測試者當他們需要拿起許多物品時他們會選擇哪種策略,他們都會一致地選擇直接連接。現在是效率優先的時代,人們不想被反複提醒自己具有人類的天生不足。


我們未來的許多項目在各個方麵都深受此啟發。如果分毫不差地模仿現實是重要的,那麼我們就需要避免讓用戶拿起過於重或大的物體。當然我們也可與選擇去接受它。不過虛擬現實最激動人心的一麵,就是它能夠讓我們看見、做到一些現實生活中不可能的事。


3.我們歡迎更多的反饋---但別忘了聲音!

被測試者會為更多的而不是更少的反饋所吸引,但又一個例外:如果他們不能徹底理解反饋和他們動作直接的關係,他們會認為這種視覺反饋對注意力是擾亂。否則,視覺和觸覺的加入是有用的。


再提醒一下,想想聲音是如何強化環境的物理麵的。當我們選擇將聲音作為一個變量加入我們的試驗中時,我們並沒有認為它能有多大效果。但結果是它對被測試者對重量的感知有著非常關鍵的作用。重物落地的碰撞聲或者是物體之間的摩擦聲會強化用戶對物體質量差異的感知。


4.VR中“基本的”交互要比它們看上去要複雜許多

設計基於物理的交互模型要比傳統的基於顯示器的用戶體驗要更具挑戰,因為有太多的因素會影響最後的結果。一直以來,設計一個交互作用下的框架總是會讓人不知所措,但是設計交互本身卻來的很容易。遊戲行業早些年就已經開始著手這些問題了,之後我們其他人才漸漸趕上。

原文發布時間為:2016-10-26

本文來自雲棲社區合作夥伴“大數據文摘”,了解相關信息可以關注“BigDataDigest”微信公眾號

最後更新:2017-06-01 13:32:10

  上一篇:go  餐飲外賣業為例-數據化運營操作指南(附29頁PDF下載)
  下一篇:go  現實黑鏡:將死去好友複活為AI