Master.typeX 2023/09/17 17:31

GM:備忘録・ゲームパッドの取得【9/18:追記あり】

どうも、Master.typeXです。

さて、今回は久々のGameMaker備忘録だ。
事の始まりは、箱コンのワイヤレスアダプターが
時折動作がおかしくなった時だ。
なんか代替案はないかと思い、
Bluetoothで接続できると聞いて
Bluetoothアダプターを買って接続して一件落着・・・。

・・・と、思いきや
GameMakerのゲームで
なんかゲームパッドの挙動が怪しいではないか?
ということに気付いた。
アーマードコアはもちろんのこと
PSO2でもちゃんと動作してるのに
GameMakerの、とりわけ自分のゲームに限り
ビューボタンやLTRTが機能しなかったりと
散々な目にあった。

BLOODLINESでも使ってる
インプットマネージャーオブジェクトを見ても
記述ミスみたいな所は見られない・・・
だのに、キー入力がおかしい。
解決策が見当たらないと思っていたが
そういえば、某氏のフリゲ(GameMaker製)で
キーコンフィグの時にパッドIDとか拾ってたな?
と思い見てみたら・・・
しっかりと該当ボタンが動作してる。

WHY?

だが、おかげで決定的に違うところを見つけ出した。
それはゲームパッドのIDだった。
某氏のフリゲではパッドIDが0を返していたのに対し
自分のテスト環境では4を返していた。
GameMakerではXinputのゲームパッドは普通
0~3の数値を返すのだが
テスト環境では0「と」4を返していたわけだ。
いや、何で2つも値返してるの?

WHY???

まあ、長々と書いたが解決策は至ってシンプル。
パッドIDを入れておく変数に0を指定してやればいいだけだ。
結果として、正しく機能するようになった。コレで一安心だ。

それでは、まとめといこう。
Bluetooth接続時はパッドIDを疑え
ということだな。
いや、マジで何で2つもID拾ってるのか
全く訳わかんねぇ。

とりあえず先駆者たる某氏には
ホント感謝しか無いな。
後で最新版DLしておこうか。

という事で今回はこの辺で。
また次回!!!

9/18:追記

・・・その後、GameMakerの日本語ディスコ鯖で
この問題について質問してみたが・・・
どうやらコレ、箱コン、それもとりわけSeriesX|Sの
箱コンが根本的原因ではないかという憶測が生まれた。

というのも、どうもFF14で全く同じという訳では無いが
無線接続で怪しい挙動になるという記事があったので
そこの対処法の一つとして、Xbox360のコントローラーの
エミュレータを入れるという方法を試したのだが
コレでも駄目で上手く動かなかったのよ。

全てはBluetooth LE XINPUT互換入力デバイスとして
認識しているのがいけないと思われるのだが・・・

まあ、ともかく。
うちのゲームをやる時は
なるべく有線接続でプレイしてくれ
としか注意喚起できないんだよな・・・。

という事で追記は以上だ。
しかし、某氏のゲームだとなんでか
0番を返すんだよな。コレばかりは謎である。

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

月別アーカイブ

記事を検索