2

在我简单的想法中,发送一个漂亮的操纵杆图像似乎很有用,其中包含图像上按钮和轴位置的索引。可以通过 XInput 或 DirectInput API 查询这样的事情吗?是否是特定于驱动程序的,如果是,哪些驱动程序支持此功能?

特别是,我想支持罗技滚轮和 XBOX 360 控制器。Logitech Profiler 似乎带有此信息(或从驱动程序中提取)。它也可以在我的代码中访问吗?

我看到游戏控制器属性中显示了操纵杆的图像,但我假设整个属性页面都是从驱动程序报告的?

4

2 回答 2

0

由于 Windows XInput API 是专门为 Xbox 360 控制器创建的,因此可以对控制器布局进行大量假设。即使是现在,在 XBOne 游戏手柄的官方驱动程序发布之后,官方API文档还是不遗余力地明确将讨论限制在 360 手柄上。

于 2014-12-30T18:32:17.193 回答
0

XInput 不提供此功能,也不应该提供此功能,XInput 是用于访问控制器状态和控制器功能的接口。这是您可以在代码中手动检测到的东西,找到正确的设备 ID,我相信这也是 Logitech Profiler 所做的(因为它是 Logitech 的自定义应用程序),它只是将图像作为程序中的资源本身。

通常的做法是您联系 Microsoft、Sony、Nintendo 或 Logitech,他们将获得其控制器的高质量图像,这些图像已获准在游戏中使用。特别是对于主机游戏中的控制器图像,您需要遵循某些要求。Windows 和其他操作系统的游戏不遵循相同的要求,但您仍然应该能够从 Microsoft 和 Logitech 检索此信息。

通过自己检索资源,您还可以将它们转换为适合您呈现它们的界面的格式。

于 2014-01-13T21:34:28.273 回答