HoloLens MixedRealityToolkit-Unity GameControllerManipulator

こんにちは、ナレコム前川です!

今回は、MixedRealityToolkit の GameControllerManipulator をご紹介します。
MixedRealityToolkit の導入方法について コチラ で説明しているので、導入をしていない方は参照してください。

GameControllerManipulator

GameControllerManipulatorとは、HoloLens 内の操作をゲームのコントローラーで行えるものです。

今回は、ゲームのコントローラーを用意してください。
使用できるコントローラーは、Bluetooth 対応のものとされています。
私が使用したのは、Xbox One の Bluetooth 対応コントローラーです。

コントローラーの接続方法

まず、コントローラーの電源を ON にしてください。

次に、HoloLens を起動し、メニューから Settings アプリを開いてください。
[Device] をタップして、Bluetooth を ON にしてください。

その後、Xbox コントローラーの接続ボタンを3秒ほど押し続けます。

そうすることで、HoloLens の Divece 設定画面に [Xbox Wireless Controller] と表示されるので、
選択して、[Pair] をタップしてください。

これで、HoloLens とコントローラーの接続は完了です。
接続されている間は、コントローラーの電源ボタンは点灯したままになります。

GameControllerManipulatorTest

それでは、GameControllerManipulator の説明をしていきます。

まず、Unity を開いて、[HoloToolkit-Examples] -> [GameControllerManipulator]
-> [GameControllerManipulatorTest]の順に選択し、シーンを開いてください。

[Hierarchy] パネルから [Cylinder] と [Cube] があることを確認してください。
この2つは、コントローラーと視線で操作する対象となるアプリ内の物体です。

次に、[Managers] を選択し、[Inspector] パネルを確認してください。
[Inspector] パネルに [GazeManager] と [GameControllerManipulator] があるのが分かると思います。

① [GazeManager] では、視線による操作などの管理を行っています。
これは、[Project] パネルの [HoloToolkit] -> [Input] -> [Gaze] にスクリプトがあります。
② [GameControllerManipulator] では、コントローラーからの操作入力の設定をしてあります。
これは、[Project] パネルの [HoloToolkit] -> [Input] から持ってきています。

続いて、[Hierarchy] パネルから [CursorWithFeedback] を選択してください。
[CursorWithFeedback] は、[HoloToolkit] -> [Input] -> [Prefabs] -> [Cursor] 内にあります。
これは、ユーザーの視線やジェスチャーをフィードバックするカーソルです。

それでは、実行していきましょう。

配置とビルド

次に配置とビルドを行います。
配置とビルドに関しては、HOLOLENS 5つのビルド方法を参照してください。

ビルドをする際に、GameControllerManipulatorTest シーンを追加し、
GameControllerManipulatorTest シーンのみチェックしてください。

※Unity から Build Settings を行う際に、Player Settings の [Other Settings] や [Public Settings] で
必要項目がチェックされているか確認してください。
[Other Settings] では、きちんと [Virtual Reality Supported] にチェックがしてあるか確認してください。
[Public Settings] では、
 ・InternetClient
 ・HumanInterfaceDevice
にチェックが入っていることを確認してください。

今回のアプリでは、A ボタンで選択できて、視線動かすことで物体を動かすことができます。

コントローラーで Settings のアプリなどを実行したときには、
B → バック
A → 選択
JOY、十字キー → 移動
メニューボタンみたいなの → 選択解除
LT、RT → 上下
で操作できます。

実行動画はこちらです。

以上です。お疲れ様でした。

この記事を書いた人

azure-recipe-user