次の方法で共有


軸の選択

このセクションでは、DirectInput および Windows マルチメディア アプリケーションで使用するために、DirectInput が軸をどのようにマップするかについて説明します。

Windows 2000 のレガシ インターフェイス

Windows 2000 で DirectX 7.0 API を使用する場合、軸の割り当ては、次の表に示すように、デバイス ドライバーが軸を公開する順序で行われます。

[使用法] ページ 使用方法 DirectInput 軸
HID_USAGE_PAGE_GENERIC HID_USAGE_GENERIC_X GUID_XAxis
HID_USAGE_PAGE_GENERIC HID_USAGE_GENERIC_Y GUID_YAxis
HID_USAGE_PAGE_GENERIC HID_USAGE_GENERIC_Z GUID_ZAxis
HID_USAGE_PAGE_GENERIC HID_USAGE_GENERIC_WHEEL GUID_ZAxis
HID_USAGE_PAGE_GENERIC HID_USAGE_GENERIC_RX GUID_RxAxis
HID_USAGE_PAGE_GENERIC HID_USAGE_GENERIC_RY GUID_RyAxis
HID_USAGE_PAGE_GENERIC HID_USAGE_GENERIC_RZ GUID_RzAxis
HID_USAGE_PAGE_GENERIC HID_USAGE_GENERIC_HATSWITCH GUID_POV
HID_USAGE_PAGE_GENERIC HID_USAGE_GENERIC_SLIDER GUID_Slider
HID_USAGE_PAGE_GENERIC HID_USAGE_GENERIC_DIAL GUID_Slider
HID_USAGE_PAGE_SIMULATION HID_USAGE_SIMULATION_STEERING GUID_XAxis
HID_USAGE_PAGE_SIMULATION HID_USAGE_SIMULATION_ACCELERATOR GUID_YAxis
HID_USAGE_PAGE_SIMULATION HID_USAGE_SIMULATION_BRAKE GUID_RzAxis
HID_USAGE_PAGE_SIMULATION HID_USAGE_SIMULATION_RUDDER GUID_RzAxis
HID_USAGE_PAGE_SIMULATION HID_USAGE_SIMULATION_THROTTLE GUID_Slider
HID_USAGE_PAGE_GAME HID_USAGE_ SIMULATION_POV GUID_POV

これらの GUID は、要求されたデータ形式をデバイス オブジェクトと照合するために SetDataFormat によって使用されます。 0x0600 未満の DIRECTINPUT_VERSION でコンパイルされたアプリケーションの場合、データ形式で GUID_Slider の前に GUID_ZAxis が指定され (既定のジョイスティック データ形式と同様)、デバイス上で Z 軸の前に Slider が見つかった場合、Slider は Z 軸として照合されます。 これは、HID との互換性を向上させることを目的としています。

Windows 9x プラットフォーム

Windows 95/98/Me の DirectX 7.0 インターフェイスでは、DirectInput 軸への WinMM 軸のマッピングは 1 次元です。

WinMM 軸 DirectInput の割り当て
x GUID_XAxis
GUID_YAxis
Z GUID_ZAxis
R GUID_RzAxis
U GUID_Slider
V GUID_Slider

WinMM 軸は、次に示すように、DirectX 8.0 インターフェイスを介して異なる方法でマップされます。

Note

JoyHID.VxD はまだステアリング、加速、ブレーキの車両制御の使用をマップしていませんが、ステアリングの使用をチェックし、見つかった場合はデバイスを WinMM カー コントローラーとして扱います。 また、DirectX 8.0 バージョンの JoyHID.VxD では、IHV で提供される WinMM コントローラーの種類フラグ (JOY_HWS_ISYOKE、JOY_HWS_ISGAMEPAD、JOY_HWS_ISCARCTRL、または JOY_HWS_ISHEADTRACKER) とボタンの数がコピーされるため、これらの型は OEMData レジストリ値の IHV で設定できます。

DirectX 8.0 インターフェイスによって作成されるマッピングは、レガシ インターフェイスによって行われるマッピングとは異なります。 次の表では、DirectX 8.0 インターフェイスのマッピングについて説明します。

WinMM を使用して取得されたデータの既定のマッピングは次のとおりです。

WinMM 軸 DirectInput の割り当て
x GUID_XAxis
GUID_YAxis
Z GUID_Slider
R GUID_RzAxis
U GUID_Slider
V GUID_Slider

ゲーム デバイスの 3 番目の軸が Z 軸になることはめったにないため、これらのマッピングは Windows 2000、Windows XP、Windows 95/98/Me HID との互換性を向上するのに役立ちます。