如何在 UWP 应用程序中访问两个 Xbox One 摇杆的坐标?另外,如何检测何时按下 X、Y、A 和 B 按钮?
编辑:当我在 MainPage.xaml.cs 的 MainPage 方法中使用 Gamepad.Gamepads.First() 时,我在 System.Linq.dll 中遇到了“System.InvalidOperationException”类型的异常
您应该查看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);
不确定拇指杆,但您可以将游戏手柄按钮检测为任何其他按键事件。
只需连接到KeyUp
您页面的事件或全局Window.Current.CoreWindow.KeyUp
事件并检查游戏手柄按钮,例如VirtualKey.GamepadB
.
这适用于应用在 Xbox One 上运行以及使用 USB 电缆将 Xbox One 控制器连接到 PC 时。