Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Enumerates gamepad buttons, including the directional pad (D-pad) and axis to button translations.
Syntax
enum GameInputGamepadButtons
{
GameInputGamepadNone = 0x00000000,
GameInputGamepadMenu = 0x00000001,
GameInputGamepadView = 0x00000002,
GameInputGamepadA = 0x00000004,
GameInputGamepadB = 0x00000008,
GameInputGamepadC = 0x00004000,
GameInputGamepadX = 0x00000010,
GameInputGamepadY = 0x00000020,
GameInputGamepadZ = 0x00008000,
GameInputGamepadDPadUp = 0x00000040,
GameInputGamepadDPadDown = 0x00000080,
GameInputGamepadDPadLeft = 0x00000100,
GameInputGamepadDPadRight = 0x00000200,
GameInputGamepadLeftShoulder = 0x00000400,
GameInputGamepadRightShoulder = 0x00000800,
GameInputGamepadLeftTriggerButton = 0x00010000,
GameInputGamepadRightTriggerButton = 0x00020000,
GameInputGamepadLeftThumbstick = 0x00001000,
GameInputGamepadLeftThumbstickUp = 0x00040000,
GameInputGamepadLeftThumbstickDown = 0x00080000,
GameInputGamepadLeftThumbstickLeft = 0x00100000,
GameInputGamepadLeftThumbstickRight = 0x00200000,
GameInputGamepadRightThumbstick = 0x00002000,
GameInputGamepadRightThumbstickUp = 0x00400000,
GameInputGamepadRightThumbstickDown = 0x00800000,
GameInputGamepadRightThumbstickLeft = 0x01000000,
GameInputGamepadRightThumbstickRight = 0x02000000,
GameInputGamepadPaddleLeft1 = 0x04000000,
GameInputGamepadPaddleLeft2 = 0x08000000,
GameInputGamepadPaddleRight1 = 0x10000000,
GameInputGamepadPaddleRight2 = 0x20000000,
};
// Gamepad modules (Groupings of gamepad elements commonly found together)
const GameInputGamepadButtons GameInputGamepadModuleSystemDuo =
GameInputGamepadMenu |
GameInputGamepadView;
const GameInputGamepadButtons GameInputGamepadModuleDpad =
GameInputGamepadDPadUp |
GameInputGamepadDPadDown |
GameInputGamepadDPadLeft |
GameInputGamepadDPadRight;
const GameInputGamepadButtons GameInputGamepadModuleShoulders =
GameInputGamepadLeftShoulder |
GameInputGamepadRightShoulder;
const GameInputGamepadButtons GameInputGamepadModuleTriggers =
GameInputGamepadLeftTriggerButton |
GameInputGamepadRightTriggerButton;
const GameInputGamepadButtons GameInputGamepadModuleThumbsticks =
GameInputGamepadLeftThumbstickUp |
GameInputGamepadLeftThumbstickDown |
GameInputGamepadLeftThumbstickLeft |
GameInputGamepadLeftThumbstickRight |
GameInputGamepadRightThumbstickUp |
GameInputGamepadRightThumbstickDown |
GameInputGamepadRightThumbstickLeft |
GameInputGamepadRightThumbstickRight;
const GameInputGamepadButtons GameInputGamepadModulePaddles2 =
GameInputGamepadPaddleLeft1 |
GameInputGamepadPaddleRight1;
const GameInputGamepadButtons GameInputGamepadModulePaddles4 =
GameInputGamepadPaddleLeft1 |
GameInputGamepadPaddleLeft2 |
GameInputGamepadPaddleRight1 |
GameInputGamepadPaddleRight2;
// Commonly found gamepad layouts. Custom layouts are possible and encouraged.
const GameInputGamepadButtons GameInputGamepadLayoutBasic =
GameInputGamepadModuleSystemDuo |
GameInputGamepadModuleDpad |
GameInputGamepadA |
GameInputGamepadB;
const GameInputGamepadButtons GameInputGamepadLayoutButtons =
GameInputGamepadLayoutBasic |
GameInputGamepadX |
GameInputGamepadY |
GameInputGamepadModuleShoulders;
const GameInputGamepadButtons GameInputGamepadLayoutStandard =
GameInputGamepadLayoutButtons |
GameInputGamepadModuleTriggers |
GameInputGamepadModuleThumbsticks |
GameInputGamepadLeftThumbstick |
GameInputGamepadRightThumbstick;
const GameInputGamepadButtons GameInputGamepadLayoutElite =
GameInputGamepadLayoutStandard |
GameInputGamepadModulePaddles4;
Constants
| Constant | Description |
|---|---|
| GameInputGamepadNone | Indicates that no button is pressed. |
| GameInputGamepadMenu | Indicates that the menu button is pressed. |
| GameInputGamepadView | Indicates that the view button is pressed. |
| GameInputGamepadA | Indicates that the A button is pressed. |
| GameInputGamepadB | Indicates that the B button is pressed. |
| GameInputGamepadC | Indicates that the C button is pressed. |
| GameInputGamepadX | Indicates that the X button is pressed. |
| GameInputGamepadY | Indicates that the Y button is pressed. |
| GameInputGamepadZ | Indicates that the Z button is pressed. |
| GameInputGamepadDPadUp | Indicates that the top portion of the D-pad is pressed. |
| GameInputGamepadDPadDown | Indicates that the bottom portion of the D-pad is pressed. |
| GameInputGamepadDPadLeft | Indicates that the left portion of the D-pad is pressed. |
| GameInputGamepadDPadRight | Indicates that the right portion of the D-pad is pressed. |
| GameInputGamepadLeftShoulder | Indicates that the left shoulder button is pressed. |
| GameInputGamepadRightShoulder | Indicates that the right shoulder button is pressed. |
| GameInputGamepadLeftTriggerButton | Indicates that the left trigger button is pressed. |
| GameInputGamepadRightTriggerButton | Indicates that the right trigger button is pressed. |
| GameInputGamepadLeftThumbstick | Indicates that the left thumbstick is pressed. |
| GameInputGamepadLeftThumbstickUp | Indicates that the left thumbstick is pointing upward. |
| GameInputGamepadLeftThumbstickDown | Indicates that the left thumbstick is pointing downward. |
| GameInputGamepadLeftThumbstickLeft | Indicates that the left thumbstick is pointing to the left. |
| GameInputGamepadLeftThumbstickRight | Indicates that the left thumbstick is pointing to the right. |
| GameInputGamepadRightThumbstick | Indicates that the right thumbstick is pressed. |
| GameInputGamepadRightThumbstickUp | Indicates that the right thumbstick is pointing upward. |
| GameInputGamepadRightThumbstickDown | Indicates that the right thumbstick is pointing downward. |
| GameInputGamepadRightThumbstickLeft | Indicates that the right thumbstick is pointing to the left. |
| GameInputGamepadRightThumbstickRight | Indicates that the right thumbstick is pointing to the right. |
| GameInputGamepadPaddleLeft1 | Indicates that the first left paddle button is pressed. |
| GameInputGamepadPaddleLeft2 | Indicates that the second left paddle button is pressed. |
| GameInputGamepadPaddleRight1 | Indicates that the first right paddle button is pressed. |
| GameInputGamepadPaddleRight2 | Indicates that the second right paddle button is pressed. |
Gamepad Modules
Modules represent groupings of gamepad elements commonly found together.
| Constant | Description |
|---|---|
| GameInputGamepadModuleSystemDuo | Menu and view buttons. |
| GameInputGamepadModuleDpad | D-pad buttons (up, down, left, right). |
| GameInputGamepadModuleShoulders | Left and right shoulder buttons. |
| GameInputGamepadModuleTriggers | Left and right triggers. |
| GameInputGamepadModuleThumbsticks | Left and right thumbsticks. |
| GameInputGamepadModulePaddles2 | Two fist paddle buttons (left 1 and right 1). |
| GameInputGamepadModulePaddles4 | All four paddle buttons (left 1, left 2, right 1, right 2). |
Gamepad Layouts
Commonly found gamepad layouts.
| Constant | Description |
|---|---|
| GameInputGamepadLayoutBasic | System duo (menu and view), D-pad, and A and B buttons. |
| GameInputGamepadLayoutButtons | Basic layout plus X and Y buttons and shoulder buttons. |
| GameInputGamepadLayoutStandard | Standard layout found on gamepads since the Xbox 360. |
| GameInputGamepadLayoutElite | Layout found on the Xbox Elite Controller Series. |
Remarks
This enumeration is used in the GameInputGamePadState structure. You can combine values to read multiple buttons simultaneously.
GameInputGamepadLeftTriggerButton, GameInputGamepadRightTriggerButton, GameInputGamepadLeftThumbstickUp, GameInputGamepadLeftThumbstickDown, GameInputGamepadLeftThumbstickLeft, GameInputGamepadLeftThumbstickRight, GameInputGamepadRightThumbstickUp, GameInputGamepadRightThumbstickDown, GameInputGamepadRightThumbstickLeft, and GameInputGamepadRightThumbstickRight are digital representations of the corresponding analog axes found on most gamepads. For example, if the left thumbstick is pushed fully upward, both the GameInputGamepadLeftThumbstickUp button and the GameInputGamepadLeftThumbstickY axis will display value 1.0.
For more information, see the Getting data from readings section of GameInput readings.
This enumeration can additionally be used with the IGameInputMapper::GetGamepadButtonMappingInfo method to retrieve mapping information for a specific gamepad button.
Requirements
Header: GameInput.h
Supported platforms: Windows, Xbox One family consoles and Xbox Series consoles