トップページ > 記事閲覧
特定のコントローラかどうか調べる方法
名前:kanamaru 日時: 2021/11/28 21:31

去年に引き続きアドベントカレンダーに記事を投稿しました。 次の記事を書くために両手持ちを可能にするためのラッパークラスを作成していたのですが、 接続されたコントローラがjoyconかどうか、LとRのどちらかを調べる処理がかけていません。 GetJoypadNameを使ったのですが、取得できるどっちの名前もwireless gamepadとなりjoyconかどうかわかりませんでした。 何か接続しているコントローラが特定のコントローラかどうか調べる方法があったら教えてください。
メンテ

Page: 1 |

Re: 特定のコントローラかどうか調べる方法 ( No.1 )
名前:管理人 日時:2021/11/28 23:09

リファレンスには載っていない関数ですが GetJoypadType という関数で joycon かどうかを判別できます // ジョイパッドのタイプを取得する // ( 戻り値 -1:エラー 0以上:ジョイパッドタイプ( DX_PADTYPE_XBOX_360 など ) ) int GetJoypadType( int InputType ) ; GetJoypadType の第一引数には DX_INPUT_PAD1 や DX_INPUT_PAD2 などを渡します 戻り値が 0 以上の場合の各値の意味は以下の通りです DX_PADTYPE_XBOX_360 // Xbox360コントローラー DX_PADTYPE_XBOX_ONE // XboxOneコントローラー DX_PADTYPE_DUAL_SHOCK_4 // PS4コントローラー DX_PADTYPE_DUAL_SENSE // PS5コントローラー DX_PADTYPE_SWITCH_JOY_CON_L // Switch Joycon(左) DX_PADTYPE_SWITCH_JOY_CON_R // Switch Joycon(右) DX_PADTYPE_SWITCH_PRO_CTRL // Switch Proコントローラー DX_PADTYPE_OTHER // その他のコントローラー よろしければお使いください m(_ _)m
メンテ
Re: 特定のコントローラかどうか調べる方法 ( No.2 )
名前:kanamaru 日時:2021/11/29 07:34

ありがとうございます。 そのままな関数があるとは思いませんでした。 古いバージョンを使ってたのでヘッダーを探したときに見つかりませんでしたし。 最悪頼んでベンダーIDとプロダクトIDを調べる関数追加してもらおうかと思ってました。 最新バージョンにアップロードして使ってみたいと思います。
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存