Поделиться через


структура 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 может использоваться в качестве значения, которое bLeftTrigger и bRightTrigger должно быть больше, чем для регистрации как нажатого. Это необязательно, но часто желательно. Кнопки контроллера не проявляют перекрестный переход.

Требования

Требование Значение
Заголовок xinput.h

См. также раздел

XINPUT_STATE

Структуры XInput

XInputGetState