Spatial Awareness (空間認識)
空間認識システムは、複合現実アプリケーションで現実世界の環境認識を提供します。 Microsoft HoloLens で導入されたとき、空間認識は環境のジオメトリを表すメッシュのコレクションを提供し、ホログラムと現実世界の間の魅力的なインタラクションを可能にしました。
Note
現時点では、Mixed Reality Toolkit には、HoloToolkit に元々パッケージされていた Spatial Understanding (空間理解) アルゴリズムは付属していません。 通常、Spatial Understanding では、空間メッシュデータを変換して、平面、壁、床、天井などの単純化またはグループ化されたメッシュデータを作成します。
はじめに
空間認識のサポートを追加するには、Mixed Reality Toolkit の 2 つの主要なコンポーネント (空間認識システムとサポートされているプラットフォーム プロバイダー) が必要です。
空間認識システムを有効にする
空間認識システムは、MixedRealityToolkit オブジェクト (または別の サービス レジストラ コンポーネント) によって管理されます。以下の手順に従って、MixedRealityToolkit プロファイルで Spatial Awareness システム を有効または無効にします。
Mixed Reality Toolkit には、いくつかのデフォルトの事前設定プロファイルが付属しています。これらの一部では、空間認識システムがデフォルトで有効または無効になっています。この事前設定の目的は、特に無効になっている場合、メッシュの計算とレンダリングの視覚的なオーバーヘッドを回避することです。
プロファイル | デフォルトの有効/無効設定 |
---|---|
DefaultHoloLens1ConfigurationProfile (Assets/MRTK/SDK/Profiles/HoloLens1) |
False |
DefaultHoloLens2ConfigurationProfile (Assets/MRTK/SDK/Profiles/HoloLens2) |
False |
DefaultMixedRealityToolkitConfigurationProfile (Assets/MRTK/SDK/Profiles) |
True |
[Inspector] (インスペクター) パネルを開くために [Hierarchy] (ヒエラルキー) から MixedRealityToolkit オブジェクトを選択する
Spatial Awareness System セクションに移動し、Enable Spatial Awareness System にチェックを入れる
目的の空間認識システムの実装タイプを選択します。
MixedRealitySpatialAwarenessSystem
がデフォルトで提供されます。
オブザーバーの登録
Mixed Reality Toolkit のサービスには、プラットフォーム固有のデータと実装制御でメイン サービスを補完するデータ プロバイダー サービスを含めることができます。 例として、さまざまなプラットフォーム固有の API からコントローラーおよびその他の関連入力情報を取得する複数のデータ プロバイダーを持つ Mixed Reality Input System があります。
空間認識システムは、データ プロバイダーが現実世界に関するメッシュデータをシステムに提供するという点で類似しています。Spatial Awareness プロファイルには、少なくとも 1 つの Spatial Observer (空間オブザーバー) が登録されている必要があります。空間オブザーバーは通常、プラットフォーム固有のエンドポイント(つまり、HoloLens)からさまざまな種類のメッシュデータを提供するためのプロバイダーとして機能するプラットフォーム固有のコンポーネントです。
Spatial Awareness System プロファイルを開く
Add Spatial Observer ボタンをクリックする
Spatial Observer の実装タイプ を選択する
必要に応じてオブザーバーの構成プロパティを変更する
Note
DefaultMixedRealityToolkitConfigurationProfile
(Assets/MRTK/SDK/Profiles) のユーザーは、WindowsMixedRealitySpatialMeshObserver
クラスを使用する Windows Mixed Reality プラットフォーム用に事前設定された Spatial Awareness システムを使用します
ビルドとデプロイ
空間認識システムを目的のオブザーバーで構成すると、プロジェクトをビルドしてターゲット プラットフォームにデプロイできます。
Important
Windows Mixed Reality プラットフォーム(例:HoloLens)を対象とする場合、デバイスで Spatial Awareness システムを使用するには、Spatial Perception capability が有効になっていることを確認することが重要です。
Warning
Microsoft HoloLens を含む一部のプラットフォームでは、Unity 内からリモート実行をサポートしています。この機能により、ビルドとデプロイの手順を必要とせずに、迅速な開発とテストが可能になります。ターゲット ハードウェアとプラットフォームで実行される、ビルドおよびデプロイされたバージョンのアプリケーションを使用して、最終的な受け入れテストを行うようにしてください。
次のステップ
上記手順に従い Spatial Awareness システムを有効にしたら、より詳細に設定やコントロールをすることができます。
インスペクターでのオブザーバーの設定に関する情報:
コードでのオブザーバーのコントロールと拡張に関する情報: