夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

MRTK3でBoundingBoxを実装する  その① 基本設定

本日はMRTK3枠です。

先日はMRTK3のサンプルプロジェクトであるHandInteractionExamplesを見ていきました。

redhologerbera.hatenablog.com

今回は実際に自身のオブジェクトにBoundingBoxをアタッチしていきます。

〇BoundingBoxとは?

BondingBoxはUIにかかわる機能で、移動可能なオブジェクトの操作性を向上させる仕組みです。

 BoundingBoxを使用していることでユーザーがオブジェクトの操作をよりストレスなく行えるほか、ハンドルと呼ばれる機能を使用して回転や移動、スケールをより細かく微調整できる機能です。

〇BoundingBoxの設定

今回は次のライフルのオブジェクトにBoundingBoxを設定していきます。

①ライフルのオブジェクトにBounds Controlコンポーネントを追加します。

Bounds Controlコンポーネントを追加することでConstraint Managerコンポーネントもアタッチされます。

Constraint Managerコンポーネントはオブジェクトの移動に関しての制限を行うコンポーネントです。 例えば移動時の軸制限、回転軸制限などを行うことができます。

②オブジェクトにObject Manipulatorコンポーネントをアタッチします。

Bounds Visuals Prefabを設定します。

Bounds ControlコンポーネントではBounds Visuals Prefabに設定したプレファブがBoundingBoxとして使用されます。

PackageフォルダからBoundingBoxのプレファブを検索しBoundsVisualPrefabにアタッチします。

この状態で実行することでHandRayもしくは手の位置がオブジェクト操作可能な状態になるとBoundingBoxが現れます。

オブジェクトを選択し移動する際にはBoundingBoxが青く表示されます。

以上で基本的なBoundingBoxの設定が完了しました。