3

我正在尝试从 Xbox One 控制器获取输入,但我无法让它工作。我尝试了 SharpDX,但在从 NuGet 安装 SharpDX 后无法添加“SharpDX.XInput”。我还尝试了 XInputDotNet,并添加了对 XInputDotNetPure 的引用,当我运行我的程序时它会崩溃,并显示错误消息:“尝试加载格式不正确的程序”。如果您知道我可以如何解决此问题,或通过其他方式从 Xbox One 控制器获取输入,如果您能与我分享,我将不胜感激。谢谢!

4

1 回答 1

1

使用了 Sharpdx.XInput 接口。您无需安装任何其他界面即可使 XBOX 控制器正常工作。如果您有 win 8.1,则在 3.0 包中安装会出现问题。发布了新的 beta V4.0,如果启用 beta 标志,您应该可以通过 Nuget 获得它。

声明一个控制器对象

例如。

private Controller m_playerControl;

在你的创作中,使用

 m_playerControl = new Controller(UserIndex.One); 

或 2 等 3、4

您可以测试 Xbox 控制器是否连接:

m_playerControl.IsConnected

去抢国家。

  m_state = m_playerControl.GetState();
        m_lx = m_state.Gamepad.LeftThumbX;
        m_ly = m_state.Gamepad.LeftThumbY;
        m_lt = m_state.Gamepad.LeftTrigger;
        m_lb = m_state.Gamepad.Buttons;

        m_rx = m_state.Gamepad.RightThumbX;
        m_ry = m_state.Gamepad.RightThumbY;
        m_rt = m_state.Gamepad.RightTrigger;

建议您也使用相同的状态对象并覆盖您的游戏手柄等。

于 2017-04-05T20:57:09.853 回答