> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# GameInputGamepadButtons

> GameInputGamepadButtons

# GameInputGamepadButtons

방향 패드(D-pad) 및 축을 버튼으로 변환한 것을 포함하여 게임패드 버튼을 열거합니다.

## 구문

```cpp theme={null}
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;
```

## 상수

| 상수 | 설명 |
| - | - |
| GameInputGamepadNone | 버튼이 눌리지 않았음을 나타냅니다. |
| GameInputGamepadMenu | 메뉴 버튼이 눌렸음을 나타냅니다. |
| GameInputGamepadView | view 버튼이 눌렸음을 나타냅니다. |
| GameInputGamepadA | A 버튼이 눌렸음을 나타냅니다. |
| GameInputGamepadB | B 버튼이 눌렸음을 나타냅니다. |
| GameInputGamepadC | C 버튼이 눌렸음을 나타냅니다. |
| GameInputGamepadX | X 버튼이 눌렸음을 나타냅니다. |
| GameInputGamepadY | Y 버튼이 눌렸음을 나타냅니다. |
| GameInputGamepadZ | Z 버튼이 눌렸음을 나타냅니다. |
| GameInputGamepadDPadUp | D-pad의 상단부가 눌렸음을 나타냅니다. |
| GameInputGamepadDPadDown | D-pad의 하단부가 눌렸음을 나타냅니다. |
| GameInputGamepadDPadLeft | D-pad의 왼쪽 부분이 눌렸음을 나타냅니다. |
| GameInputGamepadDPadRight | D-pad의 오른쪽 부분이 눌렸음을 나타냅니다. |
| GameInputGamepadLeftShoulder | 왼쪽 숄더 버튼이 눌렸음을 나타냅니다. |
| GameInputGamepadRightShoulder | 오른쪽 숄더 버튼이 눌렸음을 나타냅니다. |
| GameInputGamepadLeftTriggerButton | 왼쪽 트리거 버튼이 눌렸음을 나타냅니다. |
| GameInputGamepadRightTriggerButton | 오른쪽 트리거 버튼이 눌렸음을 나타냅니다. |
| GameInputGamepadLeftThumbstick | 왼쪽 엄지 스틱이 눌렸음을 나타냅니다. |
| GameInputGamepadLeftThumbstickUp | 왼쪽 엄지 스틱이 위쪽을 가리키고 있음을 나타냅니다. |
| GameInputGamepadLeftThumbstickDown | 왼쪽 엄지 스틱이 아래쪽을 가리키고 있음을 나타냅니다. |
| GameInputGamepadLeftThumbstickLeft | 왼쪽 엄지 스틱이 왼쪽을 가리키고 있음을 나타냅니다. |
| GameInputGamepadLeftThumbstickRight | 왼쪽 엄지 스틱이 오른쪽을 가리키고 있음을 나타냅니다. |
| GameInputGamepadRightThumbstick | 오른쪽 엄지 스틱이 눌렸음을 나타냅니다. |
| GameInputGamepadRightThumbstickUp | 오른쪽 엄지 스틱이 위쪽을 가리키고 있음을 나타냅니다. |
| GameInputGamepadRightThumbstickDown | 오른쪽 엄지 스틱이 아래쪽을 가리키고 있음을 나타냅니다. |
| GameInputGamepadRightThumbstickLeft | 오른쪽 엄지 스틱이 왼쪽을 가리키고 있음을 나타냅니다. |
| GameInputGamepadRightThumbstickRight | 오른쪽 엄지 스틱이 오른쪽을 가리키고 있음을 나타냅니다. |
| GameInputGamepadPaddleLeft1 | 첫 번째 왼쪽 패들 버튼이 눌렸음을 나타냅니다. |
| GameInputGamepadPaddleLeft2 | 두 번째 왼쪽 패들 버튼이 눌렸음을 나타냅니다. |
| GameInputGamepadPaddleRight1 | 첫 번째 오른쪽 패들 버튼이 눌렸음을 나타냅니다. |
| GameInputGamepadPaddleRight2 | 두 번째 오른쪽 패들 버튼이 눌렸음을 나타냅니다. |

### 게임패드 모듈

모듈은 흔히 함께 있는 게임패드 요소의 그룹을 나타냅니다.

| 상수 | 설명 |
| - | - |
| GameInputGamepadModuleSystemDuo | 메뉴 및 view 버튼. |
| GameInputGamepadModuleDpad | D-pad 버튼(위, 아래, 왼쪽, 오른쪽). |
| GameInputGamepadModuleShoulders | 왼쪽 및 오른쪽 숄더 버튼. |
| GameInputGamepadModuleTriggers | 왼쪽 및 오른쪽 트리거. |
| GameInputGamepadModuleThumbsticks | 왼쪽 및 오른쪽 엄지 스틱. |
| GameInputGamepadModulePaddles2 | 두 개의 첫 번째 패들 버튼(왼쪽 1 및 오른쪽 1). |
| GameInputGamepadModulePaddles4 | 네 개의 모든 패들 버튼(왼쪽 1, 왼쪽 2, 오른쪽 1, 오른쪽 2). |

### 게임패드 레이아웃

