はじめに
個人的に作ろうと思っているツールの開発の関係で仮想ゲームパッドを使いたくなったので何か良いものがないか探したところ、vJoyというツールを発見しました。
どうやらPCゲームのマクロ等で利用されているようです(その発想はなかった)。
FeaturesによるとWindows 11では動作未確認っぽいです。
導入方法
上のSourceForgeから「Download」を押せばインストーラー(vJoySetup.exe
)をダウンロードできます。
あとはインストーラーを実行してインストールするだけです。ちゃんと完了すれば「vJoy installed successfully」というメッセージが表示されます。
スタートメニューには以下の画像の項目が増えています。1つずつ順番に確認していきましょう。

Configure vJoy
「Configure vJoy」を起動すると以下のような画面が表示されます。

ここでは仮想ゲームパッドのデバイスの設定を行えます。MAX16台まで同時接続できるっぽい?
左下の「Enable vJoy」のチェックボックスでvJoy全体の有効/無効を切り替えられるみたいです。
他には以下のような設定項目があります。
- Axes: ゲームパッドのスティック等の軸
- Number of Buttons: ボタン数
- POV Hat Switch: ゲームパッドの十字ボタン
- Force Feedback: コントローラー側で発生する効果………?(使わない機能なので未調査)
Monitor vJoy
vJoyデバイスの入力を可視化できるツールです。単体だと何もないけど後の「vJoy Feeder」で使います。
vJoy Device List
vJoyデバイスの一覧を表示します。デバイスIDとPIDが表示されます(VIDはどこ…?)。

vJoy Feeder
vJoyデバイスの操作盤です。「Terget Device(原文ママ)」から目的のvJoyデバイスを選択し、「Axes」「Buttons」「Continuous POV」でそれぞれスティックの値・ボタンのON/OFF・十字ボタンを操作できますが、自分は「Continuous POV」だけグレーアウトして操作できませんでした。

また、Feederの入力は先述したMonitorに反映されます。

vJoy Home・vJoy SDK
サイトのショートカットになってるみたいですが、どちらも404を返されました。
SDKは、本体同様SourceForgeからダウンロードできます。C#が書けるなら色々できるみたい。
おわりに
今回、vJoyをインストールし、以下の3つのことを確認しました。
- ConfigureからvJoyデバイスの構成が変更できること
- FeederでvJoyデバイスの入力を変化させられること
- MonitorでvJoyデバイスの入力を監視できること
PIDやVIDもイジれるのかな?って思ってたけどどうやらできないみたいです。もしかしたらSDK使えばなんとかできるかもしれません(必要になったら検証します)。
これを使ったツールの記事もある程度形が固まってきたら書きます(宣言)。