MRが楽しい

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

MRTKのMeshObserversでエディター上でSpatialMapの仮想メッシュを表示する

本日は MRTK の技術調査枠です。
MRTKのMeshObserversでエディター上でSpatialMapの仮想メッシュを表示する手順を記事にします。
f:id:bluebirdofoz:20210109221146j:plain

Mesh Observers

MRTK の Mesh Observers のプロファイルを設定することでエディター上で SpatialMap のメッシュを表示できます。
microsoft.github.io

サンプルプロジェクトの作成

MRTK 2.5をインポートして基本設定を行ったサンプルプロジェクトを作成しました。
f:id:bluebirdofoz:20210109221202j:plain

MRTK を使ったプロジェクトの基本設定の手順は以下の記事を参考にしてください。
bluebirdofoz.hatenablog.com

Mesh Observersの設定

MixedRealityToolkit オブジェクトの Inspector ビューを開き、[Copy & Customize]で新規プロファイルを作成します。
[Clone Profile]ダイアログが開くので、任意のプロファイル名を設定して[Clone]を実行します。
f:id:bluebirdofoz:20210109221218j:plain

[Spatial Awareness]タブを開き、[Enable Spatial Awareness System]にチェックを入れます。
f:id:bluebirdofoz:20210109221228j:plain

[SpatialAwarenessSystem]のプロファイルを[Clone]して新規プロファイルを作成します。
[Clone Profile]ダイアログが開くので、任意のプロファイル名を設定して[Clone]を実行します。
f:id:bluebirdofoz:20210109221236j:plain

これで[Spatial Awareness System Settings]の設定が編集できるようになります。
[Add Spatial Observer]をクリックして新しいオブザーバを追加します。
f:id:bluebirdofoz:20210109221245j:plain

追加したオブザーバの[Type]のプルダウンを開きます。
[Microsoft.MixedReality.Toolkit.SpatialObjectMeshObserver -> SpatialObjectMeshObserver]に設定します。
f:id:bluebirdofoz:20210109221253j:plain

これでエディター上でシーンを再生したときに、SpatialMap のメッシュが表示されるようになります。
f:id:bluebirdofoz:20210109221303j:plain

メッシュの差し替え

メッシュを差し替えたい場合は[ObjectMeshObserver]のプロファイルを[Clone]して新規プロファイルを作成します。
[Clone Profile]ダイアログが開くので、任意のプロファイル名を設定して[Clone]を実行します。
f:id:bluebirdofoz:20210109221312j:plain

これで[Object Mesh Observer Settings]の設定が編集できるようになります。
[Spatial Mesh Object]の欄に、メッシュとして表示したいプレハブを設定します。
f:id:bluebirdofoz:20210109221320j:plain

再びシーンを再生すると、差し替えたメッシュが表示されるようになります。
f:id:bluebirdofoz:20210109221330j:plain

このメッシュの表示はデフォルト設定ではエディター上でのみ実行される設定になっています。
f:id:bluebirdofoz:20210109221338j:plain