愛伊米

關於VRAR眼控互動設計的那些事兒,你想知道的都在這兒

隨著VR/AR眼球追蹤技術的逐漸成熟,如何使用眼球追蹤技術為自己的VR/AR APP提升使用者體驗已經成為開發者的一大議題。

一般來說,眼控互動應用開發是開發者的第一想法

簡單來講,眼控互動開發的原理就是在開發引擎中,將視線範圍設定為一條射線狀或圓錐狀物體,和VR/AR中的各種Object進行碰撞檢測,當程式一旦檢測到碰撞,則視為使用者的視線落到了這個物體上,其基本原理對於開發者是很容易掌握的。

但是在與很多VR/AR開發者的交流中過程中,發現目前開發者對於眼控互動設計上依舊存在較多誤解。

下面說一下常見的一些設計問題:

o

ne

碰撞檢測的範圍

視線與物體進行碰撞檢測時,不要真的將視線視為一個無限細的射線進行檢測,

因為基於目前眼球追蹤技術,是無法做到100%準確,會存在一定的誤差

,雖然誤差值很小,但是為了避免這種誤差造成互動失誤,在進行碰撞檢測時,視線一方的碰撞物體,一般需要設定一定的擴充套件範圍,最好是將視線設定為一個圓錐形,這樣無論碰撞的距離是多少,其檢測範圍的半徑是不變的。

T

wo

碰撞檢測並不等同於注視

檢測到視線物體的碰撞和使用者在注視這個物體並不是等同的。

人眼有兩種常見的運動模式:

眼跳和注視。

眼跳的速度非常快,而且人眼的視神經經常處於半關閉的狀態,這時檢測到視線和物體的碰撞,產生互動是沒有必要的。視線落在某個物體上超過一定的時間才是注視,一般情況下要超過100ms,所以在互動設計中,一般需要透過一定的延遲判定才能認為是注視。

關於VRAR眼控互動設計的那些事兒,你想知道的都在這兒

圓圈代表注視(半徑越大,注視時間越長)線條代表眼跳

T

hree

避免米達斯接觸

有些開發者曾問道:如何區別使用者是在觀察一個物體,而並不是想要觸發這個物體相應的功能呢?

這是一個非常好的問題,在眼球追蹤技術有一個專有的名詞對問題進行概括:

達斯接觸

問題。

· 米達斯接觸:

所謂米達斯接觸(MidasTouch)問題(米達斯是希臘神話中的一位能點石成金的國王)指的是由於使用者視線運動的隨意性而造成計算機對使用者意圖識別的困難。使用者可能希望隨便看什麼,並非存在目的和意義,更不希望每次轉移視線都可能引發一個動作。因此,視線跟蹤技術的挑戰之一就是避免“米達斯接觸”問題。

關於VRAR眼控互動設計的那些事兒,你想知道的都在這兒

米達斯

如果使用者只是選中啟用(比如高亮、框選、變大變小)使用者注視的物體,米達斯接觸是不會產生什麼副作用的,但是如果使用者注視的物體會觸發場景切換或功能設定上的變化。那麼問題就隨之而來了:

你怎麼知道使用者僅僅是在檢視,還是想直接觸發它的功能呢?

為了解決這個問題,我們不會採用注視後馬上觸發的方式,因為這樣會不斷產生錯誤的操作。

一般會有下面的解決方法:

·

延遲觸發:

在被觀察物體上,顯示一個不影響正常瀏覽的時間進度條,當進度條完成設定時間的計時時,產生觸發行為。

·二次眼控觸發:

在被觀察物體旁邊,顯示“真正的”觸發元素,使用者餘光可以看到,但不影響觀察主體。當需要觸發時,看那個“真正的”觸發元素即可。

但是細心的讀者會發現,這兩個方法依舊存在問題:延遲觸發要求使用者注意延遲進度,而且這種操作容易引起眼睛的疲勞,而二次眼控觸發雖然在一定程度上可以避免誤觸發,但是仍然有誤觸發的可能。

這就引出了下一個論點:與其他輸入工具結合。

F

our

與其他輸入工具結合

只用眼睛進行所有互動並不是最好的互動模式,結合其他輸入工具,如手柄、語音、手勢等,才是比較自然的,

當然,這裡說的互動不包括選中啟用的互動。

延遲觸發的確會引起用眼疲勞,但是這種模式也有它的適用場景,例如類似漸凍症患者這種殘疾人群,除了眼睛,其他互動手段全部失效,這種模式就是最適合的。

當然,不排除某些特定場合,除了眼睛其他互動手段都不適用,那也可以採用這種模式。

關於VRAR眼控互動設計的那些事兒,你想知道的都在這兒

漸凍症患者使用的輸入法介面,典型的延遲互動

在正常環境中,多重互動將會更自然。

比如在一個選單介面上,眼睛的運動軌跡能夠反應在選單項中,使選項處於待啟用狀態,此狀態下不觸發場景切換或產生其他設定上的變化,這時可以搭配語音互動說出“確認”或者透過某個特定手勢(比如:OK手勢),進行啟用狀態,這種多重互動協作方式將會有效的避免了誤觸發。

F

ive

用眼睛做瞄準不是好的遊戲互動模式

目前在VR遊戲中,槍擊遊戲是最常見的一種,所以很多開發者就會想到是否能用眼睛作為瞄準工具。實際上,我們並不推薦大家將用眼睛做瞄準,因為這並不是一種好的遊戲互動模式。

對於擁有這種想法的開發者,存在需要兩個必須想通問題:

遊戲是想讓使用者彈無虛發永不失敗?

還是想測試眼動廠家演算法的準確性?

S

ix

不要用眼睛做過於精細化的選擇

前面有提到,眼球追蹤技術還做不到100%的準確,與傳統桌面式互動中的滑鼠是不可同日而語的,所以在互動設計中,不要信心過頭,碰撞檢測的範圍不要過小,甚至可以設定一定的吸附演算法,以防止使用者無法產生互動行為。

另外,多個可產生互動的元素之間,需要有一定的距離,防止由於距離過近,產生錯誤的互動。使用者本來看的是A,結果B開始進行互動反應了。

除了上面所說的常見問題,下面我們也給開發者一些常見的互動設計思路:

·

注視觸發滾動

比如上下排列的選單,當用戶注視落點比較靠近下方時,自動向上滾動,使使用者的視線處於最舒適的方向上,以提升使用者體驗。左右排列的請自行思考。

·

區域性變化

當用戶注視某些特定元素時,可產生區域性變化,如拉近、放大、變清晰、變亮等,而視線離開時,恢復原狀。比如在玩VR遊戲時,全域性地圖可以在周邊視野比較小的地方,避免影響正常遊戲視線,但當用戶注視它時,可以將地圖放大以便於使用者瀏覽,而當用戶視線離開地圖回到主遊戲場景時,地圖可以自動收回到原來比較小的區域。