メインコンテンツまでスキップ
バージョン: 0.23.2

ハンドトラッキング

Hand Tracking Plug-inのセットアップ

  • ハンドトラッキングはMixed Reality OpenXR Plug-inを使ってサポートされます。
  • プラグインを入手するには、Mixed Reality Feature Toolを使い、Platform Supportから「Mixed Reality OpenXR Plug-in」を選択してください。
    alt text
  • [Get Features]を選択してプロジェクトの更新プロセスを完了し、Unityプロジェクトに戻ります。

Unityの構成

Unityでは、更新を行う設定が2つあります。

MRTKの設定

1つ目に更新するのは、MRTKの設定です。
MRTK Hands Aggregator Subsystem」と「Subsystem of OpenXR Hands API」のチェックボックスが両方とも有効になっていることを確認してください。
alt text

さらに、デフォルトで0.25に設定されている「Pinch Closed Threshold」設定のキャリブレーションを試してみることをおすすめします。この値を0.45または0.5に設定することをおすすめします。

OpenXRの設定

2つ目に更新するのは、OpenXRの設定です。
利用可能なハンドトラッキング機能が2つあることに注意してください。競合を避けるために、「Microsoft Hand Tracking」のチェックボックスだけを有効にして、他のHand Trackingのチェックボックスは無効にしてください。これは隣に「?」マークが付いているもので、設定アイコンをクリックしてAuthorを見ることで、Microsoft版であることを確認できます。
alt text

手の可視化の設定

MRTK3の手のプレハブを使用する場合

alt text

  1. ProjectのPackages内のMRTK Input > Visualizers > RiggedHandVisualizer > openxr_right_handを選択します。
  2. RiggedHandMeshVisualizerコンポーネントのShow Hands On Transparent Displaysにチェックを入れます。

左手も同じように設定します。

Snapdragon Spacesの手のプレハブを使用する場合

MRTKが提供するハンドメッシュに加えて、Snapdragon Spaces SDKは、仮想のハンドオーバーレイを可視化するためのQCHTハンドメッシュも提供します。

実装するには、シーンのHierarchyのMRTK XR Rig > Camera Offset > MRTK RightHand ControllerMRTK RightHand Controllerオブジェクトを選択します。
alt text

Package/QCHT Unity Interactions/Prefabs/mrtk3/にあるhand_right_qchtプレハブをMRTK RightHand ControllerModel Prefabフィールドにドラッグします。
alt text

左手も同じように設定します。

ハンドトラッキングのオプション

NOTE

現時点では、OpenXR Controller Profileとの競合のため、Snapdragon Spacesコントローラーと両手から同時にレイキャストすることはできません。そのため、2つのオプションがあります。

オプション1:左手のトラッキングを無効にする

左手のトラッキングを無効にするには、MRTK XR Rig内のMRTK LeftHand Controllerをオフにし、MRTK RightHand Controllerをオンのままにします。左手をオンのままにしておくと、コライダーとしては動作しますが、レイキャストのインタラクターとしては正しく動作しない可能性があります。このオプションはデバイスポインターを引き続き使用できますが、理想的な制限ではないかもしれません。
alt text

オプション2:Snapdragon Spacesコントローラーを無効にする(両手オプション)

Snapdragon Spaces Controllerを無効にするには、Device Pointer Prefabがある場合は、シーンから削除するか無効にしてください。

次に、OpenXRの設定から「Interaction Profiles」を削除します。 alt text

TIP

Base Runtime機能の横に警告フラグが立ちますが、無視してもかまいません。
これは両手のトラッキングを可能にしますが、"Hand Tracking only "モードであるため、ポインター等のスマートフォンのコントローラー機能は無効になります。

これは、他の "ハンドトラッキングのみ "のプラットフォームからアプリを直接移植する場合に推奨されます。

MRTKの詳細

MRTKの詳細については、MRTK3のドキュメントを参照するか、MRTK3のGitHubリポジトリをチェックしてください。