目次

  1. マッピングとは
  2. マッピング機能は何に使うのか
  3. 注意事項
  4. XInputの仮想コントローラーをインストールする
  5. マッピングを有効にする
  6. 動作確認
マッピングとは

コントローラーの入力をそっくりそのまま仮想コントローラーにセットすることで、あたかも実際のコントローラーを動かしているかのように振る舞わせる機能です。

マッピング機能は何に使うのか

マッピング機能はそもそも何に使うのかわかりにくいかと思いますので説明していきたいと思います。 しかし、その前のコントローラーにはの複数の規格があることを知っておく必要があります。 また、その規格の注意点についても知っておく必要があるので読んでおいてください。

コントローラーには二種類の規格が存在します。 一つはDirectInput、もう一つはXInputと呼ばれています。 ゲームとコントローラーはこの規格を使用してやり取りを行っています。

そして、コントローラーをゲームで使用できるようにするにはコントローラーとゲーム側の規格が一致していなければなりません。 ※ゲーム側が両方の規格に対応している場合もあります。

DirectInputXInput

仮想コントローラーの役割はコントローラーとゲームの間に入ることにあります。 例えば、ゲーム側がXInputにしか対応していないのに自分の持っているコントローラーはDirectInputだった。みたいなケースってわりとあると思います。 そういった場合にゲーム対応する規格の仮想コントローラーを間に挟むことでゲームとのやり取りを行えるようにできるわけですね。

mapping

ではXInputのコントローラーを持っていたらマッピングする必要はないのかと思うかもしれません。 コントローラーと同じ規格の仮想コントローラーにマッピングするメリットもあります。 仮想コントローラーはアクションを通じて操作が可能ということです。 アクションで使えるということは連射であったり操作の自動化も可能なわけですね。



注意事項

上の説明においてはマッピング機能は便利じゃんと思うかもしれませんが、わりと条件が限られてたり、面倒なこともあるのでそれについて書いていきたいと思います。

仮想コントローラー(DirectInput)は実用的ではない 仮想コントローラーをゲーム等が認識する可能性が極めて低いためです。 いくらマッピングをしてもゲーム側が認識してくれなければ意味がありません。 そもそもDirectInputのコントローラーが複数ある場合どのコントローラーが認識されるかはゲーム次第なところがあります。

コントローラーと仮想コントローラーの入力は重複して存在する コントローラー側の入力はブロックされるわけではないので入力が重複して存在することになります。 ゲームによってはコントローラーの入力が邪魔になるかもしれません。

XInputの仮想コントローラーは0番目にマッピングされる XInputは0~3までの4つのデバイスを同時に接続することができます。 そしてXInputの仮想コントローラーへのマッピングは「XInputDevice 0」に対して行われます。 そのため、XInput Device 0にコントローラーが接続されいた場合マッピングに失敗するので、0番目は空けておいてください。 XInputのデバイス番号はOSが自動で割り振るため手動では切り替えられません。 コントローラーの物理的な再接続を行うことで番号を変更することができます。

XInputの仮想コントローラーだけど、DirectInputの仮想コントロラーでもある XInputの仮想コントローラーを有効にすると、「Controller(XBOX 360 ForWIndows)」も有効になります 「Controller(XBOX 360 For WIndows)」DirectInputコントローラーです。 仕様上、XInputの仮想コントローラーへマッピング/アクション実行を行うと上記のデバイスも一緒に動いてしまうので注意してください。



XInputの仮想コントローラーをインストールする

Windows7をお使いの方は最初にXbox360の最新ドライバをインストールする必要があるのでこちらからダウンロードしてください。

  1. まず、編集ウィンドウを開き「アプリケーションの設定」のページを表示します。
  2. 仮想コントローラー(vJoy と vXbox)カテゴリへ移動します。
  3. 「ScpVBus/vXboxをインストールする」をクリックします。 しばらく待ったらインストールが終了します。

1

次に仮想コントローラーを有効にしておきます。 同じ場所にある「仮想 XInput Device 0 を有効にする」にチェックを入れてください。

no title

これでマッピングの準備は終了です。

マッピングを有効にする

割り当て設定(コントローラー)を開き、右側パネルのオプションタブにある「コントローラーの入力を仮想のXInputコントローラーにマッピングする」を有効にします。 後は保存&再読み込みをすれば、マッピングされるはずです。

2

動作確認

controller

以下からコントロラーの挙動を視覚的に確認することが可能です。

「メインウィンドウ」>「ツール」>「入力ステータス」>「コントローラー」
マッピングは「XInput Device 0」に対して行われるので、以下の通りに設定をするとマッピングが正常に動いているかどうか確認できます。
コントローラーを右クリック >「コントローラー」>「XInput」>「XInput Device 0」