本日は MRTK の使い方枠です。
MRTK 2.7 のインポートと HoloLens2 向け基本設定の手順を記事にします。
MRTKとは
MRTK-Unity は Unity でのクロスプラットフォームのMRアプリ開発を支援するための機能セットを提供する Microsoft 主導のプロジェクトです。
・空間的な相互作用と UI に対するクロスプラットフォーム入力システムと構成要素を提供します。
・エディタ内シミュレーションを介したプロトタイピングを可能にし、プロジェクトの変更をすぐに確認できます。
・開発者がコアコンポーネントを交換できるようにする拡張可能なフレームワークとして設計されています。
・幅広いプラットフォームのサポートを含みます。
プラットフォーム | サポートデバイス |
---|---|
OpenXR (Unity 2020.3) | Microsoft HoloLens 2 Windows Mixed Reality ヘッドセット |
Windows Mixed Reality | Microsoft HoloLens Microsoft HoloLens 2 Windows Mixed Reality ヘッドセット |
Oculus (Unity 2019.3 or newer) | Oculus Quest |
OpenVR | Windows Mixed Reality ヘッドセット HTC Vive Oculus Rift |
Ultraleap Hand Tracking | Ultraleap Leap Motion controller |
Mobile | iOS Android |
MRTKのダウンロード
MRTK には以下の3つの取得方法があります。
・Unity Package
・Unity Package Manager
・Mixed Reality Feature Tool
今回は Release ページから Unity Package ファイルを直接取得する手順を紹介します。
github.com
MRTK のパッケージリンクをクリックしてダウンロードします。
2021/07/01 現在、最新のバージョンは v 2.7.2 です。
各パッケージについて
MRTK には以下の5つのパッケージが存在します。
・Foundation:基本パッケージ
・Examples:MRTKの利用サンプルシーンを含むパッケージ
・Tools:便利なツール機能を含むパッケージ
・Extensions:試験中の拡張機能を含むパッケージ
・TestUtilities:テスト用機能を含むパッケージ
必須となるのは Foundation のみです。
その他のパッケージは全てオプションとなります。
プロジェクトの新規作成
Unityプロジェクトの作成
v2.7.2 における MRTK の推奨 Unity バージョンは 2019.4 になります。
Unity を起動して[新しいプロジェクトの作成]を行います。
ビルドターゲットの変更
HoloLens2 向けのアプリケーションを作成する場合はビルドプラットフォームを UWP に変更します。
メニューから[File -> Build Settings]を選択し、[Build Settings]ダイアログを開きます。
[Platform]で[Universal Windows Platform]を選択し、[Switch Platform]を実行します。
パッケージのインポート
利用する Unity Package のインポートを行います。
今回は Microsoft.MixedReality.Toolkit.Unity.Foundation のみインポートします。
Foundation パッケージはインポート完了時に[MRTK Project Configurator]ダイアログが表示されます。
表示されない、または閉じてしまった場合は[Mixed Reality -> Toolkit -> Utilities - Configure Project for MRTK]から開くことができます。
なお、オプションパッケージを利用する場合も必ず Foundation からインポートを行います。
プロジェクトの基本設定
最初に XR パイプラインに[Legacy XR]または[XR SDK]のどちらを利用するか選択します。
今回は最新の[XR SDK]を選択します。
ターゲットデバイス向けのプラグインの要求ダイアログが表示されます。
[Show Settings]をクリックして[Project Settings]ダイアログを開きます。
HoloLens2 向けのアプリケーションを作成する場合は[UWP]タブを開きます。
[Plug-in Providers]内の[Windows Mixed Reality]にチェックを入れます。
目的のビルドターゲットの XR プラグインを指定しているかの確認ダイアログが表示されます。
HoloLens 向けのアプリケーション作成であれば、先ほどの手順通りのチェックをしていれば問題ありません。
プロジェクトの基本設定ダイアログが表示されるので[Apply]をクリックします。
ここでは以下の設定が行われます。
・デフォルトの空間認識レイヤーを作成する
・マイクの権限設定を許可にする
設定が完了すると、確認ダイアログに切り替わるので[Next]をクリックします。
TextMeshPro のインポートダイアログが表示されます。
MRTK では多くの UI に TextMeshPro が利用されているので、ここで[Import TMP Essentials]をクリックしてインポートを行います。
これでプロジェクトの基本設定は完了です。
シーンの基本構成
次に HoloLens2 向けのアプリケーションのシーンの基本構成を設定します。
メニューから[Mixed Reality -> Toolkit -> Add to Scene and Configure..]を選択します。
するとシーンの Hierarchy に以下のゲームオブジェクトが追加されます。
・MixedRealityToolkit
・MixedRealityPlayspace
・MixedRealitySceneContent
Mixed Reality Toolkit:フレームワーク全体の中央構成エントリポイントを提供するツールキットの本体。 MixedRealityPlayspace:ヘッドセットの親オブジェクト。ヘッドセット/コントローラーおよびその他の必要なシステムを管理します。メインカメラはプレイスペースの子オブジェクトとして移動します。 MixedRealitySceneContent:デバイスごとに適切にスケーリングするシーンコンテンツの配置場所。
次に HoloLens2 に最適化されたシーン設定とするため、プロファイルを設定します。
MixedRealityToolkit オブジェクトを選択し、Inspector ビューを開きます。
プルダウンからいくつかのデフォルト設定のプロファイルを選択できます。
XR パイプラインに[XR SDK]を選択しており、かつ、HoloLens2 に最適化されたシーン設定とする場合[ObsoleteHololens2XRSDKConfigurationProfile]を選択します。
[ObsoleteHololens2XRSDKConfigurationProfile]は HoloLens2 向けに最適化されたプロファイルです。
負荷軽減のため、空間メッシュやハンドメッシュが無効化されています。
パッケージ名の変更(オプション)
メニューから[Edit -> Project Settings]を開き、[Player -> UWP -> Publishing Settings]の項目を開きます。
[Package name]の項目をデフォルトの[Template3D]から任意のパッケージ名に変更します。
パッケージ名の変更はアプリの作成において必須の作業ではありません。
しかし、同名のパッケージ名のアプリが存在するとインストール時にアプリを上書きするなどの問題が発生するので変更することを推奨します。
これでMRTK 2.7 のインポートと HoloLens2 向け基本設定は完了です。