참고 항목
GameInput 마우스 및 키보드 디바이스는 API에 별도로 정의되며 Windows에서 특별한 의미가 있으므로 다른 곳에서도 다룹니다. 자세한 내용은 키보드 및 마우스 HID 클라이언트 드라이버 개발을 참조하세요.
GameInput은 컨트롤러, 게임 패드, 비행 스틱, 아케이드 스틱, 레이싱 휠 및 UI 탐색 컨트롤러를 포함하여 다양한 장치를 나타냅니다. 각 디바이스 유형에는 디바이스와 상호 작용하는 데 사용할 수 있는 고유한 인터페이스가 있습니다. 이러한 인터페이스 중 하나에 하드웨어 디바이스가 표시되는지 여부는 디바이스가 게임 입력 컨트롤러에 대한 기존 Windows 드라이버 프로토콜 중 하나를 준수하는지 또는 일반 HID 디바이스인지에 따라 달라집니다.
XInput 호환 디바이스의 경우 GameInput API는 이러한 디바이스를 컨트롤러, 게임 패드 및 UI 탐색 컨트롤러로 열거합니다. 이러한 디바이스의 매핑은 프로토콜에 의해 엄격하게 결정되며 현재 추가 단추가 지원되지 않습니다. 이러한 디바이스는 이중 또는 쿼드 럼블 효과도 지원합니다. 이는 왼쪽 및 오른쪽 모터와 왼쪽 및 오른쪽 트리거에 해당합니다. XInput에는 XUSB, XInputHID 및 GIP(게임 입력 프로토콜)의 세 가지 주요 와이어 프로토콜이 있습니다. 콘솔에서는 GIP 디바이스만 지원됩니다. 이러한 모든 프로토콜에 대한 자세한 내용은 하드웨어 디바이스용 XInput API 설명서에서 확인할 수 있습니다. PC에서는 디바이스가 XInputHID 드라이버와 인터페이스하는 것이 좋습니다. 게임 패드를 제외한 다른 GIP(게임 입력 프로토콜) 디바이스의 경우 GameInput API는 연결 시 표시되는 메타데이터에 따라 이러한 디바이스를 플라이트 스틱, 아케이드 스틱, 레이싱 휠 또는 UI 탐색 컨트롤러로 열거합니다. 콘솔과 PC 모두에 해당합니다. 자세한 내용은 GIP(게임 입력 프로토콜) 설명서에서 확인할 수 있습니다.
HID 디바이스의 경우 GameInput은 디바이스가 운영 체제에 표시되는 방식에 많은 유연성을 제공합니다. 즉, HID 디바이스는 표준 게임 컨트롤러 프로토콜에 정의된 것 이상으로 광범위한 기능과 기능을 노출할 수 있습니다. 예를 들어 레이싱 휠 장치는 GameInput에 게임 패드 및 플라이트 스틱으로 표시될 수 있습니다. 디바이스에서 사용할 수 있는 단추, 스위치 및 축의 전체 목록은 디바이스의 HID 보고서 설명자에 의해 정의되고 의 인터페이스 GetControllerButtonStateGetControllerButtonCount 를 통해 IGameInputReading 노출되며, 축 또는 스위치를 가져오기 위한 동인 호출입니다. 게임 패드 또는 레이싱 휠과 같은 다른 인터페이스에 매핑하기 위해 GameInput은 Windows 레지스트리에서 일련의 매핑을 활용합니다. 이러한 매핑은 WGI(Windows.Gaming.Input) API와 공유됩니다. 자세한 내용은 게임 컨트롤러용 레지스트리 데이터 페이지에서 찾을 수 있습니다. IHV(독립 하드웨어 공급업체)는 드라이버 설치의 일부로 경로에 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GameInput\Devices 레지스트리 매핑을 추가할 수 있습니다. GameInput API는 게임과 함께 재배포될 API의 향후 릴리스와 함께 일반 디바이스에 대한 기본 매핑을 주기적으로 추가합니다. IHV 매핑은 기본 매핑보다 우선합니다.
참고 항목
GameInput 개요
XInput 게임 컨트롤러 API
GIP(게임 입력 프로토콜) / XInputHID 드라이버 설명서(다운로드)
게임 컨트롤러용 레지스트리 데이터