MRが楽しい

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

MRTKv2.xを使ってMetaQuest3向けのUnityプロジェクト作成を行う その20(シーンモデルのメッシュにマテリアルを設定する)

本日はMetaQuest3の技術調査枠です。
MRTKv2.xを使ってMetaQuest3向けのUnityプロジェクト作成を行う手順を記事にします。
本記事はシーンモデルのメッシュにマテリアルを設定する手順です。

前提条件

本記事では以下の記事で作成したシーンモデルの使用を有効にした Unity プロジェクトを基に設定を行います。
bluebirdofoz.hatenablog.com

シーンモデルの設定を行う

シーンモデルのメッシュを参照してマテリアルなどを設定するには前回のシーンモデルの利用設定に加えて以下の作業が必要になります。
・シーンモデルのメッシュ設定を上書きするプレハブを作成する
・OVRSceneManagerにプレハブを指定する

シーンモデルのメッシュ設定を上書きするプレハブを作成する

初めにシーンモデルのメッシュ設定を上書きするプレハブを作成します。
Hierarchy上で右クリックから[Create Empty]でプレハブのベースオブジェクトを作成します。

作成したオブジェクトに以下のコンポーネントを設定します。
・OVRSceneAnchor
・OVRSceneVolume
・OVRSceneVolumeMeshFilter
・MeshCollider
・MeshRenderer
・MeshFilter

MeshRendererのMaterialsに任意のマテリアルを設定します。
ここで設定したマテリアルでシーンモデルのメッシュが表示されるようになります。
今回は以下のサンプルマテリアルを使用しました。

PackageCache\Meta MR Utility Kit\Editor\BuildingBlocks\BlockData\RoomModel\Volume.mat

作成したゲームオブジェクトをAssetsにドラッグしてプレハブを作成します。シーン上のプレハブは削除します。


OVRSceneManagerにプレハブを指定する

次に作成したプレハブがシーンモデルのメッシュに利用するよう設定を行います。
OVRSceneManagerコンポーネントの[Prefab Overrides]の[+]ボタンをクリックします。

追加した要素を[GLOBAL_MESH]に指定します。
これでシーンモデルのメッシュに対して指定したプレハブが利用されます。

[Prefab]に先ほど作成したプレハブを指定します。

ビルドと動作確認

これで設定は完了です。
以下の記事を参考にプロジェクトのビルドとQuest3へのデプロイを実行してください。
bluebirdofoz.hatenablog.com

MetaQuest3でデプロイしたアプリを起動します。
アプリが起動すると指定したマテリアルが設定された物理空間のメッシュが表示されます。