手柄测试与摇杆漂移检测

检测摇杆漂移的方法是松开两个摇杆,测几秒钟。静止偏差超过约 12% 就怀疑有漂移。浏览器无法测量轮询率。

请随意按一下手柄上的任意按键来连接。

摇杆漂移检测

把手柄放下,松开两个摇杆。测试期间不要碰它。

震动测试

问题解决了吗?

使用方法

  1. 用 USB 或蓝牙连接手柄,然后随意按一下任意按键。手柄发出第一次输入之前,浏览器不会显示它。
  2. 按下按键并推动摇杆。被按下的按键会亮起,扳机显示 0 到 100% 的数值。圆圈显示摇杆位置,数字是 -1 到 1 的轴数值。
  3. 做漂移检测时,把手柄放下,松开两个摇杆,点击开始。5 秒后会给出每个摇杆的最大偏差、平均偏差和建议死区。
  4. 如果浏览器和手柄支持,震动按钮可以测试马达。连接了多个手柄时,从列表中选择一个。

计算方法

页面在屏幕的每一帧读取 Gamepad API。摇杆轴的范围是 -1 到 1,静止的摇杆两个轴都应该是 0。

漂移检测会收集 5 秒内的每一帧。样本的偏差是到中心的距离,即 sqrt(x² + y²)。页面显示最大值、平均值和平均静止位置 (X, Y)。

建议死区是最大偏差向上取整到整数百分比,再加 1 个百分点。正常、轻微、疑似漂移的标签使用固定界限(约 5% 和 12%)。这只是经验法则,不是厂商标准,也不是诊断。

如何看漂移结果

摇杆漂移是指没碰摇杆,光标或视角却在动。常见原因是电位器磨损、灰尘和弹簧松动。任何摇杆在静止时都有一点小偏差,所以游戏才会设置死区。

最大偏差标签可以尝试
低于 5%正常无需处理
5% 到 12%轻微在游戏设置里把死区调到 10% 到 15%,通常就能掩盖
高于 12%疑似漂移清理摇杆周围,换一台设备再测,然后考虑维修或保修

手柄没有被识别时

  • 页面加载完成后再按一下按键。Chrome、Edge 和 Firefox 要等到第一次输入后才会显示手柄。
  • 关闭 Steam、主机配套应用,以及其他可能独占手柄的游戏。
  • PlayStation 和 Switch 手柄在大多数浏览器里可以用 USB 连接。蓝牙连接请先在系统设置里配对。
  • 如果按键显示成 #0 这样的编号,说明浏览器没有报告标准布局。摇杆和数值仍然可用。

测试时的好习惯

  • 把手柄放在桌上做漂移检测,避免手碰到摇杆。
  • 重复两三次。真正的漂移每次都会出现,偶然碰一下则不会。
  • 有线和无线分开测,因为电量不足也会造成奇怪的读数。

常见问题

怎么做摇杆漂移检测?

连接手柄,按一下按键让浏览器识别,放在桌上,然后点击漂移区的开始。5 秒内不要碰它。结果会显示每个摇杆的最大偏差、平均偏差和建议死区。

能显示手柄的轮询率吗?

不能。Gamepad API 每个屏幕帧只给页面一次快照,所以浏览器无法测出手柄真实的轮询率。这里即使出现一个数字,也只是屏幕刷新率,而不是手柄的。

死区该设多少?

以建议值为起点,把游戏里的死区设得略高一点。死区越大越能掩盖漂移,但摇杆的细小动作也会被忽略。

为什么摇杆从来不是精确的 0?

模拟摇杆有公差,静止时有很小的读数是正常的。只有偏差很大或持续变大,才说明可能漂移。

为什么没有震动?

震动需要浏览器和连接方式开放震动马达。通常在 Chrome 和 Edge 的 USB 连接下可用,Safari 和许多蓝牙连接则没有。

会向服务器发送什么吗?

不会。一切都在你的浏览器里运行,不会保存或上传任何有关手柄的信息。