MRが楽しい

MRやVRについて学習したことを書き残す

Mixed Reality Toolkit 3 パブリックプレビューのドキュメントを少しずつ読み解く インタラクションモードマネージャ

本日は Mixed Reality Toolkit 3 の調査枠です。
Mixed Reality Toolkit 3 パブリックプレビューのドキュメントを少しずつ翻訳しつつ読み進めていきます。

Mixed Reality Toolkit 3 のドキュメント

以下のドキュメントを読み進めていきます。
docs.microsoft.com

今回は「インタラクションモードマネージャ」のページを読み進めます。
docs.microsoft.com

インタラクションモードマネージャ

インタラクションモードはユーザーが何をしているかの情報に基づいて有効にすべきインタラクションのサブセットを表します。
例えば「近接(Near)インタラクションモード」では全てのレイ系インタラクターを無効にし、掴み(grab)インタラクターや指さし(poke)インタラクターの使用を許可します。

ユーザーがオブジェクトを掴んでいるときは「掴み(GrabSelect)インタラクションモード」にしてタッチインタラクタを無効化し、オブジェクトを掴んでときに誤ってタッチ操作が発生しないようにします。

[InteractionModeManager]がこれらのインタラクション状況を仲介し、[InteractionModeDetector]が現在のコンテキストに最適なモードを決定します。
[ProximityDetector]のような Detector は任意の条件に基づいて、与えられた Controller に対してどのモードを有効にするか決定します。

開発者は[IInteractionModeDetector]を実装することで、インタラクション間の曖昧さを解消する新しい条件を作成することができます。

各モードの優先順位は[InteractionModeManager]の中で表示されている順番で決まります。
複数のインタラクション状況が有効な場合、リストの後半にあるモードがより高い優先度を持ち、主要なモードとなります。
また[InteractionModeManager]ではデフォルトのインタラクションモードを指定することも可能です。