この記事のゴール

MetaQuest3でMRデモ 2. QuestCameraTools-Unityを使ったマーカー式ARの座標軸モデルを自作モデルに置き換える

MetaQuest3でMRデモ 2. QuestCameraTools-Unityを使ったマーカー式ARの続きにあたります.
引き続きArbitraryQRTrackingSample.unityを編集します.

QRObject.prafabの加工

Assets > App > PrefabsのQRObject.prafabを複製 ※これ以降の処理は自動で上書きされるため,やり直しがきくよう元データを残すために複製する
複製したものをダブルクリックして,HierarchyとInspectorを表示させる.

coordinateを削除し,ModelContainerの子に当たる位置に3Dモデルを追加する.coordinateが3Dモデルに置き換わるイメージ.

QRObjectのInspectorを開き,必要に応じて3Dモデル表示に関する設定を変える.

  • オブジェクトの原点位置との対応はQR Tracker内のAnchor Pointで変えられる.
  • QRコードの大きさで3Dモデルのスケールを調整したくない場合は,QR Tracker内のScale By Physical Sizeのチェックを外す.

BorderQuad(黄色の枠線)とCanvas>Text(TMP)(QRコードの中身 URLなど)を表示させたくない場合は,削除や無効化をすると3Dモデルも表示されなくなったので,以下のように見えなくさせる.

  • BorderQuad > Mesh Rendererのチェックを外す
  • Canvas > Text(TMP) > TextMeshPro-Text(UI) のチェックを外す

ArbitraryQRTrackingSample.unityのシーン編集

QRObjectSpawnerのInspectorを開く.
QRObjectSpawner > QR Object Prefabを先ほど編集したPrefabに変える.Prefabsフォルダからドラッグアンドドロップすればいい.
頂点:約6000点,面:約3500枚,マテリアル:3つのおさぼり白ピクミン.fbxでは動作が遅いと感じることはなかった.