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

# XINPUT_CAPABILITIES

> XINPUT_CAPABILITIES

# XINPUT\_CAPABILITIES

연결된 컨트롤러의 기능을 설명합니다.

## 구문

```cpp theme={null}
typedef struct XINPUT_CAPABILITIES {  
    BYTE Type;  
    BYTE SubType;  
    WORD Flags;  
    XINPUT_GAMEPAD Gamepad;  
    XINPUT_VIBRATION Vibration;  
} XINPUT_CAPABILITIES  
```

### 멤버

*Type*\
형식: BYTE

컨트롤러 유형입니다. XINPUT\_DEVTYPE\_GAMEPAD 유형이어야 하며 아래 표에 나열된 값 중 하나여야 합니다.

*SubType*\
형식: BYTE

게임 컨트롤러의 하위 유형입니다.

허용된 하위 유형:

| 하위 유형                                                                                             | 의미                                                                                                                                                                                                                                                                                                                                         |
| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| XINPUT\_DEVSUBTYPE\_UNKNOWN                                                                       | 알 수 없음. 컨트롤러 유형을 알 수 없습니다.                                                                                                                                                                                                                                                                                                                 |
| XINPUT\_DEVSUBTYPE\_GAMEPAD                                                                       | 게임패드 컨트롤러. 왼쪽 및 오른쪽 스틱, 왼쪽 및 오른쪽 트리거, 방향 패드, 그리고 A, B, X, Y, START, BACK, LB, RB, LSB, RSB의 모든 표준 버튼을 포함합니다.                                                                                                                                                                                                                               |
| XINPUT\_DEVSUBTYPE\_WHEEL                                                                         | 레이싱 휠 컨트롤러. 왼쪽 스틱 X는 휠 회전을 보고하고, 오른쪽 트리거는 가속 페달, 왼쪽 트리거는 브레이크 페달입니다. 방향 패드와 대부분의 표준 버튼(A, B, X, Y, START, BACK, LB, RB)이 포함됩니다. LSB와 RSB는 선택 사항입니다.                                                                                                                                                                                        |
| XINPUT\_DEVSUBTYPE\_ARCADE\_STICK                                                                 | 아케이드 스틱 컨트롤러. DPAD(위, 아래, 왼쪽, 오른쪽)로 보고되는 디지털 스틱과 대부분의 표준 버튼(A, B, X, Y, START, BACK)이 포함됩니다. 왼쪽 및 오른쪽 트리거는 디지털 버튼으로 구현되며 0 또는 0xFF를 보고합니다. LB, LSB, RB, RSB는 선택 사항입니다.                                                                                                                                                                     |
| XINPUT\_DEVSUBTYPE\_FLIGHT\_STICK                                                                 | 플라이트 스틱 컨트롤러. 왼쪽 스틱으로 보고되는 피치 및 롤 스틱, 오른쪽 스틱으로 보고되는 POV 햇, 왼쪽 트리거로 보고되는 러더(핸들 트위스트 또는 로커), 오른쪽 트리거의 스로틀 컨트롤을 포함합니다. 기본 무기(A), 보조 무기(B) 및 기타 표준 버튼(X, Y, START, BACK)을 지원합니다. LB, LSB, RB, RSB는 선택 사항입니다.                                                                                                                                   |
| XINPUT\_DEVSUBTYPE\_DANCE\_PAD                                                                    | 댄스 패드 컨트롤러. 패드의 방향 패드와 표준 버튼(A, B, X, Y) 및 BACK, START를 포함합니다.                                                                                                                                                                                                                                                                             |
| XINPUT\_DEVSUBTYPE\_GUITAR XINPUT\_DEVSUBTYPE\_GUITAR\_ALTERNATE XINPUT\_DEVSUBTYPE\_GUITAR\_BASS | 기타 컨트롤러. 스트럼 바는 DPAD(위, 아래)에 매핑되고, 프렛은 A(녹색), B(빨간색), Y(노란색), X(파란색), LB(오렌지색)에 할당됩니다. 오른쪽 스틱 Y는 수직 방향 센서와 연결되고, 오른쪽 스틱 X는 워미 바입니다. BACK, START 및 DPAD(왼쪽, 오른쪽)에 대한 지원이 포함됩니다. 왼쪽 트리거(픽업 선택기), 오른쪽 트리거, RB, LSB(프렛 수정자), RSB는 선택 사항입니다. Guitar Bass는 Guitar와 동일하며, 설정을 단순화하기 위한 별도의 하위 유형입니다. Guitar Alt는 수직 방향 센서에 대한 더 넓은 범위의 이동을 지원합니다. |
| XINPUT\_DEVSUBTYPE\_DRUM\_KIT                                                                     | 드럼 컨트롤러. 드럼 패드는 버튼에 할당됩니다: 녹색(플로어 톰)의 경우 A, 빨간색(스네어 드럼)의 경우 B, 파란색(로우 톰)의 경우 X, 노란색(하이 톰)의 경우 Y, 페달(베이스 드럼)의 경우 LB. 방향 패드, BACK, START가 포함됩니다. RB, LSB, RSB는 선택 사항입니다.                                                                                                                                                                     |
| XINPUT\_DEVSUBTYPE\_ARCADE\_PAD                                                                   | 아케이드 패드 컨트롤러. 방향 패드와 대부분의 표준 버튼(A, B, X, Y, START, BACK, LB, RB)이 포함됩니다. 왼쪽 및 오른쪽 트리거는 디지털 버튼으로 구현되며 0 또는 0xFF를 보고합니다. 왼쪽 스틱, 오른쪽 스틱, LSB, RSB는 선택 사항입니다.                                                                                                                                                                                  |

