今回は前回に引き続きHoloLens 2でアイトラッキングを使用します。
前回はアイトラッキングを使用するための準備をUnity内で行いました。
引き続きMRTKのドキュメントを参考に進めていきます。
〇アイトラッキングのオブジェクトの追加
前回まででアイトラッキングを使用する準備が完了していますが、シーンにオブジェクトが何もないのではアイトラッキングを行えていることがわかりません。
まずアイトラッキングに対応したオブジェクトを配置します。
今回はAssets/MRTK/Examples/Demos/EyeTracking内のサンプルシーン[EyeTrackingDemo-05-Visualizer]から目線をヒートマップとして取得することができる[Live Samples]オブジェクトを配置しました。
[Libe Samples]オブジェクトの中で必要なものは[Slate_Content]オブジェクトのみなのでそれ以外はここでは非表示にしました。
これに加えて[EyeCalibrationChecker]オブジェクトを加えています。
このオブジェクトはscene内でアイキャリブレーションが行われているかを検知して、もし行われていない場合アイトラッキングを行うように誘導する機能があります。
〇アイトラッキングのCapability
HoloLens 2実機にビルドします。
Unityからビルドする場合機能ごとにCapabilityを設定する必要があります。ここで機能の使用を許可しない場合デバイスで該当の機能を用いることができません。
UnityのPlayerSettingsから行うことができますが、MRTK側でもこれらを行うためのウィンドウが提供されています。
上部タブから[MixedRealityToolKit]→[Utilites]→[Build Window]を開きます。
[Appx Build Option]タブを開き[Gaze Input Capability]のチェックを入れ有効化します。
〇アイトラッキングのプロジェクトのビルド
[BuildSettings]を開き[Bulid]を押し開いたウィンドウ上で右クリックから[新規作成]で[App]という名前のフォルダを作成します。
Appフォルダを選択することでビルドが開始されソリューションファイルが作成されます。
ソリューションファイルを開き、[Release][ARM64]にします。
[ARM]でビルドする場合Unity2019.3.9f1の場合バグが残っておりアプリが正常に起動しないことがあります。
USBで実機と接続し[デバック]→[デバッグなしで実行]を選択することでデプロイが始まります。
〇実機でアイキャリブレーション
HoloLens 2のアイキャリブレーションは[設定]アプリから行うことができます。
動くジェムを目線で追うことでキャリブレーションが行われます。
〇実機でアプリを確認
デプロイしたアプリを開きます。
目線のヒートマップが表示されます。 これでアイトラッキングを使用したアプリケーションが完成しました。