Microsoft DirectX 8.0 (C++) |
入力専用の Microsoft® DirectInput® の実装は、IDirectInput8 COM インターフェイスをサポートする DirectInput オブジェクトと、データを提供する入力デバイスごとの DirectInputDevice オブジェクトで構成される。そして 各 DirectInputDevice オブジェクトは、キー、ボタン、軸などの個別の制御手段またはスイッチである デバイス オブジェクト を持つ。デバイス オブジェクトは、デバイス オブジェクト インスタンスとも呼ばれる。
それぞれの DirectInputDevice オブジェクトは、マウス、キーボード、またはジョイスティックなどの入力デバイスを表すDirectInput API では、ジョイスティックという用語は、マウスやキーボード以外の入力デバイスを指す。タッチパッド付きキーボードなど、実際には異なる種類の入力デバイスを組み合わせた物理デバイスは、2 つまたはそれ以上の DirectInputDevice オブジェクトとして表される。フォースフィードバック デバイスは、入力と出力の両方を操作する 1 つのジョイスティック オブジェクトとして表される。
DirectInputDevice オブジェクトは、IDirectInputDevice8 インターフェイスをインスタンス化する。アプリケーションは、デバイス上で使用可能なオブジェクトの数とタイプを IDirectInputDevice8::EnumObjects メソッドを使って確認する。個別のデバイス オブジェクトは、コード オブジェクトとしてカプセル化されずに、DIDEVICEOBJECTINSTANCE 構造体として記述される。
フォース フィードバック エフェクトは、IDirectInputEffect インターフェイスにより表される。このインターフェイスの各メソッドを使って、エフェクトの生成、変更、開始、および停止を行う。
すべての DirectInput インターフェイスは、ANSI 版と Unicode 版で使用できる。コンパイル時に「UNICODE」が定義されている場合は、UNICODE 版が使用される。