Swampdog part27 -Bounding Box-
今回はオブジェクトを操作する機能を実装します。
MRDesignLabで提供されているBounding Boxを使います。
これにより、移動・回転・拡大縮小が可能になります。
Bounding Box
前提としてMRDesignLabアセットをインポートしています。
まだの方はこちらを参考にしてください。
新しいシーンで試してみます。
HoloLens.prefabを配置、適当にCubeを配置します。
Cubeを選択した状態で「Add Component」で「Bounding Box Target」を選択します。
ビルドして実機で確認。
感激。
上の画像のBounding Box TargetコンポーネントのところでRotateはYにしかチェックが入っていないのでY軸しか回転できませんでした。
動画で操作しているように、以下の要領でオブジェクトをいじります。
- 面をドラッグ: 移動
- 辺の中点をドラッグ: 回転
- 角をドラッグ: 拡大縮小
テストができたので同様にしてSwampdogに実装。
お好きなオブジェクトに適用できる、とのことだったので、
Assign BoundingBoxTarget.cs script to any objects that you want to use bounding box and app bar.
Github | Microsoft/MRDesignLabs_Unity App Bar and Bounding Box
Body(Empty)にBounding Box Targetコンポーネントを追加したところ、以下のエラーメッセージが出ました。
Bounding Box Targetコンポーネントを追加すると合わせてCompound Buttonコンポーネントも追加されるのですが、どうやらこちらが空のゲームオブジェクトには適用できないようです。
「Fix now」をクリックすると、自動で以下のRigidbodyを追加してくれます。
これで問題ないはず。
ビルドして実機で確認します。
(ビルドエラーで焦りましたが、VS側でデバッグ起動していたからでした)
一気にアプリ感が出てきました!
おまけ
SFP期間中に実装したかった機能は粗方できました。
残り2週間何に費やすか考えます。
まずは完成図を改めてデザイン、ですかね。
機能確認のために取ってつけただけのダメUIなので、そこらへんイケてる感じにしたいです。
あとは、個別に切り出せなくても頭とか下半身とかも一緒に表示できればそれっぽいかも。
9/19 SFP最終発表、9/20 東大動物病院にてデモ、と続くので気合い入れて頑張ります。
参考
- Github | Microsoft/MRDesignLabs_Unity App Bar and Bounding Box
- Qiita | HoloLensで試すMRDesignLabs – 空セットアップとBounding Boxの利用
- D.YAMA Blog | 【MRDesignLab】BoundingBoxとAppBarを使う