Xinput
# Xinput

XInput est une API (Application Programming Interface) de la suite DirectX de Microsoft.

## Description

XInput est une interface de programmation pour les contrôleurs/manette de jeu de la « prochaine génération ». Il a été présenté en décembre 2005 aux côtés du lancement de la Xbox 360. Ce jeu d'instructions fournit un soutien complet pour le contrôleurs Xbox 360 sur Windows XP SP1 et les systèmes d'exploitation ultérieurs/supérieurs, et est décrit par Microsoft comme étant plus facile à programmer et nécessitant moins de configuration que DirectInput.

## DirectInput vs XInput

Microsoft n'a pas fait de changements majeurs à DirectInput depuis DirectX 8, et introduit XInput plus tard dans DirectX 9: il reste une certaine confusion à propos de l'état actuel et l'avenir des deux API.

L'API XInput a des limites que ne possède pas DirectInput:

* XInput prend uniquement en charge les contrôleurs de la «prochaine génération». Ce qu'il limite essentiellement à des contrôleurs pour la Xbox 360 qui ont également des pilotes Windows. Joysticks et anciens périphériques à retour de force ne sont pas pris en charge.
* XInput supporte un maximum de quatre contrôleurs à la fois. Ceci est une limite Xbox, reporté sur Windows.
* XInput ne supporte pas les claviers et souris.
* XInput possède un maximum de 4 axes, 10 boutons, 2 gâchettes et 8 directions pour la croix directionnelle par contrôleur, par rapport à DirectInput qui possède 8 axes, 128 boutons, une gamme complète POV.

Cependant, Xinput possède tout de même des avantages comparé à DirectInput

* Certains jeux et émulateurs de console ne reconnaissent pas la manette Xbox comme étant vibrante, l'installation du pilot Xinput suffit généralement à corriger ce problème.
* L'émulateur ePsxe supporte nativement Xinput, ce qui, en plus de corriger le problème d'absence de vibration, configure automatiquement l'assignation des boutons sans nécessiter une intervention de l'utilisateur.