*Flags*\
형식: WORD

컨트롤러의 기능입니다.

| 값                              | 설명                                                                                |
| ------------------------------ | --------------------------------------------------------------------------------- |
| XINPUT\_CAPS\_VOICE\_SUPPORTED | 장치에 통합된 음성 장치가 있습니다.                                                              |
| XINPUT\_CAPS\_FFB\_SUPPORTED   | 장치가 포스 피드백 기능을 지원합니다. 현재 럼블 이외의 포스 피드백 기능은 Windows의 XINPUT을 통해 지원되지 않습니다.         |
| XINPUT\_CAPS\_WIRELESS         | 장치가 무선입니다.                                                                        |
| XINPUT\_CAPS\_PMD\_SUPPORTED   | 장치가 플러그인 모듈을 지원합니다. 현재 플러그인 모듈(예: TID(텍스트 입력 장치))은 Windows의 XINPUT을 통해 지원되지 않습니다. |
| XINPUT\_CAPS\_NO\_NAVIGATION   | 장치에 메뉴 탐색 버튼(START, BACK, DPAD)이 없습니다.                                            |

*Gamepad*\
형식: [XINPUT\_GAMEPAD](/reference/input/xinputongameinput/structs/xinput_gamepad)

사용 가능한 컨트롤러 기능과 컨트롤 해상도를 설명하는 [XINPUT\_GAMEPAD](/reference/input/xinputongameinput/structs/xinput_gamepad) 구조체입니다.

*Vibration*\
형식: [XINPUT\_VIBRATION](/reference/input/xinputongameinput/structs/xinput_vibration)

사용 가능한 진동 기능과 해상도를 설명하는 [XINPUT\_VIBRATION](/reference/input/xinputongameinput/structs/xinput_vibration) 구조체입니다.

## 설명

[XInputGetCapabilities](/reference/input/xinputongameinput/functions/xinputgetcapabilities)는 XINPUT\_CAPABILITIES를 반환하여 지정된 컨트롤러의 특성과 사용 가능한 기능을 나타냅니다.

[XInputGetCapabilities](/reference/input/xinputongameinput/functions/xinputgetcapabilities)는 장치가 지원하는 입력을 나타내도록 구조체 멤버를 설정합니다. 디지털 버튼과 같은 이진 상태 컨트롤의 경우, 해당 비트는 컨트롤이 장치에서 지원되는지 여부를 반영합니다. 엄지 스틱과 같은 비례 컨트롤의 경우 값은 해당 컨트롤의 해상도를 나타냅니다. 컨트롤이 해당 수준까지 해상도를 제공하지 않음을 나타내기 위해 최하위 비트 중 일부는 설정되지 않을 수 있습니다.

SubType 멤버는 존재하는 컨트롤러의 특정 하위 유형을 나타냅니다. 게임은 컨트롤러 하위 유형을 감지하고 자신의 게임 장르에 잘 맞는 하위 유형에 따라 컨트롤러 입력 또는 출력 처리를 조정할 수 있습니다. 예를 들어 자동차 경주 게임은 운전 중인 자동차의 더 정밀한 제어를 제공하기 위해 휠 컨트롤러의 존재를 확인할 수 있습니다. 그러나 타이틀은 하위 유형에 따라 장치를 비활성화하거나 무시해서는 안 됩니다. 게임에서 인식하지 못하거나 특별히 조정되지 않은 하위 유형은 표준 게임패드인 XINPUT\_DEVSUBTYPE\_GAMEPAD로 처리되어야 합니다.

이전 XUSB Windows 드라이버는, 특히 무선 장치에 대해 불완전한 기능에 대한 정보를 보고합니다. 최신 XUSB Windows 드라이버는 유선 및 무선 장치에 대한 완전한 지원을 제공하며, 보다 완전하고 정확한 기능 플래그를 제공합니다.

## 요구 사항

**헤더:** XInputOnGameInput.h

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

## 참고 항목

[XInput을 GameInput으로 이식](/build/core-features/common/input/porting/input-porting-xinput)\
[XInputOnGameInput](/reference/input/xinputongameinput/xinputongameinput_members)


## Related topics

- [XInputGetCapabilities](/ko/reference/input/xinputongameinput/functions/xinputgetcapabilities.md)
- [XInputOnGameInput](/ko/reference/input/xinputongameinput/xinputongameinput_members.md)
- [XINPUT_GAMEPAD](/ko/reference/input/xinputongameinput/structs/xinput_gamepad.md)
- [XINPUT_KEYSTROKE](/ko/reference/input/xinputongameinput/structs/xinput_keystroke.md)
- [XINPUT_STATE](/ko/reference/input/xinputongameinput/structs/xinput_state.md)
