MRが楽しい

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

Mixed Reality Toolkit 3 パブリックプレビューのドキュメントを少しずつ読み解く MRTK3のシーンの使用と作成(サンプルシーン)

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

Mixed Reality Toolkit 3 のドキュメント

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

今回は「MRTK3のシーンの使用と作成」のページの「MRTK3 サンプルプロジェクトに同梱されているサンプルシーン」項を実際に確認しつつ読み進めます。
docs.microsoft.com

MRTK3 サンプルプロジェクトに同梱されているサンプルシーン

MRTK3 サンプルプロジェクトの利用手順の詳細は以下の記事を参照ください。
bluebirdofoz.hatenablog.com

本項ではこのサンプルプロジェクトに含まれるサンプルシーンで体験できる機能を紹介しています。

一般的なサンプルシーン

MRTK3 の機能に関するサンプルシーンは以下の Assets フォルダに含まれています。
・Assets/Scenes

ハンドインタラクション(HandInteractionExample.unity)

指さし、タッチ、掴み、両手操作などの様々な手を使った操作 UI の例を体験できます。

境界制御(BoundsControlExamples.unity)

平面化された境界と 3D 境界の両方を BoundsControl を使った様々な構成で表示します。

キャンバス(CanvasExample.unity)

Unity キャンバス上に構築された UX コンポーネントのコレクションを表示します。
これらの UX コンポーネントは XR Interaction Toolkit 上に構築され、完全な XR インタラクションをサポートします。
同時に Canvas でも作成され、マウス、キーボード、ゲームパッドとの従来のインタラクションもサポートします。

ダイアログ(DialogExample.unity)

このシーンではダイアログの使用方法を示します。

視線入力(EyeGazeExample.unity)

視線インタラクタを使用してシーン内のオブジェクトをハイライト表示します。

ハンドメニュー(HandMenuExamples.unity)

手に追従するメニューの使用方法を示します。

対話型ボタン(InteractableButtonExamples.unity)

対話型ボタンの様々なスタイルの例を示します。

近距離メニュー(NearMenuExamples.unity)

近距離メニューの例を示します。

オブジェクトバー(ObjectBarExample.unity)

オブジェクトバーを表示します。
オブジェクトバーはサイズが変化するバックプレートを持つ水平または垂直のスタックに配置されたオブジェクトの動的なコレクションです。

空のサンプルシーン(SampleEmptyMRTKScene.unity)

このシーンにはコア MRTK プレハブ(MRTK XR Rig)と入力シミュレータプレハブ(MRTKInputSimulator)のみが含まれています。
これは開発者にMRTKの必需品のみが含まれたシーンを提供することを目的としています。

スレート描画(SlateDrawingExample.unity)

MRTK3 を使用して簡単な描画アプリケーションを作成する例を示します。

空間マッピング(SpatialMappingExample.unity)

このシーンでは MRTK3 で ARMeshManager(MRTK XR Rig -> ARSpatialMeshManager) を使用して空間メッシュを視覚化する方法を示します。

タブビュー(TabViewExample.unity)

関連付けられたゲームオブジェクトの表示を制御するトグル操作の例を示します。

トグルコレクション(ToggleCollectionExample.unity)

コレクション内の 1 つのトグルだけがアクティブになるように強制する ToggleCollection スクリプトの使用方法を示します。

UIバックプレート(UIBackplateExample.unity)

このシーンでは様々なタイプの UI パネルとメニューを構築するために使用できる UIBackplate.prefab を示します。

UIテストシート(UITearSheet.unity)

このシーンでは MRTK で使用可能な全ての UI 構成要素とその配列を示します。
全てのコントロールは新しい Mixed Reality デザイン言語に基づいています。

データバインディングとテーマ設定のサンプルシーン

MRTK3 サンプルプロジェクトの以下に同梱されているデータバインディングとテーマ設定のサンプルシーンを紹介します。
・Assets\UX Theming Example\Scenes
・Assets\DataBinding Example\Scenes


事前準備

UX Theming Example のサンプルシーンを試す場合は事前に以下の Script Define Symbols を追加しておく必要があります。

MRTK_UX_DATABINDING_THEMING_ENABLED

メニューから[Edit -> Project Settings]を開き、[Player]タブを開きます。

[Other Settings]パネルを開き、[Script Define Symbols]に MRTK_UX_DATABINDING_THEMING_ENABLED を追加します。

オーディオテーマ(Assets\UX Theming Example\Scenes\AudioTheming.unity)

データバインディングとテーマを使用して仮想キーボードのサウンドを変更します。

バッテリーレベル(Assets\UX Theming Example\Scenes\BatteryLevelExample.unity)

データバインディングを使用してバッテリレベル表示を更新します。

UXコアの外観(Assets\UX Theming Example\Scenes\CoreUXThemingExample.unity)

データバインディングとテーマを使用して UX コアコンポーネントの外観を制御します。

データバインド(Assets\DataBinding Example\Scenes\DataBindingExamples.unity)

データバインディングとテーマを使用してデータソースにバインドする方法を示します。