0

如何在 UWP 应用程序中访问两个 Xbox One 摇杆的坐标?另外,如何检测何时按下 X、Y、A 和 B 按钮?

编辑:当我在 MainPage.xaml.cs 的 MainPage 方法中使用 Gamepad.Gamepads.First() 时,我在 System.Linq.dll 中遇到了“System.InvalidOperationException”类型的异常

4

2 回答 2

2

您应该查看UWP 的游戏技术,尤其是Windows.Gaming.Input API

简而言之:在您访问游戏手柄后:

 var controller = Gamepad.Gamepads.First();

你从它开始阅读GamepadReadings

 var reading = controller.GetCurrentReading();

每个读数都包含有关拇指杆、触发器和按钮的数据。

 var leftThumbstickX = reading.LeftThumbstickX;
 var aButton = (reading.Buttons & GamepadButtons.A);
于 2016-06-05T11:40:52.920 回答
1

不确定拇指杆,但您可以将游戏手柄按钮检测为任何其他按键事件。

只需连接到KeyUp您页面的事件或全局Window.Current.CoreWindow.KeyUp事件并检查游戏手柄按钮,例如VirtualKey.GamepadB.

这适用于应用在 Xbox One 上运行以及使用 USB 电缆将 Xbox One 控制器连接到 PC 时。

于 2016-06-07T11:31:14.677 回答