最近店で見かけるゲームパッドはアナログスティックが2本付いていたりする。これがリポートディスクリプタ的にどんなUSAGEで書かれているのか気になっていた(実は私は昔ながらのジョィスティックしか持っていないのだ)。調べていくと、どうやらRx,Ry,Rzを使っている模様。
そこでOpenStickConfigでRx,Ry,Rzを指定する実験をした。
ここで問題が発生。Windowsのプロパティで動作を見ると、Rzだけ棒グラフの半分までしか上がらない。 XYZ軸およびRxRyRz軸は-128~+127を値とする様に作ったが、PC側はRzだけ0~255として受取っている様に見える。
そこでRzを0~255に変更して試そうとすると、次の問題が発生。VID(ベンダーID),PID(プロダクトID)を変更せずに軸構成をいじると、所々変更が反映されない模様。Revだけ値を変えても変化なく、PIDを一つ上げると反映される。 別のUSBポートに差し替えても反映される模様。でもこれって何かクリアーする方法がありそうな気がするが・・・みつからない。
とりあえずPIDを一つ上げ、全部の軸を0~255にしてみた結果がこれ。
18本の入力全てを使用してゴージャスな感じになった。
で、最終的にはどうしよう・・・・OpenStickConfigが返すアナログ値、全てを0~255に変更しようかな?