0

在对我的一个问题发表评论之后,我正在尝试开始使用 DirectInput。

我完全不熟悉它,我根本不知道如何开始。命名空间似乎是 Microsoft.DirectX.DirectInput 但我似乎无法在我的参考文献中找到它。它在几个地方说您只需从我的项目中的引用中添加它,但我找不到它。我检查了 DirectX SDK,但它现在似乎是 Windows SDK 的一部分,并且 Windows SDK 已经随 Windows 8 一起安装,所以我不应该做任何事情吗?

我找到了几个替代方案,其中 SharpDX 听起来不错。我也无法从这个开始......我已经安装了 SharpDx.Input nuGet 包,但我似乎无法使用在其他地方可以找到的代码,比如这里new DirectInput()例如,Visual Studio 根本无法识别。

4

1 回答 1

0

“Microsoft.DirectX.DirectInput”程序集是托管 DirectX 1.1,已弃用。此外,VS 2013 默认使用旧版 Managed DirectX 1.1 不支持的 .NET 4.x。请参阅DirectX 和 .NET

无论是由 C# 还是 C++ 使用,底层 DirectInput 组件都是遗留组件,不建议将其用于鼠标或键盘。对于 Xbox One 和 Xbox 360 通用控制器,我们建议使用 XINPUT。要使用传统的 HID 设备(游戏杆、PS3 控制器、某些触觉控制器等),您仍然使用 DirectInput。有关在 Windows 8.x 上使用 XINPUT,请参阅此博客。要从 C++ 中使用,您应该查看DirectX Tool Kit,尤其是GamePad类。

于 2015-01-07T00:58:03.633 回答