问题标签 [gamepad]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2974 浏览

c - 使用原始输入在 Windows 上的游戏手柄力反馈(振动)

我目前正在用 C 编写一个跨平台库,其中包括游戏手柄支持。Windows 上的游戏手柄通信由原始输入和 xinput 处理,具体取决于特定的游戏手柄。

虽然 xinput 有助于 xbox360 控制器上的力反馈,但我还没有找到使用原始输入的方法。我有一些可以提供力反馈的游戏手柄,但我找不到通过原始输入来做到这一点的方法。有没有办法做到这一点?

我不喜欢使用 directinput api,因为它已被 Microsoft 弃用和劝阻。

编辑:

由于我已经在很大程度上实现了游戏手柄,也许我可以缩小问题的范围。我怀疑可以通过读取 HIDP_CAPS 结构的 NumberOutputValueCaps 找到游戏手柄中的震动马达数量。这为我所有的测试游戏手柄提供了正确的结果。

我正在使用函数 HidP_GetUsageValue 来读取轴值,效果很好。现在我怀疑调用 HidP_SetUsageValue 应该允许我改变这个输出值,打开震动马达。但是,调用此函数会失败。这个功能应该能够访问震动马达吗?

0 投票
1 回答
9383 浏览

windows - 如何在 Windows 中禁用游戏手柄/操纵杆上的按钮/轴?

在 Windows 98/XP/Vista/7 中,如何禁用操纵杆按钮/轴?

我正在使用通过 USB 适配器连接到我的 PC 的 PlayStation 1 游戏手柄。问题是游戏手柄缺少双模拟摇杆,当我按下其他按钮时,游戏手柄会发送据称来自缺失 Z 轴的幻象信号。

在 Windows 中,游戏手柄被检测为 4 轴 16 按钮操纵杆。它也被认为是“符合 HID 标准的游戏控制器”。

有没有办法编辑驱动程序或注册表以消除幻像输入?

0 投票
1 回答
462 浏览

gamepad - Psychopy IO 游戏手柄

我在 Windows 的独立 PsychoPy 1.80.07 中使用 Builder。我试图弄清楚如何创建一个代码组件来接收来自罗技 F310 游戏手柄的响应。理想情况下,我只想使用触发器。我运行实验时没有收到任何错误代码(这是 Stroop 键盘 IO 演示,其中 IO 键盘代码组件代码替换为以下代码)。它似乎运行良好,但它只是显示第一次试验并等待主题响应,因为它认为它没有听到游戏手柄。另外,我可以运行 XInput Gamepad Coder Demo,一切正常。我是编码新手,所以任何帮助指出我犯了错误的地方都将不胜感激!

这是我的代码组件中的内容:

0 投票
1 回答
127 浏览

android - HTC ONE M7 被视为 GamePad

我开发了一个可以检测设备类型(智能手机普通或游戏手柄)的 APP Android。我在 HTC ONE M7 中做了一个没有连接游戏手柄的测试。但我的代码告诉我这是一个游戏手柄。

这是我的代码:

而对于 HTC ONE M7 的 deviceID = 2,我发现 ((sources & InputDevice.SOURCE_GAMEPAD) == InputDevice.SOURCE_GAMEPAD) 为真。这就是 HTC 被视为 GamePad 的原因。

有谁知道为什么?

0 投票
1 回答
1572 浏览

unity3d - Unity 中的 SharpDX.Direct 输入

我一直在尝试使用 SharpDX.DirectInput dll 将 DirectInput 实现为统一,但是当我创建操纵杆时,它给了我一个错误:

这是我的代码:

}

当我创建操纵杆时发生错误:

0 投票
2 回答
16753 浏览

android - 如何将代码注入现有的 Apk?

我知道这可以反编译和重新编译 apk。而且我看到了这个帖子:之前将代码注入APK ,但我想要的不是反编译或逆向工程

就我而言,我只想制作一些使用与游戏手柄兼容的触摸事件的游戏。我见过一些公司做这样的事情并让安卓游戏与他们的游戏手柄兼容。不幸的是,我没有找到将一些代码注入现有 apk 的解决方案。

所以我的问题是:

有没有办法对 apk 进行一些更改(更改游戏应用程序中的触摸和按键事件)并在其中添加一些代码而不影响真正的源代码?

0 投票
0 回答
340 浏览

