小ネタ 2008-013

ギターヒーロー3のギター型コントローラーをPCに接続してみる



Wii「ギターヒーロー3」のコントローラーを調べてみた。(2008-6-7)

 Wiiの「ギターヒーロー3」というゲームには、ギター型のコントローラーが付属している。
 このコントローラーは、Wiiリモコンの拡張ポートに接続して、Wiiリモコン自体をギター内に収納するような形になっている。
 Wiiリモコン用の拡張機器なので、中身はヌンチャクやクラシックコントローラーと同様だと思われる。
 試しにPCとWiiリモコンを接続して、このギターコントローラーの入力を読み出すソフトを作ってみた。

 
 コントローラーにWiiリモコンをセットしたところ


 作成したテスト用のソフトを公開しておく。
 読み出した数値が表示されるだけで特に面白いものではないが、何かギターコントローラーを使ったソフトを作るための部品として参考にはなると思う。


 [ ギターヒーロー3コントローラー(Wii)のテスト用ソフト 実行ファイルとソースコード (download) ]

 (tiny_hid_dllが以前のものから更新して新しいものに入れ替わっている。古いDLLと混ぜないように注意。)


 このギターコントローラー用のソフトは、ヌンチャクやクラシックコントローラー用のソフトとほとんど一緒である。以前の解析結果がほぼそのまま使用可能。
 ただし、初期化の手順がヌンチャク/クラシックコントローラーに比べて少しだけ追加になっている。

 (後日加筆)
 GlobePIEというソフトはかなり前に対応していたそうだ。Wii版が日本で発売されたのは2008-05-22だが、海外では2007年末に既に発売されていたらしい。




PLAYSTATION3「ギターヒーロー3」のコントローラーを調べてみた。(2008-6-15)

 
 PLAYSTATION3の「ギターヒーロー3」というゲームに付属のギター型のコントローラーは、無線式になっており、PS3本体にUSBの受信機のドングルを挿して使う。
 このUSBドングルは、PCに挿すとUSBゲームパッドとして認識される。
 このため、PS3版のギターヒーロー3コントローラーは、何もしなくてもPCでゲームパッドとして使うことができる。

 

 ゲームパッド用のAPIを使って、ギターコントローラーの入力を読み出すソフトを作ってみた。
 他のゲームパッドとの判別ができないので、他のゲームパッドは接続しないこと。

 [ ギターヒーロー3コントローラー(PS3)のテスト用ソフト 実行ファイルとソースコード (download) ]


 (後日加筆)
 HID(ヒューマンインターフェースデバイス)用のAPIを使ってソフトを作ってみた。
 他のゲームパッドとの判別ができるようになった。

 [ ギターヒーロー3コントローラー(PS3)のテスト用ソフト その2 実行ファイルとソースコード (download) ]


 方向ボタンは、ハットスイッチ(POV)として入力される。ニュートラルの場合と8方向のどれかの入力の場合とで、9つの値のいずれかが入力値になる。
 ギターの弦のボタンは、方向ボタンの上下と一緒。
 レバーは、3つめの軸(z軸)として入力される。




その他

 XBox360版のギターヒーローコントローラーをPCに接続することも可能っぽい。

 Playstation2版も、PS2コントローラーをPCに接続するためのアダプターを中継させれば使うことができると思われる。
 ギターヒーロー3の無線版よりも前作の有線のコントローラーのほうが確実に接続できるかもしれない。




PCに接続したギター型コントローラの使いみち

 PC用のギター演奏のフリーソフトのゲーム「Frets on Fire」で使うのが面白そう。プレイ動画を見た感じギターヒーローに似ている。
 PS3版のコントローラーは割と簡単に対応可能なようだ。
 Wii版ギターコントローラーを対応させるソフトを作ってみようかなあ。




 自前で、ジャミネーターのような演奏ソフトを自作してみたい。
 楽器の音を出すため、シンセサイザー的な波形合成ツールキット「The Synthesis Toolkit」というのがフリーソフトなので良さそうだ。
 iPhoneのPocketGuitarというギター演奏ソフトがこのライブラリを使っているようで、ギター演奏ソフトが作れるのは実証されていると言える。
 ツールキットのソースコードに同梱されているサンプルプログラムをWindows上でビルドして試してみた。
 SKINIという形式で演奏データを渡してやるだけで音を出すことができた。

 もっと簡単に楽器の音を出すためには、MIDI出力するというのでもいいのかもしれない。
 [ MIDIギター音のテスト用ソフト 実行ファイルとソースコード (download) ]