Wii Wii リモコンを PC で使う
Bluetooth デバイスであるところの Wii リモコンは「Nintendo RVL-CNT-01」という名前のジョイスティックとして認識され,ペアリングも出来る。 でもそのままだと一般的なジョイスティック・ゲームパッド対応アプリでは使えない。
これを一般的なアプリで使えるようにするソフトが公開されてるので,試してみたい。
¶ Wii リモコンをマウスにする WiinRemote
これは簡単。 展開して実行するだけ。
確かにマウスカーソルの操作に使えた。 使えたけど,まだ実用的じゃない……。
¶ Wii リモコンをジョイスティック (ゲームパッド) にする
digg - Windows Wiimote driver created で紹介されてる GlovePIE というソフトと PPJoy というソフトを組み合わせる。
GlovePIE に付属してる TestWiimote.PIE は Wii リモコンの入力をキーボードの入力に変換する例なので,それを参考に適当なスクリプトを書いたら,Wii リモコンの入力をゲームパッドの入力に変換することに成功。 アナログ操作のできないシンプルなゲームパッドとして使う場合,GlovePIE に読み込ませるスクリプトはこんな感じ:
// input if Wiimote.Left then PPJoy1.Analog0 = -1 else if Wiimote.Right then PPJoy1.Analog0 = 1 else PPJoy1.Analog0 = 0 end if if Wiimote.Up then PPJoy1.Analog1 = -1 else if Wiimote.Down then PPJoy1.Analog1 = 1 else PPJoy1.Analog1 = 0 end if PPJoy1.Digital0 = Wiimote.A PPJoy1.Digital1 = Wiimote.B PPJoy1.Digital2 = Wiimote.One PPJoy1.Digital3 = Wiimote.Two PPJoy1.Digital4 = Wiimote.Home PPJoy1.Digital5 = Wiimote.Minus PPJoy1.Digital6 = Wiimote.Plus // output Wiimote.Leds = 2 + 4 // unused // Wiimote.RawForceX // Wiimote.RawForceY // Wiimote.RawForceZ // Wiimote.HasNunChuck // Wiimote.HasClassic // Wiimote.Rumble (output: Force Feedback)
ボタンの割り当てを工夫すれば,ふつうに PC ゲームの操作に使える。 RawForceX / RawForceY / RawForceZ をうまく変換できれば,アナログパッドとしても使えるだろう。 これはおもしろい。
¶ Wii リモコンで Infinite Mario Bros! をプレイする
キーボード操作が難しかった Infinite Mario Bros! を Wii リモコンでプレイする。
前述の GlovePIE を使えば簡単。 今回は Wii リモコンを横向きに持つのを前提とし,1 ボタンが A キー相当,2 ボタンが S キー相当になるようにスクリプトを書く:
Up = Wiimote.Right Down = Wiimote.Left Left = Wiimote.Up Right = Wiimote.Down A = Wiimote.One S = Wiimote.Two F1 = Wiimote.A Wiimote.Leds = 1 + 8
この程度ならスクリプトと呼ばなくてもいいシンプルさだ。 これはおもしろい。