GameMaker 日本語掲示板

XBOX無線コントローラー一台が複数のスロットに接続される

3 コメント
views
17 フォロー

自分の環境だけなのかもしれないのですが…。

XBOXの無線コントローラーをPCに接続してgamepad_is_connected関数で確認してみると、スロット0とスロット4のふたつのスロットにコントローラー接続されてしまっており、マルチプレイでのコントローラー認識がうまくいかず悩んでいます。

この挙動は正常なものなのでしょうか?

サクレ
作成: 2024/10/14 (月) 21:14:14
通報 ...
1
生高橋 2024/10/15 (火) 12:24:30

Xboxの無線コントローラーを使うと同様な症状に陥るフォーラムを見つけました。
https://forum.gamemaker.io/index.php?threads/how-to-prevent-wireless-xbox-controller-to-have-device-id-0-and-4-at-the-same-time.101834/

現状の対策としては以下の4つのどれかで解決するかもしれません。
⓵無線コントローラーには対応しない(一番簡単)
⓶スロット0~3のみを利用する(Xinputに対応したコントローラーのみを利用)
⓷スロット4~11のみを利用する(DirectInputに対応したコントローラーのみを利用する)
⓸接続を見てコントローラーのGUIDをチェックして、同一のものは片方を無視する。gamepad_get_guidで取得可能

2

回答ありがとうございます!
gamepad_get_guidでチェックする方法が遊び手的にはストレスなくて一番良いかな? と思って試したのですが、スロット0と4で異なるGUIDになってしまって使えず…。
とりあえず他の手段を探ってみます。

3
生高橋 2024/10/15 (火) 22:22:54 >> 2

ええ、GUIDだめでしたか!
お手数をおかけしてすみません🙇‍♂️