練習 - 使用眼球追蹤

已完成

在此練習中,您將瞭解如何啟用 HoloLens 2 的眼球追蹤,並將眼球追蹤新增至物件,以在使用者查看物件時觸發動作。

確保已啟用眼球注視輸入功能

  • 在 Unity 功能表中,選取 [Edit] \(編輯\)>[Project Settings] \(專案設定\)。 展開 [XR 外掛程式管理],然後選取 [OpenXR ],並確定 已將眼睛注視互動配置檔 新增至 [互動配置檔]。

    Screenshot of the eye-gaze interaction profile in the OpenXR menu.

啟用 Unity 編輯器的模擬眼球追蹤

  • 上一個課程模組中,您的場景中應該已有 MRTK XR Rig。 注視輸入已包含在此預製物件中,因此您不需要新增任何額外的元件。

    Screenshot of the MRTK XR Rig prefab for gaze controller.

將眼球追蹤新增至物件

  1. 在 [階層] 視窗中,展開 [RoverExplorer]>[按鈕]>[提示]。 以滑鼠右鍵按兩下 Hints 遊戲物件,然後選取 [3D 物件>文字 - TextMeshPro]。 將新建立的遊戲物件重新命名為 ButtonText

    Screenshot of Unity with Hints Button text object selected and EyeTrackingTarget component configured.

  2. 在 [階層] 視窗中,選取 [RoverExplorer]>[按鈕]>[提示]>[ButtonText]。 將其文字輸入變更為提示字型大小變更為 2Pos X 變更為 9.75Pos Y 變更為 -1.50,並將 Pos Z 變更-0.3

    Screenshot of Unity with Hints Button text object configuration and EyeTrackingTarget component configured.

  3. 在 [階層] 視窗中,展開 [RoverExplorer]>[按鈕]>[提示]>[ButtonText]。 然後,在 [階層] 視窗中,選取 [提示] 按鈕對象,然後設定 PressableButton 元件,如下所示:

    • 在 [XRI 可互動的事件] 底下,於 [暫留輸入] 區段中:

      1. 選取小 + 圖示以新增另一個事件。
      2. ButtonText 物件從 [提示 ] 按鈕指派給 [無](物件) 字段。
      3. 從 [無函式] 下拉式清單中,選取 [TextMeshPro>float fontSize] 以在觸發事件時更新這個屬性值。
      4. 將引數設為 3 以將目前字體大小增加至 3。
    • 在 [ 暫留 結束] 區段中:

      1. 選取小 + 圖示以新增另一個事件。
      2. ButtonText 物件從 [提示 ] 按鈕指派給 [無](物件) 字段。
      3. 從 [無函式] 下拉式清單中,選取 [TextMeshPro>float fontSize] 以在觸發事件時更新這個屬性值。
      4. 將引數設為 2 以將字體大小重設回 2。

    Screenshot of Unity with Hints TextMeshPro object selected and EyeTrackingTarget component configured.

  4. 針對 [爆炸] 和 [重設] 按鈕對象重複上述步驟,以設定剩餘按鈕的眼球追蹤。 如果您現在進入遊戲模式,並在移動滑鼠時按住滑鼠右鍵,直到注視達到其中一個按鈕,您會看到文字字型大小增加,然後在您望去時重設回其原始大小。

    Screenshot of Unity with all button text and EyeTrackingTarget component configured.