XINPUT_GAMEPAD 结构 (xinput.h)

描述控制器的当前状态。

语法

typedef struct _XINPUT_GAMEPAD {
  WORD  wButtons;
  BYTE  bLeftTrigger;
  BYTE  bRightTrigger;
  SHORT sThumbLX;
  SHORT sThumbLY;
  SHORT sThumbRX;
  SHORT sThumbRY;
} XINPUT_GAMEPAD, *PXINPUT_GAMEPAD;

成员

wButtons

设备数字按钮的位掩码,如下所示。 设置位指示按下了相应的按钮。

“设备”按钮 位掩码
XINPUT_GAMEPAD_DPAD_UP 0x0001
XINPUT_GAMEPAD_DPAD_DOWN 0x0002
XINPUT_GAMEPAD_DPAD_LEFT 0x0004
XINPUT_GAMEPAD_DPAD_RIGHT 0x0008
XINPUT_GAMEPAD_START 0x0010
XINPUT_GAMEPAD_BACK 0x0020
XINPUT_GAMEPAD_LEFT_THUMB 0x0040
XINPUT_GAMEPAD_RIGHT_THUMB 0x0080
XINPUT_GAMEPAD_LEFT_SHOULDER 0x0100
XINPUT_GAMEPAD_RIGHT_SHOULDER 0x0200
XINPUT_GAMEPAD_A 0x1000
XINPUT_GAMEPAD_B 0x2000
XINPUT_GAMEPAD_X 0x4000
XINPUT_GAMEPAD_Y 0x8000
 

上面设置但未定义的位是保留的,其状态为未定义。

bLeftTrigger

左触发器模拟控件的当前值。 该值介于 0 和 255 之间。

bRightTrigger

右侧触发器模拟控件的当前值。 该值介于 0 和 255 之间。

sThumbLX

左操纵杆 x 轴值。 每个操纵杆轴成员都是一个介于 -32768 和 32767 之间的有符号值,用于描述操纵杆的位置。 值 0 居中。 负值表示向下或向左。 正值表示向右或向右。 XINPUT_GAMEPAD_LEFT_THUMB_DEADZONE或XINPUT_GAMEPAD_RIGHT_THUMB_DEADZONE常量可用作正值和负值来筛选操纵杆输入。

sThumbLY

左操纵杆 y 轴值。 该值介于 -32768 和 32767 之间。

sThumbRX

右操纵杆 x 轴值。 该值介于 -32768 和 32767 之间。

sThumbRY

右操纵杆 y 轴值。 该值介于 -32768 和 32767 之间。

注解

轮询控制器状态的更改时, XINPUT_STATE 结构使用此结构。

按钮到游戏功能的特定映射因游戏类型而异。

常量XINPUT_GAMEPAD_TRIGGER_THRESHOLD可用作 bLeftTriggerbRightTrigger 必须大于的值才能注册为按下。 这是可选的,但通常是可取的。 控制器按钮不表示相声。

要求

要求
Header xinput.h

另请参阅

XINPUT_STATE

XInput 结构

XInputGetState