GameInput
GameInput API는 게임 컨트롤러, 플라이트 스틱, 레이싱 휠, 터치 입력 등 다양한 장치에서 사용자 입력을 캡처하는 데 사용됩니다.이 페이지는 현재(최신) GameInput API를 문서화합니다. 각 멤버의 버전 기록은 개별 참조 페이지에 명시되어 있습니다. 이전 API 버전에만 존재했던 멤버는 아래의 제거된 멤버 섹션에 나열되어 있습니다. API의 최신 런타임은 API의 사용 가능한 모든 버전을 지원하므로, 제거된 멤버도 이전 버전용 헤더와 함께 계속 사용할 수 있습니다.
인터페이스
| 인터페이스 | 설명 |
|---|---|
| IGameInputDevice | 입력 장치를 정의합니다. |
| IGameInputDispatcher | GameInput API에서 관리하는 백그라운드 작업의 스케줄링에 대한 수동 제어를 제공합니다. |
| IGameInputForceFeedbackEffect | 호환되는 입력 장치의 포스 피드백 효과를 설명합니다. |
| IGameInputMapper | GameInput이 장치를 매핑하는 방식에 대한 정보를 제공합니다. |
| IGameInputRawDeviceReport | 입력 장치와 주고받는 원시 바이트 버퍼를 나타냅니다. |
| IGameInputReading | 단일 입력 업데이트에 대한 데이터를 포함합니다. |
| IGameInput | 장치 입력 스트림에 대한 접근을 제공하는 프로세스별 싱글톤입니다. |
함수
| 함수 | 설명 |
|---|---|
| GameInputCreate | IGameInput 인터페이스의 인스턴스를 검색합니다. |
| GameInputDeviceCallback | 장치 연결 및 연결 해제 이벤트에 대한 콜백을 정의합니다. |
| GameInputKeyboardLayoutCallback | 키보드 레이아웃 변경 이벤트에 대한 콜백을 정의합니다. |
| GameInputReadingCallback | 새 판독 값 도착 이벤트에 대한 콜백을 정의합니다. |
| GameInputSystemButtonCallback | Guide 또는 Share 버튼 누름 및 놓음 이벤트에 대한 콜백을 정의합니다. |
구조체
열거형
| 열거형 | 설명 |
|---|---|
| GameInputArcadeStickButtons | 아케이드 스틱의 입력을 열거합니다. |
| GameInputDeviceFamily | 입력 장치 계열을 열거합니다. |
| GameInputDeviceStatus | 입력 장치가 가질 수 있는 상태를 열거합니다. |
| GameInputElementKind | 주어진 입력의 요소 종류를 열거합니다. |
| GameInputEnumerationKind | 입력 장치를 열거할 때의 동작 유형을 열거합니다. |
| GameInputFeedbackAxes | 입력 장치에서 사용 가능한 포스 피드백 모터의 방향 유형을 열거합니다. |
| GameInputFeedbackEffectState | 포스 피드백 효과의 상태를 열거합니다. |
| GameInputFlightStickAxes | 플라이트 스틱 축을 열거합니다. |
| GameInputFlightStickButtons | 플라이트 스틱 버튼을 열거합니다. |
| GameInputFocusPolicy | 입력 장치의 포커스 정책을 열거합니다. |
| GameInputForceFeedbackEffectKind | 포스 피드백 효과에 적용할 수 있는 시간에 따른 크기 효과의 유형을 열거합니다. |
| GameInputGamepadAxes | 게임패드 축을 열거합니다. |
| GameInputGamepadButtons | 방향 패드(D-패드)를 포함한 게임패드 버튼을 열거합니다. |
| GameInputKeyboardKind | 키 레이아웃별 키보드 유형을 열거합니다. |
| GameInputKind | 유효한 GameInput 장치 유형을 열거합니다. |
| GameInputLabel | 지원되는 버튼 레이블을 열거합니다. |
| GameInputMouseButtons | 마우스 버튼을 열거합니다. |
| GameInputMousePositions | 마우스 위치 지정 모드를 열거합니다. |
| GameInputRacingWheelAxes | 레이싱 휠의 축을 열거합니다. |
| GameInputRacingWheelButtons | 레이싱 휠의 버튼을 열거합니다. |
| GameInputRawDeviceReportKind | 원시 장치 보고서의 종류를 열거합니다. |
| GameInputRumbleMotors | 입력 장치에 대해 API가 지원하는 진동 모터를 열거합니다. |
| GameInputSensorAccuracy | 센서의 정확도 수준을 열거합니다. |
| GameInputSensorsKind | 유효한 GameInput 센서 유형을 열거합니다. |
| GameInputSwitchKind | 입력 장치에서 지원하는 스위치 유형을 열거합니다. |
| GameInputSwitchPosition | 입력 장치의 스위치 위치를 열거합니다. |
| GameInputSystemButtons | 시스템 제어에 사용되는 버튼을 열거합니다. |
제거된 멤버
다음 멤버는 이전 API 버전에 존재했지만 현재 API에서는 제거되었습니다. 제거된 각 멤버에 대한 전체 문서는 지원 중단된 GameInput API 멤버를 참조하세요.제거된 인터페이스
영구적으로 제거된 인터페이스는 없습니다.IGameInputRawDeviceReport는 v1 및 v2에서 없었지만 현재 API에서 다시 도입되었습니다.
제거된 함수
| 함수 | 마지막 버전 | 설명 |
|---|---|---|
| GameInputGuideButtonCallback | v0 | Guide 버튼 이벤트에 대한 타이틀 정의 콜백. GameInputSystemButtonCallback으로 대체됨. |
제거된 구조체
| 구조체 | 마지막 버전 | 설명 |
|---|---|---|
| GameInputBatteryState | v0 | 입력 장치의 배터리 상태를 설명함. |
| GameInputControllerAxisInfo | v2 | 입력 장치의 축을 설명함. GameInputControllerInfo의 필드로 대체됨. |
| GameInputControllerButtonInfo | v2 | 입력 장치의 버튼을 설명함. GameInputControllerInfo의 필드로 대체됨. |
| GameInputHapticFeedbackMotorInfo | v0 | 햅틱 피드백 모터를 설명함. GameInputHapticInfo로 대체됨. |
| GameInputHapticFeedbackParams | v0 | 햅틱 피드백 효과를 설명함. |
| GameInputHapticWaveformInfo | v0 | 햅틱 피드백 효과의 특성을 설명함. |
| GameInputMotionInfo | v0 | 모션 지원 입력 장치의 측정 가능한 속성을 설명함. |
| GameInputMotionState | v0 | 모션 입력의 상태를 설명함. |
| GameInputRawDeviceItemCollectionInfo | v0 | 원시 장치 항목의 컬렉션을 설명함. |
| GameInputRawDeviceReportItemInfo | v0 | 원시 장치 보고서 항목을 설명함. |
| GameInputString | v0 | 입력 장치에 대한 정보를 포함하는 문자열을 설명함. |
| GameInputTouchSensorInfo | v0 | 입력 장치의 터치 센서를 설명함. |
| GameInputTouchState | v0 | 터치 입력 장치의 상태를 설명함. |
| GameInputUiNavigationInfo | v2 | UI 탐색 버튼의 레이블을 지정함. |
| GameInputUiNavigationState | v2 | UI 탐색 입력의 현재 상태를 제공함. |
제거된 열거형
| 열거형 | 마지막 버전 | 설명 |
|---|---|---|
| GameInputBatteryStatus | v0 | 입력 장치의 배터리 상태를 열거함. |
| GameInputDeviceCapabilities | v0 | 입력 장치의 특정 기능을 열거함. |
| GameInputLocation | v0 | 입력 장치의 부분을 열거함. |
| GameInputMotionAccuracy | v0 | 모션 센서의 정확도 수준을 열거함. |
| GameInputRawDeviceItemCollectionKind | v0 | 원시 장치 항목 컬렉션의 유형을 열거함. |
| GameInputRawDevicePhysicalUnitKind | v0 | 장치 입력과 관련된 물리 단위를 열거함. |
| GameInputRawDeviceReportItemFlags | v0 | 원시 장치 보고서 항목의 유형을 열거함. |
| GameInputTouchShape | v0 | 터치 센서의 모양을 열거함. |
| GameInputUiNavigationButtons | v2 | UI 탐색 버튼을 열거함. |
버전 기록
| 버전 | 변경 사항 |
|---|---|
| v3 | IGameInputMapper 인터페이스 추가. IGameInputRawDeviceReport 인터페이스 재도입(v1/v2에는 없었음). GameInputAxisMapping, GameInputButtonMapping, GameInputControllerInfo, GameInputHapticInfo 구조체 추가. GameInputRawDeviceReportInfo 구조체 및 GameInputRawDeviceReportKind 열거형 재도입(v1/v2에는 없었음). GameInputVersion 구조체 재도입(v1/v2에는 없었음). GameInputElementKind, GameInputFlightStickAxes, GameInputGamepadAxes, GameInputRacingWheelAxes 열거형 추가. GameInputControllerAxisInfo, GameInputControllerButtonInfo, GameInputUiNavigationInfo, GameInputUiNavigationState 구조체 제거. GameInputUiNavigationButtons 열거형 제거. |
| v2 | GameInputSensorsInfo, GameInputSensorsState 구조체 추가. GameInputSensorsKind, GameInputSensorAccuracy 열거형 추가. IGameInputDevice::DirectInputEscape, IGameInputDevice::GetHapticInfo 추가. IGameInputReading::GetSensorsState 추가. GameInputVersion 구조체 재도입(v1에는 없었음). |
| v1 | IGameInputRawDeviceReport 인터페이스, GameInputRawDeviceReportInfo 구조체, GameInputRawDeviceReportKind 열거형 제거. GameInputVersion 구조체 제거. GameInputMousePositions 열거형 추가. v0에서만 구현되지 않은 햅틱, 모션, 터치 유형(GameInputBatteryState, GameInputHapticFeedbackMotorInfo, GameInputHapticFeedbackParams, GameInputHapticWaveformInfo, GameInputMotionInfo, GameInputMotionState, GameInputTouchSensorInfo, GameInputTouchState, GameInputString, GameInputRawDeviceItemCollectionInfo, GameInputRawDeviceReportItemInfo) 제거. |
| v0 | 도입됨. |
