在全息應用中,凝視是第一種輸入形式,被用於定位物體(功能和PC的光標指針類似)。凝視告訴你用戶正在看向世界中的位置,讓你能夠確定他們的意圖。在現實世界中,你通常會盯着你打算與之交互的物體。這種方式與凝視相同。
HoloLens使用用戶頭部的位置和方向,而不是眼睛,來確定他們視線參數。你可以把凝視當作從用戶兩眼之間向正前方發射的一個激光指示器。當用戶環視房間時,你的應用可以通過線的相交來確定用戶當前正在看向世界中哪些虛擬或真實物體。
在HoloLens,交互動作一般從用戶的凝視中推導出目標對象,而不是試圖在手的位置直接渲染或交互。一旦一個交互已經開始,在使用操作或導航手勢的同時,也可以使用手的相對運動來控制手勢。
使用凝視 Uses of gaze
作為一個全息應用開發者,你可以使用凝視做到很多事情:
- 你的應用可以通過判斷凝視射線與全息物體的交叉來判斷用戶當前在關注什么。
- 你的應用可以借助基於凝視射線的手勢來實現選中、激活、拖拽或其他對全息物體的交互。
- 通過凝視射線與空間匹配網格的交叉,你的應用可以讓用戶放置全息物體到真實世界的表面。
- 你的應用可以知道何時用戶沒有注視在重要物體的方向,這使得你可以通過圖形或者聲音提醒將用戶帶回到正確的方向上。
指針 Cursor
大部分應用使用指針(或者其他視覺/聽覺指示)來幫助用戶知道他們能夠和什么交互。典型的做法是,你將指針定位在世界中那些用戶凝視優先和物體交互的位置,這些位置可能會是全息物體或真實世界的表面。
可視化指針的一個例子
為用戶的凝視配上動作 Giving action to the user's gaze
一旦用戶通過凝視定位到一個全息物體或真實世界物體,下一步就是對此物體做動作。在HoloLens上,用戶進行操作的基本方式是通過語音或手勢。