MRが楽しい

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

MRTK3を使ってMetaQuest3向けのUnityプロジェクト作成を行う(Questへのプラットフォームの切り替え)

本日は MRTK の使い方枠です。
Mixed Reality Feature ToolとMRTK3を使ってMetaQuest3向けのUnityプロジェクト作成を行う手順を記事にします。
今回はプラットフォームの切り替えです。

前回記事

MRTK3の基本的なセットアップ手順はHoloLens2向けアプリと違いありません。
本記事では以下の前回記事で作成したUnityプロジェクトをMetaQuest3向けに変更します。
bluebirdofoz.hatenablog.com

公式マニュアル

MRTK3の公式マニュアルにQuestデバイス向けの構築手順がまとめられています。
learn.microsoft.com

今回はこちらの記事を参考にOpenXRをXRプラグインとして用いてQuestデバイス向けにプロジェクトを切り替えます。

事前準備

UnityからQuestアプリをビルドするには[Android Build Support]内の[Android SDK & NDK Tools]と[OpenJDK]モジュールが必要です。
以下の手順でモジュールを追加できます。
bluebirdofoz.hatenablog.com

自作アプリをQuestにデプロイするため、Questを開発者モードに設定しておく必要があります。
以下の手順でQuest3でも開発者モードを有効化できます。
bluebirdofoz.hatenablog.com

プラットフォームの切り替え

ターゲットプラットフォームをAndroidに切り替えます。
メニューから[File -> Build Settings]を開き、[Android]を選択して[Switch Platform]で切り替えます。

MRTKProfileの設定

今回はMetaQuestの場合もデフォルトのMRTKProfileを利用します。
メニューから[Project Settings]を開き、[MRTK]タブの[Android]欄を開きます。

MRTK3のパッケージには予め基本的な設定を行ったデフォルトプロファイルが用意されています。
以下のパッケージフォルダのプロファイルを[Profile]に設定します。

Packages/MRTK Core Definitions/Configuration/Default Profiles/MRTKProfile.prefab


XRプラグインの設定

次に使用するXRプラグインを指定します。
MRTK3は互換性の問題によりOculusXRを使用することは推奨されておらず、OpenXRの使用が推奨されています。
learn.microsoft.com

メニューから[Project Settings]を開き、[XR Plug-in Management]タブの[Android]欄を開きます。
[Initialize XR on Startup]にチェックを入れて[OpenXR]にチェックを入れます。

次にOpenXRで利用する機能を選択するため、[XR Plug-in Management -> OpenXR]タブを開きます。
[Interaction Profiles]に[+]プルダウンから[Microsoft Hand Interaction Profile]を追加します。

[OpenXR Feature Groups]欄で以下を有効化します。
・HandTracking
・MetaQuestSupport
・MotionControllerModel

GLTFインポータ

MRTK3でコントローラモデルを表示したい場合はGLTFインポータをプロジェクトに取り込む必要があります。
以下のGitHubページのリンクからunitypackageをダウンロードします。
github.com

ダウンロードしたInstall-com.atteneder.gltfast-latest.unitypackageをUnityプロジェクトにインポートします。

エラーの修正

OpenXRの有効化に伴い、発生しているエラー/警告を修正します。
[XR Plug-in Management -> Project Validation]を開き、[Fix All]を実行すると自動修復可能な問題が解決されます。

自動修復ができない問題は手動で修正を行います。警告に関しては無視しても問題ありません。

MetaQuest3へのデプロイ

プロジェクトのビルドとMetaQuest3へのデプロイを行います。
PCにQuest3をUSB接続した状態でメニューから[File -> Build Settings]を開きます。

[Run Device]で[Quest 3]を選択し、[Build And Run]を実行します。

MetaQuest3にアプリがデプロイされて起動します。
以下の通り、MRTK3を使ったQuest3向けアプリが作成できました。