
Unity6×メタクエスト開発出来るまでに詰まった所

同じところで詰まる人の時間を少しでも短縮出来たらと思い、詰まったところと解決策を紹介。
環境
- Unity6
- メタクエスト3
- Windows
メタクエストにアプリビルド出来るようにする
Meta Quest SDKのインストール
「Meta Quest SDK」このリンクに飛ぶと下記のサイトに飛ぶのですが、
みなさんも(Deprecated=非推奨)という部分が気になると思います。
しかし、安心してこれをUnityに追加するので大丈夫です。

環境構築をしていく中で、このアセットが古いので更新してくださいというようなポップアップが出てきて更新できます。
※下記は、そのポップアップの内容
Some of this projects source files refer to API that has changed. These can be automatically updated. It is recommended to have a backup of the project before updating. Do you want these files to be updated?
Assets/Oculus/VR/Scripts/Util/OVRGrabbable.cs
Assets/Oculus/Interaction/Samples/Scripts/RespawnOnDrop.cs
Assets/Oculus/Interaction/Samples/Scripts/UseGrabPressure/PressureBreakable.cs
Assets/Oculus/Interaction/Samples/Scripts/AudioPhysics.cs
Assets/Oculus/Interaction/Editor/AutoWiring/UnityObjectAd...
(For the full message, see the editor log file)
Unityプロジェクトの設定
ビルド設定など、色々変更しないといけないのですが、ChatGPTが言う下記の項目がどこにあるかわからず少し探してしまいましたが、大体は検索すればすぐに見つかります。
File > Build SettingsからプラットフォームをAndroidに変更。
Player Settingsで以下の設定を行います:
- Other Settings > Minimum API LevelをAndroid 7.0 (API level 24) 以上に設定。
- Graphics APIはVulkanを外してOpenGLES3を使用。
- Virtual Reality SDKsにOculusが含まれていることを確認。

中には、下記のように検索対象外のものもあるので、そこは頑張って見つけるしかありませんでした。

開発者モードを有効化する
私はこの作業には、Androidのスマートフォンが必須だと読み違えていましたが、
PCからでも出来るみたいなので、安心してください。
開発者アカウントを作成する
Meta for Developersにて、アカウントを作成してください。
企業名などの入力が必要ですが、存在しない企業名でも大丈夫なので心置きなく作成してください。
※一つのメタクエスト機器に一つの開発者アカウントしか入れられません
Oculus Developer Hub(ODH)を導入
PCでやる場合はODHをダウンロードして導入してください。
下記のような見た目のソフトになります。とてもかっこいい。

メタクエストで最低限アプリが動くようにする
VR/MR用のカメラ(OVRCameraRig)をUnityシーンに設置
デフォルトで配置しているMainCameraでは、メタクエストでアプリが立ち上がった瞬間にアプリが応答していませんという表示が出てしまいます。
カメラを消して、専用のカメラを設定しましょう。
Assets > Oculus > VR > PrefabsフォルダからOVRCameraRigをシーンにドラッグ&ドロップします。
これだけでデフォルトのカメラ周りの動きは完了です。
下記は、プレハブの中身です。

ビルド設定にて、自作したシーンをビルド対象に含める
これはVRというよりUnity初心者向けの内容です。
ここの設定をなにもいじってないとサンプルシーンだけビルドされますので、なにもないスカイボックスだけのシーンが目の前に広がる形になります。
赤矢印のところをクリックして、ビルトに含めるシーンを選択してください。
ここまでで、ようやくカメラが頭の動きや体の動きについてきてくれるようになります。
スマホアプリ用に作っていたUIが表示されない
Canvasで作っていたUIが丸ごと表示されず、困りましたが、
FlatUnityCanvasというプレハブを使うとUI作成が出来ます。
EventSystemというコンポーネントが2つ存在するとエラーが出るので、元のCanvasで作っていた方を削除して実行すると無事エラーが消えてUIが表示されます。

激励の言葉
みなさんもイメージは湧くと思いますが、
物理的な機材(今回だとメタクエスト)が増えるとやることは多いですが、難易度とは比例しません。
私はChatGPTに聞きながら進めていって、
わからないところは同期に教えてもらったりして無事成し遂げました。
この記事がみなさんの一助となることを願います。
制作のご依頼・ご相談はこちらから