本日は Unity の技術調査枠です。
今回は Mixed Reality Design Labs を利用した状態で通常パネルUIの操作は可能か気になったのでその確認です。
Mixed Reality Design Labs を取り込んだプロジェクトを用意します。
HoloLens.prefab をシーンに配置します。
この状態で Panel を設定します。
この時点で EventSystem オブジェクトは配置されません。
サイズ調整とテクスチャの適用を行ってパネルを作成しました。
3Dモデルはサイズ間隔が分かりやすくなるよう最初に入れましたが……。
HoloLens オブジェクトを拡大してみると、既にポリゴン表示が存在していることが分かります。
青色の格子テクスチャがそれです。開発者が知りたい情報を的確にフォローしている点は流石……。
ボタンを配置します。
ビルドを行い、hololens 上で視線を合わせてみると……。
あれ?反応しない??
てっきり当然の如く通常のUI操作もフォローしているものだと考えていたので少し意外です。
EventSystem は HoloLens オブジェクト内の FocusManager オブジェクトが保持しています。
(パネル追加時に EventSystem が自動追加されなかったのはこのためです)
ここに手動で HoloLensInput スクリプトを適用します。
ビルドを行い、hololens 上で視線を合わせてみると……。
あれぇ?やっぱり動かない。
こうなると悪さをしているのは HoloLens.prefab しか考えられません。
HoloLens オブジェクトを無効化し、HoloToolKit の HoloLensCamera と別途 EventSystem をセットします。
この状態でビルドを行い、hololens 上で視線を合わせてみると……。
動きました……。
どうもそのままだと Mixed Reality Design Labs と通常UIの両立はできないということですね。
この解決方法がないか。調査は一旦持ち越しです。