Microsoft DirectX 8.0 (Visual Basic) |
ジョイスティック デバイスの状態を表す ("ジョイスティック" には、ゲーム パッドやステアリング ホイールなど、ほかのコントローラも含まれる)。この型は、DirectInputDevice8.GetDeviceStateJoystick メソッドで使用される。
Type DIJOYSTATE Buttons(0 To 31) As Byte POV(0 To 3) As Long rx As Long ry As Long rz As Long slider(0 To 1) As Long x As Long y As Long z As Long End Type
ジョイスティック型のアクセスをするには、DirectInputDevice8.SetCommonDataFormat メソッドを呼び出し、DIFORMAT_JOYSTICK 形式定数を渡すことで、デバイスの準備をしなければならない。
軸が相対モードである場合は、適切なメンバが位置の変化量を格納する。絶対モードの場合には、同じメンバが軸の絶対位置を格納する。
POV インジケータの中心位置を 65,535 と報告するドライバもある。POV インジケータが中心位置にあるかどうかは、次のようにして確認する。
Dim POVCentered as Boolean POVCentered = MyDijoystate.POV(0) And &HFFFF
注 : Microsoft® DirectX® 7 では、一部のジョイスティックのスライダを Z 軸に割り当て、それ以降のコードでそのメンバからデータを取得することができた。DirectX 8 では、同じスライダをスライダ配列に割り当てる。アプリケーションを DirectX 8 に移植する場合は、この点を考慮する必要がある。スライダ配列からスライダ データを取得するために必要な変更があれば行うこと。