Unityのこの画面をMetaQuestで見られるようにする

新規プロジェクト作成とMetaXR SDKの適用
まず,Unityで新規プロジェクトを作成する.テンプレートはUniversal 3Dで,プロジェクト名や保存場所,クラウドに接続するか否かは任意.
File > Build Profiles
左のPlatforms欄から Androidをクリックし,「Switch Platform」をクリック.

MetaQuest関連のアセットを追加
ブラウザから以下にアクセスし,「Add to My Assets」をクリック.All in oneもあるが,ここでは最低限個別でダウンロードする.
- Meta XR Core SDK https://assetstore.unity.com/packages/tools/integration/meta-xr-core-sdk-269169
- Meta XR Interaction SDK https://assetstore.unity.com/packages/tools/integration/meta-xr-interaction-sdk-265014
Unityに戻り,Window > Package Manager
「My Assets」を選択し,先ほどダウンロードしたMeta XR Core SDKとMeta XR Interaction SDKが表示されるか確認.
「Install」をクリックして待つ.

プロジェクトの再起動を求められたら再起動する.また,OVR Handの更新が求められたらOKを選択する.


このポップアップが出たら,「Fix All」を押しても問題ないが,後ほどまとめてFixするのでここでは「×」を押してもいい.

Unity OpenXRプラグインをインストール
Edit > Project Settings
XR Plugin Managementをクリックし,「Install XR Plugin Management」をクリック

XR Plugin Managementをクリックし,Android を選択して「Open XR」をチェック ※Linkを使う場合はPC も同様に設定

MetaXRのFix
アプリをビルドするにおいていくつか修正すべき箇所が生じるため,自動修正する.
Meta XR Tools > Project Setup Tool を開き,Checklistにある「Fix All」をクリック.その下のRecommended ItemsをApplyするかは任意.


Unityのシーン編集
まず,Main Cameraを削除する.
Hierarchyの空いたところを右クリックし,Interaction SDK > Add OVR Interaction Rigを追加.これがカメラにあたる.
OVRCameraRigがない場合Fixで作成される(作成しないと「Create」が選択できない).
Smooth Locomotionはチェックしない(カメラ挙動がおかしくなるときがあるらしい).


さらに,Hierarchyの空いたところを右クリックし,3D Object > Cubeを追加.
プロジェクトのビルド
PCとMetaquestを接続していないとビルドできない.
USBケーブルで接続した後,Metaquest側で「USBが検知されました」の通知をクリックしないと認識されないので注意.PCの「デバイスとドライブ」に「Quest3」が表示されていれば接続できている.


File > Build Profiles
左のPlatforms欄からScene Listを選択し,「Add Open Scenes」をクリックし,Scenes In Build欄に編集したシーンを追加する.

「Build And Run」をクリック.apkファイル名と保存場所は任意でいい.1回目はビルドに時間がかかるが,2回目以降はすぐに終わる.

ビルドが完了したらMetaQuestを装着.アプリが自動で立ち上がり,Unityの画面が見える.
コントローラーや手が視界に入るとそれらを認識していること,首を動かしても立方体は動かず,視点がリンクしていることが分かる.
アプリを再度起動させたい場合は,Metaquest内でライブラリ > 提供元不明から開ける.
デフォルトではUnityのプロジェクト名と同じアプリ名になっている.変えたい場合や1つのプロジェクトから複数のアプリを出力したい場合はUnity+MetaQuestのTips 2. 1つのプロジェクトで複数のアプリを出力を参照.
