Versi XInput
XInput adalah API lintas platform yang telah dikirim untuk digunakan di Xbox dan Windows. Di Xbox, XInput dikirim sebagai pustaka statis yang dikompilasi ke dalam game utama yang dapat dieksekusi. Di Windows, XInput disediakan sebagai DLL yang diinstal ke folder sistem sistem operasi.
Ada tiga versi DLL XInput saat ini. Pilih versi XInput yang sesuai berdasarkan fungsionalitas XInput yang Anda gunakan dan versi Windows yang ingin Anda dukung.
- XInput 1.4: XInput 1.4 dikirim sebagai bagian dari Windows 10. Gunakan versi ini untuk membangun aplikasi UWP.
- XInput 9.1.0: XInput 9.1.0 dikirim sebagai bagian dari Windows Vista, Windows 7, dan Windows 8. Gunakan versi ini jika aplikasi desktop Anda dimaksudkan untuk berjalan pada versi Windows ini dan Anda menggunakan fungsionalitas XInput dasar.
- XInput 1.3: XInput 1.3 dikirim sebagai komponen yang dapat didistribusikan ulang di DirectX SDK dengan dukungan untuk Windows Vista, Windows 7, dan Windows 8. Gunakan versi ini jika aplikasi desktop Anda dimaksudkan untuk berjalan pada versi Windows ini dan Anda memerlukan fungsionalitas yang tidak didukung oleh XInput 9.1.0.
XInput 1.4
XInput 1.4 dikirim hari ini sebagai komponen sistem di Windows 8 sebagai XINPUT1_4.DLL. Ini tersedia "kotak masuk" dan tidak memerlukan distribusi ulang dengan aplikasi. Windows Software Development Kit (SDK) berisi header dan pustaka impor untuk ditautkan secara statis terhadap XINPUT1_4.DLL. Untuk mengunduh Windows 8 SDK, lihat Unduhan untuk mengembangkan aplikasi desktop.
XInput 1.4 memiliki keunggulan utama ini dibandingkan versi XInput lainnya:
- Ini adalah satu-satunya versi yang dapat digunakan di aplikasi C++/DirectX Windows Store.
- Fungsi XInputGetAudioDeviceIds baru menyediakan string ID perangkat audio yang dapat Anda gunakan untuk membuka perangkat suara atau audio mastering XAudio2 untuk headset yang dilampirkan ke pengontrol. Fungsi XInputGetDSoundAudioDeviceGuids tidak tersedia dalam versi ini.
- Menyediakan pelaporan kemampuan perangkat yang ditingkatkan termasuk bendera XINPUT_CAPS_WIRELESS, XINPUT_CAPS_FFB_SUPPORTED, XINPUT_CAPS_PMD_SUPPORTED, dan XINPUT_CAPS_NO_NAVIGATION serta pelaporan XINPUT_CAPS_VOICE_SUPPORTED yang lebih akurat. Bendera ini digabungkan dalam anggota Bendera dari struktur XINPUT_CAPABILITIES . Fungsi XInputGetCapabilities mengembalikan XINPUT_CAPABILITIES.
XInput 9.1.0
Seperti XInput 1.4, XInput 9.1.0 dikirim hari ini sebagai komponen sistem di Windows 10, Windows 8.x, Windows 7, dan Windows Vista sebagai XINPUT9_1_0.DLL. Ini dipertahankan terutama untuk kompatibilitas mundur dengan aplikasi yang ada. Ini memiliki set fungsi yang berkurang sehingga kami sarankan Anda menggunakan XInput 1.4, jika memungkinkan. Tetapi lebih mudah digunakan untuk aplikasi yang harus berjalan pada versi Windows tingkat bawah tetapi tidak memerlukan fungsionalitas audio tambahan yang disediakan oleh XInput 1.4 atau XInput 1.3.
Windows SDK berisi header dan pustaka impor untuk ditautkan secara statis terhadap XINPUT9_1_0.DLL.
XInput 9.1.0 memiliki kerugian ini atas versi XInput lainnya:
- Untuk alasan kompatibilitas mundur, XInputGetCapabilities dalam versi XInput ini mengembalikan informasi kemampuan tetap. Terlepas dari perangkat pengontrol yang terpasang, XInputGetCapabilities di XInput 9.1.0 akan selalu melaporkan subjenis perangkat GAMEPAD. Ini tidak akan mengembalikan bit kemampuan XINPUT_CAPS_WIRELESS meskipun perangkat nirkabel tersambung.
- Anda tidak dapat menentukan headset untuk ID pengguna tertentu. Fungsi XInputGetAudioDeviceIds tidak tersedia dan fungsi XInputGetDSoundAudioDeviceGuids tidak akan mengembalikan hasil pada Windows 8.x atau Windows 10.
- Fungsi XInputEnable, XInputGetBatteryInformation, dan XInputGetKeystroke tidak tersedia.
XInput 1.3
Beberapa versi XInput sebelumnya telah disediakan sebagai DLL yang dapat didistribusikan ulang di DirectX SDK. Versi XInput pertama yang dapat didistribusikan ulang, XInput 1.1, dikirim dalam rilis April 2006 dari DirectX SDK. Versi terakhir yang dikirim di DirectX SDK adalah XInput 1.3, tersedia dalam rilis Juni 2010 dari DirectX SDK warisan. DirectX SDK tidak lagi tersedia di Unduhan Microsoft.
Anda dapat menggunakan XInput 1.3 untuk aplikasi yang mendukung versi Windows tingkat bawah dan memerlukan fungsionalitas yang tidak disediakan oleh XInput 9.1.0 (yaitu, pelaporan subjenis yang benar, dukungan audio, dukungan pelaporan baterai eksplisit, dan sebagainya).