GameInput. Les fonctionnalités de GameInput constituent un sur-ensemble de toutes les API d’entrée précédentes. Par conséquent, le portage depuis une API d’entrée précédente est, dans la plupart des cas, un processus simple. Les changements les plus importants découlent généralement du fait que GameInput est centré sur les entrées plutôt que sur les périphériques. Le code qui utilise les API précédentes énumère généralement les périphériques d’entrée avant de lire leurs entrées. Avec GameInput, en revanche, ce n’est pas nécessaire. L’adaptation au modèle centré sur les entrées de GameInput représente généralement l’essentiel des modifications structurelles à apporter au code à porter.
Les rubriques suivantes détaillent les différences entre GameInput et les API d’entrée précédentes. Elles comprennent également des exemples de code qui mettent en évidence les principales différences entre les API.
Portage de Windows.Xbox.Input vers GameInput
Décrit le portage depuis Windows.Xbox.Input du kit de développement logiciel XBOX One d’origine.
Portage de XInput vers GameInput
Décrit le portage depuis XInput.
Utilisation de GameInput en parallèle avec des API plus anciennes
Pour les applications qui souhaitent utiliser du code GameInput en parallèle avec des interfaces et des API plus anciennes, l’API est suffisamment flexible pour permettre également ce cas d’usage. Les applications peuvent ainsi tirer facilement parti de nouvelles fonctionnalités, comme la prise en charge des capteurs et de l’haptique, sans remplacer l’intégralité de leur pile d’entrée. À partir de la version 1 (v1),GameInputDeviceInfo contient un champ pnppath qui représente le chemin du périphérique sous-jacent. Ce champ est identique au chemin figurant dans DIPROPGUIDANDPATH fourni par DirectInput. Les applications peuvent également l’utiliser pour communiquer directement avec le périphérique en appelant CreateFile. Notez que les périphériques GIP (Game Input Protocol) autres que les manettes peuvent ne pas disposer de cette propriété, car ils ne peuvent pas être ouverts directement.
