Windows UWP中对Xbox one的控制器支持

我想知道我应该如何处理针对Xbox One的UWP应用程序的输入。 我注意到了DirectInput,但是我看到了两个与我的用例有关的问题:

  1. 从MSDN ,它似乎只支持Xbox 360控制器

    XInput是一个API,允许应用程序从Xbox 360 Controller for Windows接收输入。 支持控制器隆隆效果和语音输入和输出。

  2. DirectX及其所有API(Direct2d,Direct3D,Xinput等)仅在C / C ++上受支持。 这意味着即使Xinput支持Xbox one控制器,我也无法使用C#或JavaScript来开发真正的通用应用程序。

在Windows UWP应用程序上支持Xbox One控制器支持,我有哪些选项(至少就C#而言)?

看一下Windows.Gaming.Input命名空间。 它的GamePad类符合Universal API合约,适用于所有设备系列和语言。

要使用源代码支持@Rob Caplan – MSFT,Microsoft Developer Network的这篇博客指出:

Windows 10: Windows.Gaming.Input命名空间中有一个用于通用Windows应用程序的新WinRT API。 此API 支持Xbox 360 Common Controller和Xbox One控制器 ,包括访问左/右触发电机。 最新版本的GamePad是在为Windows 10构建时使用这个新API实现的 。 请注意,现有的基于XInput的Windowsapp store应用程序可以链接xinputuap.lib,后者是适用于通用Windows应用程序的新API的适配器 – 此适配器也不存在耳机音频。