UWPUnityでのHoloLensアプリ開発にXboxOne用のゲームパッド(コントローラー)を利用してみました。利用までの手順などをまとめます。ちなみにある程度動作したのですが、一部うまく動いていない状況です。調査と試行錯誤の記録としてメモしておきます。この記事の課題の解決方法を、別記事に簡単にまとめました。One用のコントローラーには複数種類ありまして有線専用のコントローラー(Amazonで\2,500円くらい)BlueTooth非対応の無線コントローラー(同、3,500円程度)BlueTooth対応の無線コントローラー(同、5,800円程度)があり、この中でBlueTooth対応のXboxOne用コントローラーが必要なので注意。S同梱のコントローラー以降からBlueTooth対応になったようで比較的最近発売されたコントローラーが必要です。CV1用のXboxコントローラーはBlueTooth非対応らしく使えないとの事。360用の無線コントローラーも使えません。(自宅に4つあるのに残念。)具体的には、Amazonでこれを買いました。PCとも接続できます。単三電池2本で動くのですが、パッケージには入っていませんでした。有線用のUSBケーブルは付属しています。BlueTooth接続だと、文字入力できるオプションのChat用キーパッドは利用できないとの事。One用のコントローラーでないと動かないものが多いようです。上記コントローラーを購入すれば、それらのゲームも遊べるので、そういう意味でも買っておいて損は無いと思います。Win10上でツインビーがゲームパッドで遊べました。Sが買えてしまいます。SはHoloLensと連携して、HoloLensを画面に出せるらしいので、こっち買っちゃったほうが良いかも。NEWS2.HoloLensと接続するHoloLensと接続するのは簡単です。アプリから、BlueToothデバイスとして追加します。Storeアプリなど2Dのプレインストールアプリなども一部XboxOneコントローラーに対応済みです。全ての操作が完結する訳ではないですが、いちいちエアタップしなく良いので結構便利。Updateにて対応されたようです。API.とXInputの話はあとで出てきます。3.開発用PCと接続する。次に開発用PCにコントローラーを接続してみます。一般的なBlueToothデバイスの追加手順です。アクセサリーWin+Aを押して、アクションセンターを表示して、BlueTooth上で右クリック→「設定」をクリック設定アプリからBlueToothデバイスを追加BlueToothデバイスを選択Pinコードなど不要で接続できました。4.Unity上で使えるようにする。次に開発PC上のUnityEditor上でコントローラーを利用可能にしていきます。InputXInputWindows.​Gaming.​Inputというキーワードを知っておく必要があります。簡単に言うとXInputはMicroSoft製品と親和性が高く、キーの割り当て仕様が統一されています。Xbox360用のコントローラーはXInput対応だそうです。InputとXInputの違いを知りたい方はこのサイトが参考になります。APIを利用して操作内容を取得することが推奨されています。比べて次のような利点があります。devicesのサポートをするようになりました。Windows.​Gaming.​Inputの記述をしなくても、大丈夫なようになったようです。API.を利用した実装を紹介しています。BLOGこの辺り、正直よくわかりません。HoloLensのフォーラムもコントローラー周りは荒れ気味なので、なんか嫌な予感。ここで、ぴったりのAssetを見つけたが動作せず。HoloLensただ。私の環境でビルドはできたのですが、実機転送したら以下のエラーが出まくって、正常に動作しませんでした。0)Aseetの中身もdllの状態でソースコードが入っておらず解析もできず。導入できたとしてもUnityEditor上では動作しないと書いてあるので、いったんあきらめて正攻法を試してみます。InputManagerでキーの割り当てを行う。Controllerでは正常に動作しました。MRDesignLabを使っている場合は、Inputの設定は行われているので、Nameの部分はそれを使った方が良いです。そのうち書き換えるかも。「DPAD(8)」、および「右スティック(10)」がHoloLens実機では反応しませんでした。11もしくは11st-axisを割り当てると何らか値は戻ってくるのですが、法則がわかりません。GetButtonUP()/GetButtonDown()もイマイチまともに動かない。現時点ではかなり怪しい実装の気がします。試したのですが、うまくいかないので、そのうち治ることを期待して、十字キー(DPAD)と右スティックは使わないようにしています。動作テストの際に作成したスクリプトも貼り付けておきます。gist.github.comという事で、いろいろ納得いかない状況ですが、時が解決するかもしれません。知識がない中、調べながら書いたので、誤りや解決のヒント等ありましたら是非、コメントください。ゲームパッドを使う方法を書きま...2017-06-25MRDesignLabsメモ(1)MRDesignLabs_Unityを触りながら、だらだらとメモ。最新記事HoloLens2向けのカメラマウントの3Dプリントデータを作りました。読者になるはてなブログをはじめよう!pigshapeさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。