tks_yoshinagaの日記

KinectやLeap motion, VRやARなどの技術を使ってやったことのメモとか

MetaQuestのパススルー機能を使ったAR表示

0. 本記事の内容

本記事ではMeta Questで3Dオブジェクト(立方体)をAR表示するまでの手順を紹介します。
GitHubで公開しているサンプルの01-ShowObject-ARシーンでも動作を確認できます。

 

なお本記事は下記で作成したシーン編集してAR化します。まずはこちらをお読みください。ただし既にMeta XR SDKを使ったVRのシーンをお持ちの場合は下記記事の確認は不要です。

 

1. シーンを複製

前回の記事で作成したシーンを編集することも可能ですが、これを壊さずにAR化を試すためシーンを複製します。不要な場合は読み飛ばしてください。

  • AR化したいシーンを開く
  • File -> Save As... をクリックして現在のシーンを新しい名前で保存
    *本記事ではShowObject-ARとします
  • Hierarchyに表示されるシーン名がShowObject-ARになっていることを確認

 

2. パススルーを有効にしてAR表示

  • Hierarchy内でOVRCameraRigInteractionオブジェクトの子要素のOVRCameraRigを選択
  • Inspectorに表示されるOVRCameraRigの詳細情報の中からOVRManagerを見つける
  • Quest Featuresの項目の中のPassthrough SupportSupportedまたはRequiredに変更
  • Insight Passthrough項目の中のEnable PassthroughのチェックをONにする

     

 

ここまでの操作でパススルーの機能そのものはONになります。だたしこのままではパススルー映像は表示されないため、下記の手順で映像を表示するためのレイヤーを追加します。

  • OVRCameraRigのInspectorの一番下のAdd Componentをクリック
  • 検索エリアでPassthroughで検索
  • OVRPassthroughLayerをクリック
  • Inspectorに追加されたOVRPassthroughLayerの中のPlacementをUnderlayに変更

     

 

3. カメラの背景設定

上記の手順でパススルー表示の準備は概ね整いましたが、実はこのままビルドしてもSkyboxしか表示されずAR化されません。最後にカメラの背景描画設定を変更してカメラの映像を表示できるようにします。

  • Hierarchy内でOVRCameraRigの子要素のTrackingSpaceを開く
  • TrackingSpaceの子要素のCenterEyeAnchorを選択

     

  • Inspector内でCameraを見つけBackgroundTypeをSkyboxからSolid Colorに変更
  • Backgroundの項目で色をRGBA全て0に変更
    *特にAを0にして透過させることが重要

 

4. 動作確認

[実機にインストールする場合]

  • QuestとPCをUSBケーブルで接続
  • Unity EditorでFile -> Build Settingsをクリック
  • Build And Runをクリック
  • インストーラ(apk)名を半角英数で設定して保存
  • インストーラの生成とインストールが終わると自動的にQuest内でアプリが起動します。
  • 立方体が目の前に表示されるはずです。目の前とは異なる方角に表示される場合は右コントローラのmeta (oculus)ボタンを長押しして方位をリセットしてください
  • インストールでエラーが出る場合は設定を見直すか、一度Buildでapkだけ作成してSideQuestMetaQuestDeveloperHubからアプリをインストールしてください。

 

[Meta Quest Linkを使用する場合(Windows)]

詳細は公式ページをご覧ください。

  • QuestとPCをUSBケーブルで接続
  • Quest内でQuest Linkを起動
  • Unity EditorのPlayボタンをクリック
  • 立方体が目の前に表示されるはずです。目の前とは異なる方角に表示される場合は右コントローラのmeta (oculus)ボタンを長押しして方位をリセットしてください

 

5. Meta XR SDKに関する記事一覧はこちら