Microsoft DirectX 8.0 (C++)

任意コントロール定数

次の定数は、デバイス上で一致する任意のコントロールにアクションをマップするために、DIACTION 構造体の dwSemantic メンバの中で使用される。

定数 デバイス オブジェクト
DIAXIS_ANY_1 任意の軸
DIAXIS_ANY_2 任意の軸
DIAXIS_ANY_3 任意の軸
DIAXIS_ANY_4 任意の軸
DIAXIS_ANY_A_1 任意のアクセル
DIAXIS_ANY_A_2 任意のアクセル
DIAXIS_ANY_B_1 任意のブレーキ
DIAXIS_ANY_B_2 任意のブレーキ
DIAXIS_ANY_C_1 任意のクラッチ
DIAXIS_ANY_C_2 任意のクラッチ
DIAXIS_ANY_R_1 任意の r 軸
DIAXIS_ANY_R_2 任意の r 軸
DIAXIS_ANY_S_1 任意の s 軸
DIAXIS_ANY_S_2 任意の s 軸
DIAXIS_ANY_U_1 任意の u 軸
DIAXIS_ANY_U_2 任意の u 軸
DIAXIS_ANY_V_1 任意の v 軸
DIAXIS_ANY_V_2 任意の v 軸
DIAXIS_ANY_X_1 任意の x 軸
DIAXIS_ANY_X_2 任意の x 軸
DIAXIS_ANY_Y_1 任意の y 軸
DIAXIS_ANY_Y_2 任意の y 軸
DIAXIS_ANY_Z_1 任意の z 軸
DIAXIS_ANY_Z_2 任意の z 軸
DIBUTTON_ANY(x) 任意のボタン
DIPOV_ANY_1 任意の視点コントローラ
DIPOV_ANY_2 任意の視点コントローラ
DIPOV_ANY_3 任意の視点コントローラ
DIPOV_ANY_4 任意の視点コントローラ

これらの定数を使って、特定のジャンルに定義されていない仮想コントロールに、アプリケーション アクションをマップすることができる。このようなアクションは、ジャンル固有アクションの後にマップされる。マッパーがすべての一致するコントロールをジャンル固有アクションに既にマップしていた場合、任意コントロール アクションは、マップされないまま残される。

任意コントロール アクションに優先度の差はない。デバイスに 1 つの x 軸があり、アクション配列が DIAXIS_ANY_1 および DIAXIS_ANY_X_1 を指定する場合、x 軸には、アクション配列の先頭に表示されるアクションがマップされる。

DIBUTTON_ANY(x) は 0 〜 255 までの任意の値を受け取ることができる。ただし、一度指定したインデックスを 2 回以上使用しないこと。たとえば、次の DIACTION 構造体のセットは無効である。

{eB_MUTE,    DIBUTTON_ANY(0), 0, "Toggle Sound",},
{eB_VOLUP,   DIBUTTON_ANY(0), 0, "Volume Up",   }, 
{eB_VOLDOWN, DIBUTTON_ANY(0), 0, "Volume Down", }, 

次に示すようにそれぞれ異なるインデックスを使用するのが正しい使い方である。

{eB_MUTE,    DIBUTTON_ANY(0), 0, "Toggle Sound",}
{eB_VOLUP,   DIBUTTON_ANY(1), 0, "Volume Up",   } 
{eB_VOLDOWN, DIBUTTON_ANY(2), 0, "Volume Down", }