흔히 볼 수 있는 게임패드 레이아웃.

| 상수 | 설명 |
| - | - |
| GameInputGamepadLayoutBasic | 시스템 듀오(메뉴 및 view), D-pad, A 및 B 버튼. |
| GameInputGamepadLayoutButtons | 기본 레이아웃에 X 및 Y 버튼과 숄더 버튼을 추가. |
| GameInputGamepadLayoutStandard | XBOX 360 이후 게임패드에서 볼 수 있는 표준 레이아웃. |
| GameInputGamepadLayoutElite | XBOX Elite Controller Series에서 볼 수 있는 레이아웃. |

## 설명

이 열거형은 [GameInputGamePadState](https://docs.xbox.com/ko/reference/input/gameinput/structs/gameinputgamepadstate.md) 구조체에서 사용됩니다. 값을 조합하여 여러 버튼을 동시에 읽을 수 있습니다.

`GameInputGamepadLeftTriggerButton`, `GameInputGamepadRightTriggerButton`, `GameInputGamepadLeftThumbstickUp`, `GameInputGamepadLeftThumbstickDown`, `GameInputGamepadLeftThumbstickLeft`, `GameInputGamepadLeftThumbstickRight`, `GameInputGamepadRightThumbstickUp`, `GameInputGamepadRightThumbstickDown`, `GameInputGamepadRightThumbstickLeft`, `GameInputGamepadRightThumbstickRight`는 대부분의 게임패드에 있는 해당 아날로그 축의 디지털 표현입니다. 예를 들어 왼쪽 엄지 스틱을 위로 완전히 밀면 `GameInputGamepadLeftThumbstickUp` 버튼과 `GameInputGamepadLeftThumbstickY` 축이 모두 값 1.0을 표시합니다.

자세한 내용은 [GameInput 판독값](https://docs.xbox.com/ko/build/core-features/common/input/overviews/input-readings.md)의 [판독값에서 데이터 가져오기](https://docs.xbox.com/ko/build/core-features/common/input/overviews/input-readings.md#gettingStateSection) 섹션을 참조하세요.

이 열거형은 특정 게임패드 버튼에 대한 매핑 정보를 검색하기 위해 [IGameInputMapper::GetGamepadButtonMappingInfo](https://docs.xbox.com/ko/reference/input/gameinput/interfaces/igameinputmapper/methods/igameinputmapper_getgamepadbuttonmappinginfo.md) 메서드와 함께 사용할 수도 있습니다.

## 요구 사항

**헤더:** GameInput.h

**지원되는 플랫폼:** Windows, XBOX One 제품군 콘솔 및 XBOX Series 콘솔

## 함께 보기

[GameInput 개요](https://docs.xbox.com/ko/build/core-features/common/input/overviews/input-overview.md)\
[GameInput](https://docs.xbox.com/ko/reference/input/gameinput/gameinput_members.md)

## 버전 기록

| 버전 | 변경 사항 |
| - | - |
| **v3** | **16개의 새 플래그 상수 추가**: `C`, `Z`, `LeftTriggerButton`, `RightTriggerButton`, 4개의 `LeftThumbstick` 방향, 4개의 `RightThumbstick` 방향, `PaddleLeft1`, `PaddleLeft2`, `PaddleRight1`, `PaddleRight2`. 또한 11개의 복합/레이아웃 상수를 추가했습니다. |
| **v0** | 도입되었습니다. |

## 부록: 이전 버전

### v0

```cpp theme={null}
enum GameInputGamepadButtons
{
    GameInputGamepadNone            = 0x00000000,
    GameInputGamepadMenu            = 0x00000001,
    GameInputGamepadView            = 0x00000002,
    GameInputGamepadA               = 0x00000004,
    GameInputGamepadB               = 0x00000008,
    GameInputGamepadX               = 0x00000010,
    GameInputGamepadY               = 0x00000020,
    GameInputGamepadDPadUp          = 0x00000040,
    GameInputGamepadDPadDown        = 0x00000080,
    GameInputGamepadDPadLeft        = 0x00000100,
    GameInputGamepadDPadRight       = 0x00000200,
    GameInputGamepadLeftShoulder    = 0x00000400,
    GameInputGamepadRightShoulder   = 0x00000800,
    GameInputGamepadLeftThumbstick  = 0x00001000,
    GameInputGamepadRightThumbstick = 0x00002000,
};
```


## Related topics

- [GameInputGamepadInfo](https://docs.xbox.com/ko/reference/input/gameinput/structs/gameinputgamepadinfo.md)
- [GetGamepadButtonMappingInfo](https://docs.xbox.com/ko/reference/input/gameinput/interfaces/igameinputmapper/methods/igameinputmapper_getgamepadbuttonmappinginfo.md)
- [GameInput API 멤버](https://docs.xbox.com/ko/reference/input/gameinput/gameinput_members.md)
- [GameInputGamepadAxes](https://docs.xbox.com/ko/reference/input/gameinput/enums/gameinputgamepadaxes.md)
- [GameInputSystemButtons](https://docs.xbox.com/ko/reference/input/gameinput/enums/gameinputsystembuttons.md)
