0

ジョイスティック軸の説明について少し混乱しています。誰かが私の混乱を解消するのに役立つリンクまたはドキュメントを持っていることを願っています.

私は Windows に詳しくないので、従来の Windows ゲームポート コードを移植しようとすると、少し混乱します。


X
Y
Zという共通の最初の 3 つの軸については、誰もが知っています。

私の理解では、ゲームポート スタイルのインターフェイスでは、他の 3 つの軸は次のとおりです。
R
U
V

ただし、IOHIDUsageTables (OS X) を見ると、次のように表示されます。

kHIDUsage_GD_X  = 0x30, /* Dynamic Value */
kHIDUsage_GD_Y  = 0x31, /* Dynamic Value */
kHIDUsage_GD_Z  = 0x32, /* Dynamic Value */
kHIDUsage_GD_Rx = 0x33, /* Dynamic Value */
kHIDUsage_GD_Ry = 0x34, /* Dynamic Value */
kHIDUsage_GD_Rz = 0x35, /* Dynamic Value */

kHIDUsage_GD_Vx = 0x40, /* Dynamic Value */
kHIDUsage_GD_Vy = 0x41, /* Dynamic Value */
kHIDUsage_GD_Vz = 0x42, /* Dynamic Value */
kHIDUsage_GD_Vbrx   = 0x43, /* Dynamic Value */
kHIDUsage_GD_Vbry   = 0x44, /* Dynamic Value */
kHIDUsage_GD_Vbrz   = 0x45, /* Dynamic Value */
kHIDUsage_GD_Vno    = 0x46, /* Dynamic Value */

これは、3 つの R 軸 (珍しいことではないようですが) と U 軸がないため、少し混乱しています。

2 つの質問:

1) 従来の U 軸がどの軸になるか確認できる人はいますか? 「ラダーペダルの軸」と説明されている文書を見て、それが Ry であると確信しました。
2) V 軸と Vbr 軸の一般的な使用法について詳しく説明できる人はいますか? 説明がそれぞれ「ベクトル」と「相対ベクトル」であることは理解していますが、物理デバイスに関してそれが何を意味するのかを視覚化するのは困難です。

すべての啓蒙とドキュメンテーションのポインタを歓迎します。

4

1 に答える 1

0

ここには、紛らわしいほど似た名前を持つ 2 つの異なる規則があります。

  • x、y、z 軸のそれぞれの位置、(R)回転および/または(V)速度
  • (R)、(U)、(V)軸

R、U、V 軸が 3 つの HID スロットに直接マッピングされている場合があります。または、ハードウェアの正確な部分に応じて、ドライバーが別のことを行う場合もあります。

個人的には、各軸が「意味する」ことや、それらを直接マッピングできるかどうかについて心配することにあまり時間をかけません。各ジョイスティックには、ドライバーによって任意の方法でマッピングされるさまざまな物理コントローラーがあります。したがって、X と Y を超えて、各関数にどの軸が使用されるかを予測することは困難です。また、元の意図を推測できたとしても、ユーザーがデフォルトをオーバーライドしたいと考える可能性があります。そのため、デバイスごとおよびユーザーごとに構成できる設定ファイルを介して軸マッピングを実装するのがおそらく最善です。

于 2010-03-29T10:33:10.397 に答える