Prise en charge du contrôleur pour Xbox one dans Windows UWP

Je me demande comment je suis censé gérer les entrées pour les applications UWP ciblant Xbox One. J’ai remarqué DirectInput, mais je vois deux problèmes pour mes cas d’utilisation:

  1. À partir de MSDN , il ne semble prendre en charge que les contrôleurs Xbox 360.

    XInput est une API qui permet aux applications de recevoir des entrées du contrôleur Xbox 360 pour Windows. Les effets de grondement du contrôleur, ainsi que les entrées et sorties vocales sont pris en charge.

  2. DirectX et toutes ses API (Direct2d, Direct3D, Xinput, etc.) ne sont pris en charge que par C / C ++. Cela signifie que même si Xinput prenait en charge les contrôleurs Xbox one, je ne pouvais pas utiliser C # ou JavaScript pour développer des applications véritablement universelles.

Quelles sont mes options (du moins en ce qui concerne C #) pour prendre en charge la prise en charge du contrôleur Xbox One sur une application Windows UWP?

Jetez un coup d’œil à l’espace de noms Windows.Gaming.Input . Sa classe GamePad figure dans le contrat de l’API universel et est disponible dans toutes les familles d’appareils et dans toutes les langues.

Pour sauvegarder @Rob Caplan – MSFT avec une source, ce blog du réseau de développeurs Microsoft indique:

Windows 10: Il existe une nouvelle API WinRT dans l’espace de noms Windows.Gaming.Input pour les applications Windows universelles. Cette API prend en charge le contrôleur commun Xbox 360 et le contrôleur Xbox One , y compris l’access aux moteurs de déclenchement gauche / droit. La dernière version de GamePad est mise en œuvre à l’aide de cette nouvelle API lorsqu’elle est conçue pour Windows 10 . Notez que les applications Windows Store basées sur XInput existantes peuvent être liées à xinputuap.lib, qui est un adaptateur pour la nouvelle API pour les applications Windows universelles. Cet adaptateur n’existe pas non plus dans le casque audio.