境界システムは、Mixed Reality アプリケーションでの Virtual Reality 境界コンポーネントの視覚化をサポートします。 境界は、ユーザーが VR ヘッドセットを装着しているときに安全に移動できる領域を定義します。 境界は、ユーザーが VR ヘッドセットを装着しているときに見えない障害を回避するのに役立つ、Mixed Reality エクスペリエンスの重要なコンポーネントです。
多くの Virtual Reality プラットフォームでは、ユーザーまたはコントローラーが境界に近づくと、仮想世界に重ね合わせた白いアウトラインなど、自動表示が提供されます。 Mixed Realityツールキットの境界システムは、この機能を拡張して、追跡領域の輪郭、床面、およびユーザーに追加情報を提供するために使用できるその他の機能を表示できるようにします。
はじめに
境界のサポートを追加するには、境界システムと境界を使用して構成された Virtual Reality プラットフォームという 2 つの主要なコンポーネントMixed Reality Toolkit が必要です。
境界システムを有効にする
境界システムは、MixedRealityToolkit オブジェクト (または別の サービス レジストラー コンポーネント) によって管理されます。
次の手順では、MixedRealityToolkit オブジェクトの使用を前提とします。 他のサービス レジストラーに必要な手順は異なる場合があります。
シーン階層内の MixedRealityToolkit オブジェクトを選択します。
[インスペクター] パネルの [境界システム] セクションに移動し、[有効にする] をチェックします。
境界システムの実装を選択します。 MRTK によって提供される既定のクラス実装は、
MixedRealityBoundarySystem
注:
すべての境界システムの実装では、 IMixedRealityBoundarySystem
境界の視覚化を構成する
境界システムは、構成プロファイルを使用して、表示する境界コンポーネントを指定し、その外観を構成します。
注:
既定のプロファイル DefaultMixedRealityBoundaryVisualizationProfile
(Assets/MRTK/SDK/Profiles) のユーザーは、フロア プレーン、プレイ エリア、追跡領域を表示するように境界システムを事前に構成します。
ビルドとデプロイ
目的の視覚化オプションを使用して境界システムを構成したら、プロジェクトをターゲット プラットフォームにデプロイしてビルドできます。
注:
Unity再生モードを使用すると、エディター内で構成された境界を視覚化できます。 この機能により、ビルドとデプロイの手順を必要とせずに、迅速な開発とテストが可能になります。 ターゲット のハードウェアとプラットフォームで実行されている、ビルドおよびデプロイされたバージョンのアプリケーションを使用して、最終的な受け入れテストを必ず実行してください。
コードを使用した境界システムへのアクセス
有効にして構成した場合、境界システムには CoreServices 静的ヘルパー クラスを使用してアクセスできます。 その後、参照を使用して境界パラメーターを動的に変更し、システムによって管理される関連する GameObject にアクセスできます。
// Hide Boundary Walls at runtime
CoreServices.BoundarySystem.ShowBoundaryWalls = false;
// Get Unity GameObject for the floor visualization in scene
GameObject floorVisual = CoreServices.BoundarySystem.GetFloorVisualization();