MRが楽しい

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

Mixed Reality Toolkit 3 パブリックプレビューのドキュメントを少しずつ読み解く 初期セットアップ(手順2:MRTK パッケージを追加する)

本日は Mixed Reality Toolkit 3 の調査枠です。
Mixed Reality Toolkit 3 パブリックプレビューのドキュメントを少しずつ翻訳しつつ読み進めていきます。

Mixed Reality Toolkit 3 のドキュメント

以下のドキュメントを読み進めていきます。
docs.microsoft.com

今回は「MRTK3 の初期セットアップ」のページの「手順2:MRTK3 を新しい Unity プロジェクトに追加する」項を実際に試しつつ読み進めます。
docs.microsoft.com

前回記事

以下の前回記事の続きです。
bluebirdofoz.hatenablog.com

手順2:MRTK3 を新しい Unity プロジェクトに追加する

1.新しい Unity プロジェクトを作成する

Unity (2020.3.35f1 以降 / 2021.3.4f1 以降) で新しい Unity プロジェクトを作成します。

次のステップに進む前に Unity プロジェクトを閉じてください。

2.必要な依存関係と MRTK3 パッケージを Mixed Reality Feature Tool でインポートする

Mixed Reality Feature Tool を使って MRTK3 をプロジェクトにインポートします。
最新の Mixed Reality Feature Tool の取得方法と MRTK3 を参照する設定の詳細は以下のページを参照ください。
bluebirdofoz.hatenablog.com

[Select project]ページで先ほど作成した Unity プロジェクトを選択します。

[Discover Features]ステップで必要なパッケージを選択します。
[MRTK3]の欄から必要な MRTK3 のパッケージを選択します。必要なパッケージが不明な場合は全て選択して問題ありません。

各パッケージの詳細については[MRTK3 パッケージの使用]ページで情報を参照できます。
可能であればプロジェクトに必要なものを選択してください。
docs.microsoft.com

MRTK3 が使用するパッケージにはこのプレビュー以外のパッケージがいくつかあります。
次の最新バージョンを選択してください。
・Platform Support -> Mixed Reality OpenXR Plugin
・Spatial Audio -> Microsoft Spatializer(任意)

パッケージの選択が完了したら[Get Features]をクリックします。

Mixed Reality Feature Tool が自動で依存関係をチェックし、必要なパッケージがあれば[Required dependencies]に追加してくれます。
対象のパッケージを確認して[Import]ボタンをクリックします。

最後に実際に Unity プロジェクトに反映される package.json とダウンロードファイルが表示されます。
[approve]ボタンをクリックすると、選択したパッケージが Unity プロジェクトにインポートされます。

3.Unity プロジェクトを開く

Unity プロジェクトを再び開き、新しく追加されたパッケージのインポートを完了するのを待ちます。
このプロセスでは 2 つのポップアップが表示されます。

1.最初のポップアップは新しい入力バックエンドを有効にするかを尋ねます。必ず yes を押してください。

2.次のポップアップは XR InteractionLayerMask を更新するかを尋ねます。[No Thanks]を押してください。

Unity はこのプロセスで数回再起動することがあります。
全てのプロセスが完了するまで待ってから続行してください。

4.MRTK プロファイルの設定を行う

MRTK3 をインポートしたら各ターゲットプラットフォーム用にプロファイルを設定する必要があります。
以下に設定手順を示します。

1.メニューから[Edit -> Project Settings]を開きます。

2.[Project Settings]内の[MRTK3]項目に移動して[Standalone]タブに切り替えます。
[Profile]は初期状態では指定されていないことに注目してください。

3.コアパッケージと共に取得されている既存の MRTK プロファイルを[Profile]フィールドに設定します。
プロジェクトウィンドウの検索バーから[All]を対象にして、キーワード[MRTKprofile]と入力するとプロファイルが見つかります。

または以下のフォルダからプロファイルを直接見つけることができます。
Packages/MRTK Core Definitions/Configuration/Default Profiles/MRTKProfile.asset

表示される MRTK サブシステムはプロジェクトに追加した MRTK3 パッケージによって異なる場合があります。

4.これをドラッグして[Profile]に設定します。

5.その他、使用するビルドターゲット(UWP、Androidなど)のタブに切り替えてプロファイルが割り当てられているかを確認して同様の設定を行います。
HoloLens 2 を対象にする場合は[UWP(Universal Windows Platform)]のタブで同様の作業を行います。


5.OpenXR 関連の設定を行う

MRTK3 では HoloLens 2 や Quest などの XR デバイスをターゲットにしている場合 OpenXR での構成が必要です。

本ページの手順は HoloLens 2 または WMR ヘッドセットに適用されるものを紹介します。
Quest をターゲットにする場合は以下の[Questへのデプロイ]ページの手順を参照してください。
docs.microsoft.com

1.メニューから再び[Edit > Project Settings]を開きます。

2.[Project Settings]内の[XR Plug-in Management]項目に移動します。

[Standalone]タブと[UWP]タブのそれぞれで以下の設定を行います。

[Standalone]タブ

以下の項目を有効にします。
・[OpenXR]
・[Initialize XR on Startup]
・[Windows Mixed Reality feature group under Standalone]

[UWP]タブ

以下の項目を有効にします。
・[OpenXR]
・[Initialize XR on Startup]
・[Microsoft HoloLens feature group under UWP]

OpenXR オプションをチェックした後、黄色の警告アイコンが表示されることがあります。
そのアイコンをクリックして OpenXR プロジェクト検証ツールを開きます。
[fix all]をクリックし、自動修正できない相互作用プロファイルの問題を無視します。


3.[Project Settings]内の[XR Plug-in Management -> OpenXR -> Interaction Profiles]項目に移動します。
[Standalone]と[UWP]用に次の 3 つのプロファイルを追加します。

・Eye Gaze Interaction Profile
Microsoft Hand Interaction Profile
Microsoft Motion Controller Profile


OpenXR プロジェクト検証ツールを使用して黄色の三角形を削除する必要がある場合があります。

4.HoloLens 2 では[Depth Submission Mode]の設定で[Depth 16 Bit(16 ビットの深度送信)]を使用することをお勧めします。
WMR ヘッドセットの場合は[Depth 24 Bit(24 ビット深度送信)]を使用できます。
詳細については[Unity で推奨される設定]ドキュメントの[深度バッファーの共有を有効にする]項を参照してください。
docs.microsoft.com

6.プロジェクトのセットアップはこれで完了です

[MRTK3 でのシーンの使用と作成]ドキュメントの[MRTK3 を使用した新しいシーンの作成]項に進んでください。
docs.microsoft.com