XInput 버전
XInput은 Xbox 및 Windows에서 사용하기 위해 제공된 플랫폼 간 API입니다. Xbox에서 XInput은 기본 게임 실행 파일로 컴파일되는 정적 라이브러리로 배송됩니다. Windows에서 XInput은 운영 체제의 시스템 폴더에 설치된 DLL로 제공됩니다.
현재 세 가지 버전의 XInput DLL이 있습니다. 사용하는 XInput의 기능 및 지원하려는 Windows 버전에 따라 적절한 버전의 XInput을 선택합니다.
- XInput 1.4: XInput 1.4는 Windows 10의 일부로 제공됩니다. UWP 앱을 빌드하려면 이 버전을 사용합니다.
- XInput 9.1.0: XInput 9.1.0은 Windows Vista, Windows 7 및 Windows 8의 일부로 제공됩니다. 데스크톱 앱이 이러한 버전의 Windows에서 실행되고 기본 XInput 기능을 사용하는 경우 이 버전을 사용합니다.
- XInput 1.3: XInput 1.3은 Windows Vista, Windows 7 및 Windows 8을 지원하는 DirectX SDK에서 재배포 가능 구성 요소로 제공됩니다. 데스크톱 앱이 이러한 버전의 Windows에서 실행되고 XInput 9.1.0에서 지원되지 않는 기능이 필요한 경우 이 버전을 사용합니다.
XInput 1.4
XInput 1.4는 현재 Windows 8의 시스템 구성 요소로 XINPUT1_4.DLL로 제공됩니다. "받은 편지함"에서 사용할 수 있으며 애플리케이션과 재배포할 필요가 없습니다. Windows SDK(소프트웨어 개발 키트)에는 XINPUT1_4.DLL에 대해 정적으로 연결하기 위한 헤더 및 가져오기 라이브러리가 포함되어 있습니다. Windows 8 SDK를 다운로드하려면 데스크톱 앱 개발을 위한 다운로드를 참조 하세요.
XInput 1.4는 다른 버전의 XInput에 비해 다음과 같은 주요 이점이 있습니다.
- C++/DirectX Windows 스토어 앱에서 사용할 수 있는 유일한 버전입니다.
- 새로운 XInputGetAudioDeviceIds 함수는 컨트롤러에 연결된 헤드셋에 대한 XAudio2 마스터링 음성 또는 오디오 디바이스를 여는 데 사용할 수 있는 오디오 디바이스 ID 문자열을 제공합니다. XInputGetDSoundAudioDeviceGuids 함수는 이 버전에서 사용할 수 없습니다.
- XINPUT_CAPS_WIRELESS, XINPUT_CAPS_FFB_SUPPORTED, XINPUT_CAPS_PMD_SUPPORTED 및 XINPUT_CAPS_NO_NAVIGATION 플래그 및 XINPUT_CAPS_VOICE_SUPPORTED 보다 정확한 보고를 포함하여 향상된 디바이스 기능 보고를 제공합니다. 이러한 플래그는 XINPUT_CAPABILITIES 구조체의 Flags 멤버에 결합됩니다. XInputGetCapabilities 함수는 XINPUT_CAPABILITIES 반환합니다.
XInput 9.1.0
XInput 1.4와 마찬가지로 XInput 9.1.0은 현재 Windows 10, Windows 8.x, Windows 7 및 Windows Vista의 시스템 구성 요소로 XINPUT9_1_0.DLL로 제공됩니다. 이는 주로 기존 애플리케이션과의 이전 버전과의 호환성을 위해 기본. 함수 집합이 감소하므로 가능한 경우 XInput 1.4를 사용하는 것이 좋습니다. 그러나 하위 버전의 Windows에서 실행해야 하지만 XInput 1.4 또는 XInput 1.3에서 제공하는 추가 오디오 기능이 필요하지 않은 애플리케이션에는 편리합니다.
Windows SDK에는 XINPUT9_1_0.DLL에 대해 정적으로 연결하기 위한 헤더 및 가져오기 라이브러리가 포함되어 있습니다.
XInput 9.1.0에는 다른 버전의 XInput에 비해 다음과 같은 단점이 있습니다.
- 이전 버전과의 호환성을 위해 이 버전의 XInputGetCapabilities 는 고정된 기능 정보를 반환합니다. 연결된 컨트롤러 디바이스에 관계없이 XInput 9.1.0의 XInputGetCapabilities 는 항상 GAMEPAD의 디바이스 하위 형식을 보고합니다. 무선 장치가 연결되어 있더라도 XINPUT_CAPS_WIRELESS 기능 비트를 반환하지 않습니다.
- 지정된 사용자 ID에 대한 헤드셋을 확인할 수 없습니다. XInputGetAudioDeviceIds 함수를 사용할 수 없으며 XInputGetDSoundAudioDeviceGuids 함수는 Windows 8.x 또는 Windows 10에서 결과를 반환하지 않습니다.
- XInputEnable, XInputGetBatteryInformation 및 XInputGetKeystroke 함수는 사용할 수 없습니다.
XInput 1.3
일부 이전 버전의 XInput은 DirectX SDK에서 재배포 가능 DLL로 제공되었습니다. DirectX SDK의 2006년 4월 릴리스에서 제공된 XInput, XInput 1.1의 첫 번째 재배포 가능 버전입니다. DirectX SDK에서 마지막으로 출시된 버전은 XInput 1.3으로, 레거시 DirectX SDK의 2010년 6월 릴리스에서 사용할 수 있습니다. DirectX SDK는 더 이상 Microsoft 다운로드에서 사용할 수 없습니다.
하위 수준 버전의 Windows를 지원하고 XInput 9.1.0에서 제공하지 않는 기능이 필요한 애플리케이션에 XInput 1.3을 사용할 수 있습니다(즉, 올바른 하위 유형 보고, 오디오 지원, 명시적 배터리 보고 지원 등).