Mixed Reality Toolkit (MRTK) は、Mixed Realityハードウェアとプラットフォームのサポートを提供することで、クロス プラットフォームMixed Realityアプリケーション開発を可能にするパッケージのコレクションです。
MRTK は、アセット (.unitypackage) パッケージとして、Unity パッケージ マネージャーを使用して使用できます。
資産パッケージ
MRTK アセット (.unitypackage) は 、GitHub からダウンロードできます。
資産パッケージを使用する利点には、次のようなものがあります。
- Unity 2018.4 以降で利用可能
- MRTK への変更が簡単
- MRTK は Assets フォルダーにあります
課題の一部を次に示します。
- MRTK はプロジェクトの Assets フォルダーの一部であり、
- 大規模なプロジェクト
- コンパイル時間が遅い
- 依存関係管理なし
- お客様は、パッケージの依存関係を手動で解決する必要があります
- 手動更新プロセス
- 複数ステップ
- 大きい (3000 以上のファイル) ソース管理の更新プログラム
- MRTK に加えられた変更が失われるリスク
- サンプル パッケージをインポートすることは、通常、すべての例を含めることを意味します
使用可能なパッケージは次のとおりです。
これらのパッケージは、 GitHub のソース コードから Microsoft によってリリースおよびサポートされています。
Foundation パッケージ
Mixed Reality Toolkit Foundation は、アプリケーションがMixed Reality プラットフォーム全体で共通の機能を利用できるようにするコードのセットです。
MRTKファンデーションパッケージ
MRTK Foundation パッケージには、次のものが含まれています。
| フォルダー | コンポーネント | 説明 |
|---|---|---|
| MRTK/Core | インターフェイスと型の定義、基底クラス、標準シェーダー。 | |
| MRTK/Core/Providers | プラットフォームに依存しないデータ プロバイダー | |
| 手 | 手の追跡のための基底クラスのサポートとサービス。 | |
| InputAnimation | ヘッドの動きと手の追跡データの記録をサポートします。 | |
| InputSimulation | 手と目の入力のエディター内シミュレーションのサポート。 | |
| ObjectMeshObserver | 3D モデルをデータとして使用する空間認識オブザーバー。 | |
| UnityInput | Unityの入力 API を介して実装された一般的な入力デバイス (ジョイスティック、マウスなど)。 | |
| MRTK/プロバイダー | プラットフォーム固有のデータ プロバイダー | |
| LeapMotion | UltraLeap Leap Motion コントローラーのサポート。 | |
| OpenVR | OpenVR デバイスのサポート。 | |
| Oculus | Quest などの Oculus デバイスのサポート。 | |
| UnityAR | (試験段階)モバイル AR デバイスで MRTK を使用できるようにするカメラ設定プロバイダー。 | |
| WindowsMixedReality | Microsoft HoloLensヘッドセットやイマーシブ ヘッドセットなど、Windows Mixed Reality デバイスのサポート。 | |
| Windows | 音声やディクテーションなど、Microsoft Windows 固有の API のサポート。 | |
| XR SDK | (試験段階)Unity 2019.3 以降でのUnityの新しい XR フレームワークのサポート。 | |
| MRTK/SDK | ||
| 実験 | シェーダー、ユーザー インターフェイス コントロール、個々のシステム マネージャーなど、実験的な機能。 | |
| 機能 | Foundation パッケージに基づく機能。 | |
| プロファイル | Microsoft Mixed Reality Toolkit のシステムとサービスの既定のプロファイル。 | |
| StandardAssets | 一般的な資産。モデル、テクスチャ、マテリアルなど。 | |
| MRTK/SceneSystemResources | シーン システムで使用される資産とリソース | |
| MRTK/サービス | ||
| BoundarySystem | VR 境界サポートを実装するシステム。 | |
| CameraSystem | カメラの構成と管理を実装するシステム。 | |
| DiagnosticsSystem | ビジュアル プロファイラーなど、アプリケーション 診断で実装するシステム。 | |
| InputSystem | ユーザー入力へのアクセスと処理をサポートするシステム。 | |
| SceneSystem | マルチシーン アプリケーションのサポートを提供するシステム。 | |
| SpatialAwarenessSystem | ユーザーの環境を認識するためのサポートを提供するシステム。 | |
| TeleportSystem | テレポートのサポートを提供するシステム (ジャンプでのエクスペリエンスの移動)。 | |
| MRTK/StandardAssets | MRTK Standard シェーダー、基本素材、および Mixed Reality エクスペリエンス用のその他の標準資産 |
拡張機能パッケージ
省略可能な Microsoft.MixedRealityToolkit。Unity。拡張機能パッケージには、Microsoft Mixed Reality Toolkit の機能を拡張する追加のサービスが含まれています。
注:
拡張機能パッケージには、Microsoft.MixedRealityToolkit が必要です。Unity。財団。
| フォルダー | コンポーネント | 説明 |
|---|---|---|
| MRTK/拡張機能 | ||
| HandPhysicsService | 多関節ハンドに物理サポートを追加するサービス。 | |
| LostTrackingService | Microsoft HoloLens デバイスでの追跡損失の処理を簡略化するサービス。 | |
| SceneTransitionService | スムーズなシーン遷移の追加を簡略化するサービス。 |
ツール パッケージ
省略可能な Microsoft.MixedRealityToolkit。Unity。ツール パッケージには、Microsoft Mixed Reality Toolkit を使用して Mixed Reality 開発エクスペリエンスを強化する便利なツールが含まれています。 これらのツールは、Unity エディターの [Mixed Reality ツールキット > ユーティリティ] メニューにあります。
注:
ツール パッケージには Microsoft.MixedRealityToolkit が必要です。Unity。財団。
| フォルダー | コンポーネント | 説明 |
|---|---|---|
| MRTK/Tools | ||
| BuildWindow | UWP アプリケーションを構築および展開するプロセスを簡略化するのに役立つツール。 | |
| DependencyWindow | プロジェクト内の資産の依存関係グラフを作成するツール。 | |
| ExtensionServiceCreator | 拡張機能サービスの作成を支援するウィザード。 | |
| MigrationWindow | 非推奨の MRTK コンポーネントを使用するコードの更新を支援するツール。 | |
| OptimizeWindow | Unityで最適なパフォーマンスを得るために Mixed Reality プロジェクトの構成を自動化するのに役立つユーティリティ。 | |
| ReserializeAssetsUtility | 特定のUnity ファイルの再初期化のサポートを提供します。 | |
| RuntimeTools/Tools/ControllerMappingTool | 開発者がハードウェア コントローラーのUnityマッピングをすばやく判断できるようにするユーティリティ。 | |
| ScreenshotUtility | Unity エディターでアプリケーション イメージのキャプチャを有効にします。 | |
| TextureCombinerWindow | グラフィックス テクスチャを結合するためのユーティリティ。 | |
| ツールボックス | MRTK UX コンポーネントを簡単に検出して使用できるようにする UI。 |
テスト ユーティリティ パッケージ
オプションの Microsoft.MixedRealityToolkit.TestUtilities パッケージは、開発者が プレイ モード テストを簡単に作成できるようにするヘルパー スクリプトのコレクションです。 これらのユーティリティは、MRTK コンポーネントを作成する開発者に特に役立ちます。
| フォルダー | コンポーネント | 説明 |
|---|---|---|
| MRTK/テスト | ||
| TestUtilities | ハンド シミュレーション ユーティリティを含む、プレイ モード テストの作成を簡略化する方法。 |
サンプル パッケージ
examples パッケージには、基礎パッケージの機能を実行するデモ、サンプル スクリプト、サンプル シーンが含まれています。 このパッケージには HandInteractionExample シーン (下図) が含まれています。これには、さまざまな種類の手入力 (多関節および非関節) に応答するサンプル オブジェクトが含まれています。
このパッケージには、視線追跡のデモも含まれています。ここに 記載されています
より一般的には、MRTK の新機能には、同じフォルダー構造と場所にほぼ従って、サンプル パッケージに対応する例が含まれている必要があります。
注:
サンプル パッケージには Microsoft.MixedRealityToolkit が必要です。Unity。財団。
| フォルダー | コンポーネント | 説明 |
|---|---|---|
| MRTK/例 | ||
| デモ | 1 つまたは 2 つの関連する機能を示す単純なシーン。 | |
| 実験 | 試験的な機能を示すデモ シーン。 | |
| StandardAssets | 複数のデモ シーンで共有される一般的な資産。 |
Unity パッケージ マネージャー
Unity 2019.4 以降を使用して作成されるエクスペリエンスについては、Unity パッケージ マネージャーを使用して MRTK を使用できます。
資産パッケージを使用する利点には、次のようなものがあります。
- 小さいプロジェクト
- クリーナー Visual Studio ソリューション
- チェックするファイルの数を減らします (MRTK は、
Packages/manifest.jsonファイル内の単純な参照です)
- コンパイルの高速化
- Unityビルド中に MRTK を再コンパイルする必要はありません
- 依存関係の解決
- 必要な MRTK パッケージは、依存関係を持つパッケージを指定するときに自動的にインストールされます
- 新しい MRTK バージョンへの簡単な更新
-
Packages/manifest.jsonファイルのバージョンを変更する
-
課題の一部を次に示します。
- MRTK は不変です
- パッケージの解決中に削除せずに変更を加えることはできません
- MRTK では、Unity 2018.4 の UPM パッケージはサポートされていません
Foundation パッケージ
foundation パッケージ (com.microsoft.mixedreality.toolkit.foundation) は、Mixed Reality Toolkit の基礎を形成します。
| フォルダー | コンポーネント | 説明 |
|---|---|---|
| MRTK/Core | インターフェイスと型の定義、基底クラス、標準シェーダー。 | |
| MRTK/Core/Providers | プラットフォームに依存しないデータ プロバイダー | |
| 手 | 手の追跡のための基底クラスのサポートとサービス。 | |
| InputAnimation | ヘッドの動きと手の追跡データの記録をサポートします。 | |
| InputSimulation | 手と目の入力のエディター内シミュレーションのサポート。 | |
| ObjectMeshObserver | 3D モデルをデータとして使用する空間認識オブザーバー。 | |
| UnityInput | Unityの入力 API を介して実装された一般的な入力デバイス (ジョイスティック、マウスなど)。 | |
| MRTK/プロバイダー | プラットフォーム固有のデータ プロバイダー | |
| LeapMotion | UltraLeap Leap Motion コントローラーのサポート。 | |
| OpenVR | OpenVR デバイスのサポート。 | |
| Oculus | Quest などの Oculus デバイスのサポート。 | |
| UnityAR | (試験段階)モバイル AR デバイスで MRTK を使用できるようにするカメラ設定プロバイダー。 | |
| WindowsMixedReality | Microsoft HoloLensヘッドセットやイマーシブ ヘッドセットなど、Windows Mixed Reality デバイスのサポート。 | |
| Windows | 音声やディクテーションなど、Microsoft Windows 固有の API のサポート。 | |
| XR SDK | (試験段階)Unity 2019.3 以降でのUnityの新しい XR フレームワークのサポート。 | |
| MRTK/SDK | ||
| 実験 | シェーダー、ユーザー インターフェイス コントロール、個々のシステム マネージャーなど、実験的な機能。 | |
| 機能 | Foundation パッケージに基づく機能。 | |
| プロファイル | Microsoft Mixed Reality Toolkit のシステムとサービスの既定のプロファイル。 | |
| StandardAssets | 一般的な資産。モデル、テクスチャ、マテリアルなど。 | |
| MRTK/サービス | ||
| BoundarySystem | VR 境界サポートを実装するシステム。 | |
| CameraSystem | カメラの構成と管理を実装するシステム。 | |
| DiagnosticsSystem | ビジュアル プロファイラーなど、アプリケーション 診断で実装するシステム。 | |
| InputSystem | ユーザー入力へのアクセスと処理をサポートするシステム。 | |
| SceneSystem | マルチシーン アプリケーションのサポートを提供するシステム。 | |
| SpatialAwarenessSystem | ユーザーの環境を認識するためのサポートを提供するシステム。 | |
| TeleportSystem | テレポートのサポートを提供するシステム (ジャンプでのエクスペリエンスの移動)。 |
依存関係:
- Standard資産 (
com.microsoft.mixedreality.toolkit.standardassets)
Standardアセット
標準資産パッケージ (com.microsoft.mixedreality.toolkit.standardassets) は、次のようなすべての Mixed Reality エクスペリエンスに推奨されるコンポーネントのコレクションです。
- MRTK Standard シェーダー
- MRTK Standard シェーダーを使用した基本的なマテリアル
- オーディオ ファイル
- フォント
- テクスチャ
- アイコン
注:
アセンブリ定義に基づく破壊的変更を回避するために、MRTK Standard シェーダーの一部の機能を制御するために使用されるスクリプトは、標準アセット パッケージに含まれていません。 これらのスクリプトは、 MRTK/Core/Utilities/StandardShader フォルダーの foundation パッケージにあります。
依存関係: なし
拡張機能パッケージ
オプションの拡張機能パッケージ (com.microsoft.mixedreality.toolkit.extensions) には、MRTK の機能を拡張する追加のコンポーネントが含まれています。
| フォルダー | コンポーネント | 説明 |
|---|---|---|
| MRTK/拡張機能 | ||
| HandPhysicsService | 多関節ハンドに物理サポートを追加するサービス。 | |
| LostTrackingService | Microsoft HoloLens デバイスでの追跡損失の処理を簡略化するサービス。 | |
| SceneTransitionService | スムーズなシーン遷移の追加を簡略化するサービス。 | |
| サンプル~ | サンプル シーンとアセットを含む非表示 (Unity エディター内) フォルダー。 |
サンプル プロジェクトを含むパッケージを使用するプロセスの詳細については、Mixed Reality ツールキットとパッケージ マネージャーに関する記事Unity参照してください。
依存関係:
- Foundation (
com.microsoft.mixedreality.toolkit.foundation)
ツール パッケージ
オプションのツール パッケージ (com.microsoft.mixedreality.toolkit.tools) には、Mixed Reality エクスペリエンスの作成に役立つツールが含まれています。 一般に、これらのツールはエディター コンポーネントであり、そのコードはアプリケーションの一部として出荷されません。
| フォルダー | コンポーネント | 説明 |
|---|---|---|
| MRTK/Tools | ||
| BuildWindow | UWP アプリケーションを構築および展開するプロセスを簡略化するのに役立つツール。 | |
| DependencyWindow | プロジェクト内の資産の依存関係グラフを作成するツール。 | |
| ExtensionServiceCreator | 拡張機能サービスの作成を支援するウィザード。 | |
| MigrationWindow | 非推奨の MRTK コンポーネントを使用するコードの更新を支援するツール。 | |
| OptimizeWindow | Unityで最適なパフォーマンスを得るために Mixed Reality プロジェクトの構成を自動化するのに役立つユーティリティ。 | |
| ReserializeAssetsUtility | 特定のUnity ファイルの再初期化のサポートを提供します。 | |
| RuntimeTools/Tools/ControllerMappingTool | 開発者がハードウェア コントローラーのUnityマッピングをすばやく判断できるようにするユーティリティ。 | |
| ScreenshotUtility | Unity エディターでアプリケーション イメージのキャプチャを有効にします。 | |
| TextureCombinerWindow | グラフィックス テクスチャを結合するためのユーティリティ。 | |
| ツールボックス | MRTK UX コンポーネントを簡単に検出して使用できるようにする UI。 |
依存関係:
- Foundation (
com.microsoft.mixedreality.toolkit.foundation)
テスト ユーティリティ パッケージ
オプションのテスト ユーティリティ パッケージ (com.microsoft.mixedreality.toolkit.testutilities) には、開発者がプレイ モード テストを簡単に作成できるようにするヘルパー スクリプトのコレクションが含まれています。 これらのユーティリティは、MRTK コンポーネントを作成する開発者に特に役立ちます。
| フォルダー | コンポーネント | 説明 |
|---|---|---|
| MRTK/テスト | ||
| TestUtilities | ハンド シミュレーション ユーティリティを含む、プレイ モード テストの作成を簡略化する方法。 |
依存関係:
- Foundation (
com.microsoft.mixedreality.toolkit.foundation)
サンプル パッケージ
examples パッケージ (com.microsoft.mixedreality.toolkit.examples) は、開発者が目的の例のみをインポートできるように構成されています。
サンプル プロジェクトを含むパッケージを使用するプロセスの詳細については、Mixed Reality ツールキットとパッケージ マネージャーに関する記事Unity参照してください。
| フォルダー | コンポーネント | 説明 |
|---|---|---|
| MRTK/例 | ||
| サンプル~ | サンプル シーンとアセットを含む非表示 (Unity エディター内) フォルダー。 | |
| StandardAssets | 複数のデモ シーンで共有される一般的な資産。 |
依存関係:
- Foundation (
com.microsoft.mixedreality.toolkit.foundation) - 拡張機能 (
com.microsoft.mixedreality.toolkit.extensions)