AYANEO AIRのコントローラーボタンを動画プレーヤーなどゲーム以外のアプリケーションでも活用するため、AutoHotKeyでイベントを取得できるか調べてみました。
2022.12.26追記: AutoHotKeyのスクリプト記法は2.0でリニューアルされました。以下のスクリプトは1.x時代のもので最新版では動かない可能性があります。
まず、Steamアプリの設定画面で確認したところ、Xbox 360コントローラーとして認識されていることがわかりました。
それを元にAutoHotKeyのマニュアルを調べると、ボタンはJoy1,2,3…で取得できることが判明。アナログスティックやL/Rボタン(アナログボタン)も使えそうですが当面必要を感じないのでここでは割愛します。
右側のA/B/X/YボタンとLB/RBボタン、そして左下にあるViewボタンとMenuボタン(Xbox 360コントローラーでの名称)は下記のようなJoy1〜8で認識できました。
1 2 3 4 5 6 7 8 |
Joy1::Send {a} ; A button (標準で左クリック) Joy2::Send {b} ; B button Joy3::Send {x} ; X button (標準で右クリック) Joy4::Send {y} ; Y button Joy5::Send {l} ; LBボタン Joy6::Send {r} ; RBボタン Joy7::Send {v} ; ビューボタン(左下の四角2つマーク) Joy8::Send {m} ; メニューボタン(左下の三本線) |
AutoHotKeyの設定ファイルの書き方はググっていただければと思いますが、とりあえずこんな感じで書けば、{}で指定したアルファベットが入力されるはずです(;以降はコメント)。ただし、AYANEOのユーテリティ側でAボタンは左クリック、Xボタンは右クリックにアサインされていて、左アナログスティックと組み合わせてマウスとして使うようになっているので、これを書き換えてしまうのは実用的ではないかも知れません。
左の十字ボタンについては直接はキーイベントを拾えず、まずはSteam設定の「コントローラ」→「デスクトップ設定」で「十字キー」か「ボタンパッド」にして、なにかしらのキーを割り当ててやる必要がありました。
右下の2ボタンはAYANEO独自ボタンで触れなさそう。
■まとめ
とりあえずアナログ系以外はAutoHotKeyで使えることが判明し一安心です。AutoHotKeyならば特定のアプリケーション毎にアサインを変更することもできるので、ゲームタイトル毎に設定を切り替えることもできます。ウインドウタイトルで識別すれば、同じブラウザ上でも、電子書籍サイトや動画サイトごとへの対応も可能。これから設定を煮詰めていこうと思います。