隨著VR/AR眼球追蹤技術(shù)的逐漸成熟,如何使用眼球追蹤技術(shù)為自己的VR/AR APP提升用戶體驗(yàn)已經(jīng)成為開發(fā)者的一大議題。 一般來說,眼控交互應(yīng)用開發(fā)是開發(fā)者的第一想法。 簡單來講,眼控交互開發(fā)的原理就是在開發(fā)引擎中,將視線范圍設(shè)置為一條射線狀或圓錐狀物體,和VR/AR中的各種Object進(jìn)行碰撞檢測,當(dāng)程序一旦檢測到碰撞,則視為用戶的視線落到了這個(gè)物體上,其基本原理對于開發(fā)者是很容易掌握的。
但是在與很多VR/AR開發(fā)者的交流中過程中,發(fā)現(xiàn)目前開發(fā)者對于眼控交互設(shè)計(jì)上依舊存在較多誤解。 下面說一下常見的一些設(shè)計(jì)問題:
碰撞檢測的范圍
視線與物體進(jìn)行碰撞檢測時(shí),不要真的將視線視為一個(gè)無限細(xì)的射線進(jìn)行檢測,因?yàn)榛谀壳把矍蜃粉櫦夹g(shù),是無法做到100%準(zhǔn)確,會(huì)存在一定的誤差,雖然誤差值很小,但是為了避免這種誤差造成交互失誤,在進(jìn)行碰撞檢測時(shí),視線一方的碰撞物體,一般需要設(shè)置一定的擴(kuò)展范圍,最好是將視線設(shè)置為一個(gè)圓錐形,這樣無論碰撞的距離是多少,其檢測范圍的半徑是不變的。
碰撞檢測并不等同于注視
檢測到視線物體的碰撞和用戶在注視這個(gè)物體并不是等同的。
人眼有兩種常見的運(yùn)動(dòng)模式:眼跳和注視。 眼跳的速度非常快,而且人眼的視神經(jīng)經(jīng)常處于半關(guān)閉的狀態(tài),這時(shí)檢測到視線和物體的碰撞,產(chǎn)生交互是沒有必要的。視線落在某個(gè)物體上超過一定的時(shí)間才是注視,一般情況下要超過100ms,所以在交互設(shè)計(jì)中,一般需要通過一定的延遲判定才能認(rèn)為是注視。
圓圈代表注視(半徑越大,注視時(shí)間越長)線條代表眼跳
避免米達(dá)斯接觸
有些開發(fā)者曾問道:如何區(qū)別用戶是在觀察一個(gè)物體,而并不是想要觸發(fā)這個(gè)物體相應(yīng)的功能呢?
這是一個(gè)非常好的問題,在眼球追蹤技術(shù)有一個(gè)專有的名詞對問題進(jìn)行概括:米達(dá)斯接觸問題。
米達(dá)斯接觸
所謂米達(dá)斯接觸(MidasTouch)問題(米達(dá)斯是希臘神話中的一位能點(diǎn)石成金的國王)指的是由于用戶視線運(yùn)動(dòng)的隨意性而造成計(jì)算機(jī)對用戶意圖識(shí)別的困難。用戶可能希望隨便看什么,并非存在目的和意義,更不希望每次轉(zhuǎn)移視線都可能引發(fā)一個(gè)動(dòng)作。因此,視線跟蹤技術(shù)的挑戰(zhàn)之一就是避免“米達(dá)斯接觸”問題。
如果用戶只是選中激活(比如高亮、框選、變大變小)用戶注視的物體,米達(dá)斯接觸是不會(huì)產(chǎn)生什么副作用的,但是如果用戶注視的物體會(huì)觸發(fā)場景切換或功能設(shè)置上的變化。那么問題就隨之而來了: 你怎么知道用戶僅僅是在查看,還是想直接觸發(fā)它的功能呢? 為了解決這個(gè)問題,我們不會(huì)采用注視后馬上觸發(fā)的方式,因?yàn)檫@樣會(huì)不斷產(chǎn)生錯(cuò)誤的操作。 一般會(huì)有下面的解決方法:
延遲觸發(fā)
在被觀察物體上,顯示一個(gè)不影響正常瀏覽的時(shí)間進(jìn)度條,當(dāng)進(jìn)度條完成設(shè)定時(shí)間的計(jì)時(shí)時(shí),產(chǎn)生觸發(fā)行為。
二次眼控觸發(fā)
在被觀察物體旁邊,顯示“真正的”觸發(fā)元素,用戶余光可以看到,但不影響觀察主體。當(dāng)需要觸發(fā)時(shí),看那個(gè)“真正的”觸發(fā)元素即可。
但是細(xì)心的讀者會(huì)發(fā)現(xiàn),這兩個(gè)方法依舊存在問題:延遲觸發(fā)要求用戶注意延遲進(jìn)度,而且這種操作容易引起眼睛的疲勞,而二次眼控觸發(fā)雖然在一定程度上可以避免誤觸發(fā),但是仍然有誤觸發(fā)的可能。
這就引出了下一個(gè)論點(diǎn):與其他輸入工具結(jié)合。
與其他輸入工具結(jié)合
只用眼睛進(jìn)行所有交互并不是最好的交互模式,結(jié)合其他輸入工具,如手柄、語音、手勢等,才是比較自然的,當(dāng)然,這里說的交互不包括選中激活的交互。 延遲觸發(fā)的確會(huì)引起用眼疲勞,但是這種模式也有它的適用場景,例如類似漸凍癥患者這種殘疾人群,除了眼睛,其他交互手段全部失效,這種模式就是最適合的。 當(dāng)然,不排除某些特定場合,除了眼睛其他交互手段都不適用,那也可以采用這種模式。
漸凍癥患者使用的輸入法界面,典型的延遲交互
在正常環(huán)境中,多重交互將會(huì)更自然。比如在一個(gè)菜單界面上,眼睛的運(yùn)動(dòng)軌跡能夠反應(yīng)在菜單項(xiàng)中,使選項(xiàng)處于待激活狀態(tài),此狀態(tài)下不觸發(fā)場景切換或產(chǎn)生其他設(shè)置上的變化,這時(shí)可以搭配語音交互說出“確認(rèn)”或者通過某個(gè)特定手勢(比如:OK手勢),進(jìn)行激活狀態(tài),這種多重交互協(xié)作方式將會(huì)有效的避免了誤觸發(fā)。
用眼睛做瞄準(zhǔn)不是好的游戲交互模式
目前在VR游戲中,槍擊游戲是最常見的一種,所以很多開發(fā)者就會(huì)想到是否能用眼睛作為瞄準(zhǔn)工具。實(shí)際上,我們并不推薦大家將用眼睛做瞄準(zhǔn),因?yàn)檫@并不是一種好的游戲交互模式。 對于擁有這種想法的開發(fā)者,存在需要兩個(gè)必須想通問題: 游戲是想讓用戶彈無虛發(fā)永不失敗? 還是想測試眼動(dòng)廠家算法的準(zhǔn)確性?
不要用眼睛做過于精細(xì)化的選擇
前面有提到,眼球追蹤技術(shù)還做不到100%的準(zhǔn)確,與傳統(tǒng)桌面式交互中的鼠標(biāo)是不可同日而語的,所以在交互設(shè)計(jì)中,不要信心過頭,碰撞檢測的范圍不要過小,甚至可以設(shè)置一定的吸附算法,以防止用戶無法產(chǎn)生交互行為。 另外,多個(gè)可產(chǎn)生交互的元素之間,需要有一定的距離,防止由于距離過近,產(chǎn)生錯(cuò)誤的交互。用戶本來看的是A,結(jié)果B開始進(jìn)行交互反應(yīng)了。 除了上面所說的常見問題,下面我們也給開發(fā)者一些常見的交互設(shè)計(jì)思路:
注視觸發(fā)滾動(dòng)
比如上下排列的菜單,當(dāng)用戶注視落點(diǎn)比較靠近下方時(shí),自動(dòng)向上滾動(dòng),使用戶的視線處于最舒適的方向上,以提升用戶體驗(yàn)。左右排列的請自行思考。
局部變化
當(dāng)用戶注視某些特定元素時(shí),可產(chǎn)生局部變化,如拉近、放大、變清晰、變亮等,而視線離開時(shí),恢復(fù)原狀。比如在玩VR游戲時(shí),全局地圖可以在周邊視野比較小的地方,避免影響正常游戲視線,但當(dāng)用戶注視它時(shí),可以將地圖放大以便于用戶瀏覽,而當(dāng)用戶視線離開地圖回到主游戲場景時(shí),地圖可以自動(dòng)收回到原來比較小的區(qū)域。
目前,由七鑫易維、HTC和英偉達(dá)聯(lián)合舉行的眼球追蹤VR內(nèi)容開發(fā)大賽正在舉行中,有興趣可以參加報(bào)名。
-
交互
+關(guān)注
關(guān)注
1文章
67瀏覽量
14788 -
vr
+關(guān)注
關(guān)注
34文章
9634瀏覽量
150065 -
眼球追蹤技術(shù)
+關(guān)注
關(guān)注
1文章
16瀏覽量
14564
原文標(biāo)題:VR/AR眼控交互設(shè)計(jì)六大技巧
文章出處:【微信號(hào):vrtuoluo,微信公眾號(hào):VR陀螺】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論