javascript - Gamepad API - Gamepad 对象在断开连接后是否仍然存在并在重新连接时重用?

摘要:
我想说明两个或多个“XBox 360 控制器”之间的区别。

背景:
我正在使用 Javascript ( Typescript )为Gamepad API构建 GamepadManager 。GamepadManager 的主要功能是支持在使用特定游戏手柄按钮或轴时调用的回调。(GamepadManager 还使用控制器配置文件列表,专门为特定品牌和型号映射按钮和轴)


问题:
当物理游戏手柄重新连接时,SAME Javascript 游戏手柄对象是否可以重新链接/分配给最初断开的物理游戏手柄?
这可能实际上是自动发生的吗?更好的是,可以手动重新链接吗?


场景:
当物理游戏手柄断开连接时,上述 EventListener 将返回一个事件,其中包含最初用于现在断开连接的物理游戏手柄的游戏手柄对象。事件的游戏手柄对象有一个布尔值来指定物理游戏手柄是否仍然连接......但当然它是断开的,因为它是从断开事件侦听器返回的。对我来说,这意味着游戏手柄对象可以在物理游戏手柄保持断开连接时持续使用,也许在再次重新连接时可以重用。

我在寻找什么:
我希望我的 GamepadManager 足够聪明,可以在断开连接之前将重新连接的物理游戏手柄链接到相同的游戏内可玩角色。
(这样,如果玩家正在使用一个特定的控制器,并且它被断开并重新连接,那么同一个控制器会被记住并且仍然会控制同一个角色)

此外,我希望即使所有 4 个物理游戏手柄都是相同品牌/型号的 Xbox 360 控制器,GamepadManager 也能够区分它们连接到的 USB 端口。

是否有一个特定的 ID/序列号,每个物理游戏手柄必须与其他相同品牌和型号的游戏手柄区分开来?还是 USB 端口是区分 2 个或更多匹配的物理游戏手柄的唯一方法?

或者:
有没有更好的方法来查看如何管理游戏的物理游戏手柄?(横向滚动动作沙盒)

0 投票
1 回答
774 浏览

gml - 如何在具有游戏手柄功能的 Game maker 中显示选择

我正在 Game Maker 工作室制作 Dragon Warrior 类型的 rpg 游戏,但不知道如何获得不使用鼠标的显示选择选项。我已将游戏设置为使用游戏手柄完全运行,但是当我遇到需要玩家反馈(选择选择)的情况时,我无法让游戏手柄正常工作。这是 GML

问题是“show_question();”使用的是 windows 类型的弹出窗口,并且不能与游戏手柄一起使用。

如何仅使用游戏手柄的输入从玩家那里获得反馈?感谢您花时间阅读并帮助解决这个小问题。

0 投票
2 回答
6413 浏览

input - Xbox One 右触发器不工作

我有一个带有 Unity3d 的 Xbox One 控制器设置,当我尝试使用该RT按钮时没有任何反应。

通过以下设置,该RB按钮可以正常工作:

火1

我已经看过这个,但设置它对我来说没有意义。我试过了3rd Axis 0_10th,我试过3rd Axis 0_1了,但这些都是无效的。什么是正确的设置才能工作?

0 投票
1 回答
98 浏览

c++ - 游戏手柄菜单导航以编程方式

我已经使用我脑海中可以想到的所有搜索词搜索了网络,但都无济于事。我想这主要是因为我无法用几个关键字来解释我的问题。无论如何,这是我的问题:

您知道如何在使用控制台的游戏中使用游戏手柄按钮浏览菜单吗?并且当您按右键时,它会自动选择当前控件右侧最近的控件。上下也一样。并且当您按下某个控件并且在原始控件顶部展开另一个菜单列表时,您只能选择一个新控件并且即使它们仍然出现在屏幕上也无法选择其他旧控件?那么,它是如何以编程方式创建的?如果您可以提供实现的 obj-c 代码,我会很高兴,但任何语言都可以。如果不可能,那么伪代码也适用于我。即使是纯文本也适用于我,但我不推荐它,因为我不是母语人士并且可能有理解问题......

基本上,这是我在要点中提出的问题,以防由于我的英语较弱而不清楚上面的内容:

1- 如何使用游戏手柄在菜单中移动。

2-一旦选择了下拉列表,如何将可以选择的控件锁定到从下拉列表中展开的控件。

这几乎就是全部。非常感谢您的帮助!