VIVE PRO EYEに搭載されたアイトラッキングを使ってみました。
いくつかユーズケースを想定し、テストアプリを作成しました。
アイトラッキングとは
VIVE PRO EYEはヘッドセット内側の左右各レンズの周囲に装着者の眼の動きを追跡できるセンサーを備えています。
これで、装着者の眼がヘッドセットに対してどこにあるか、またどっちをむいているかわかるようになり、VR空間のどこを見ているかの把握、視線を利用したUIデザインやインタラクション、視線周辺以外のCGの描画を荒くして負荷軽減する(Foveated Rendering)を行えるようになります。
VIVE PRO EYEでアイトラッキングを使うには
EYEトラッキングを利用するには、HTCから提供されているSRanipal SDKを用います。
SRanipal SDKは眼の追跡用と別途発売予定の追加センサを用いる口回りの追跡用があります。
https://developer.vive.com/resources/knowledgebase/vive-sranipal-sdk/
今回は眼用を使いました。
EYEトラッキングのテストアプリケーション
今回アプリケーションには3つの機能を作りました。
1.ユーザーの眼の動きを、アバターへ反映
装着者はちゃんと自分の眼の動きが見えないので、眼の動きをアバターに反映させました。
それぞれの眼の動き、まばたきなど、動きが取れているのがわかります。
2.視線による部品選択
視線がとれるようになるので、視線の先に何か部品があると、色を変えてその部品を示しました。
人の眼は通常でもちらちら動いており、SDKの取得情報そのままでは視点が定まらなかったので、別途フィルターを挟んで安定化させました。
但し、意図的に、どこか部品を注視し続けるのはけっこう疲れるので、細かい場所を選択するためのUIにはつらい。
過去に見た箇所をチェックする、イベントのトリガーにするなど、故意ではない、補助的な使い方が向いている気がします。
3.ヒートマップの例
CADデータのレビューで、ある場所をどのくらい見ているかを表すヒートマップを想定したアプリです。
板ポリの上で、視線があたったところの色を変化させています。ずっと同じ場所をみていると、色が白->黄色->赤と変化します。
あとSRanipalの標準機能にアイトラッキングのキャリブレーション機能があります。
起動すると、顔に対するヘッドセットの位置調整、眼間距離の調整、視線追跡の調整を行え、次回キャリブレーションを行うまで、そのパラメータがアイトラッキングに用いられます。
Foveated Renderingは続報にて紹介予定です。
AR-VRソリューションやセミナーのご案内など、詳しくは製品Webサイトで!