跳转到正文

未连接控制器
LT (6)RT (7)LB (4)RB (5)LS(10)RS(11)12131415Y(3)X(2)B(1)A(0)891716

如何使用: 按下控制器上的任意实体按键。观察画面上亮起的区块及其对应的逻辑编号 (Index)。如果亮起的区块与您按下的实体按键不符,代表有软件修改了映射,或是驱动程序判定有误。

即时事件记录

等待输入...

原始轴向数据

轴 00.00000
轴 10.00000
轴 20.00000
轴 30.00000

Standard Gamepad:统一的网页标准

W3C 如何透过 17 个按键与 4 个轴向,定义跨平台控制器的未来?

W3C 标准

Standard Gamepad 按键布局

Gamepad API 规定了一套固定的「标准控制器 (Standard Gamepad)」版面: 4 个正面面板按键 (Index 0-3,对应 ABXY)、 4 个肩键/扳机 (Index 4-7,对应 LB/RB/LT/RT)、 系统键 (Index 8-9) 等。

按键编号快速对照

0-3: A/B/X/Y (正面面板)
10-11: LS/RS (摇杆下压)
4-5: LB/RB (肩键)
12-15: 十字键 (D-Pad)
6-7: LT/RT (扳机)
16+: Home/Share (扩充键)

轴向数据 (Axes)

0/1: 左摇杆 X/Y 轴 2/3: 右摇杆 X/Y 轴 (数据范围 -1.0 到 1.0)

Standard Gamepad API

为什么我的手柄映射是错的?

DirectInput、XInput、不同驱动程序... 揭开按键错乱背后的真相

DirectInput 的混乱

旧版的 DirectInput 并没有规定按键顺序,各家厂商可自由定义。PS 手柄的 "×" 键可能是 Index 0,也可能是 Index 1。这意味着: 相同的实体按键,在不同驱动程序下会有完全不同的编号。

驱动层级的映射修改

像 DS4Windows 或 BetterJoy 这样的工具,会将您的手柄「伪装」成 Xbox 控制器。这会强制修改按键映射以符合 Standard Gamepad 的规范。这是 预期中的正常行为,并非故障。

常见问题

关于控制器按键配置的所有疑问

Q为什么我的十字键 (D-Pad) 显示在 Axes 里而不是 Buttons?

某些旧款手柄 (例如使用原厂驱动的 Xbox 360 控制器) 会将十字键实作为类比轴向 (Axis 6/7) 而非四个独立的按键。这是硬件设计与驱动的双重结果,浏览器只是如实反映系统接收到的状态。

Q为什么 LT/RT 有时是按键,有时是轴向?

这取决于驱动模式。在 XInput 模式下,LT/RT 通常是按键 6/7。但在 DirectInput 模式下,它们可能会合并成一个类比轴。Standard Gamepad 规范要求将扳机定义为按键 (但会同时回报压力值)。

Q我可以自己修改网页中的按键映射吗?

不行。浏览器的 Gamepad API 是唯读的。解决方案:① 使用系统层级工具 (如 AntiMicro、JoyToKey);② 在游戏内自订按键;③ 更换驱动程序软件 (例如 DS4Windows)。

Q为什么我的手柄显示有 20 几个按键?

部份进阶控制器 (如飞行摇杆、赛车方向盘) 拥有多达数十个实体按键。浏览器会尝试列出所有按键,但 Standard Gamepad 仅定义了前 17 个。第 18 个之后的按键就没有标准的对应名称了。

免费线上按键映射测试器

为什么按下 A 画面上却显示 B?透过线上测试工具来揭开底层驱动逻辑的面纱。这是在 PC 上检测按键问题及排除按键映射错误的最佳方法。

XInput 标准协定

多数 PC 游戏与浏览器皆遵循 Xbox 360 手柄布局标准。只要连接至系统,无论您的手柄是何种品牌,系统都会自动将按键对应至 0-16 的标准索引值。

按键 0: A (底部)
按键 1: B (右侧)
按键 2: X (左侧)
按键 3: Y (上方)

常见的映射问题

  • 任天堂布局冲突: Switch 手柄硬件上是「右 A,底 B」,但 PC 的系统默认会读成「底 A,右 B」。如果测试时觉得按键被反转了,是因为协定差异所致,可透过 Steam Input 修正。
  • 背键/巨集检测: 如果您使用了背键映射或巨集功能,此工具会显示重新映射后的逻辑按键。例如,若将背键绑定为 A,按下它时工具就会亮起按键 0 (Button 0)。

关于 API 索引 (Indices)

索引 0-3: 传统功能按键 (ABXY)
索引 4-5: 肩键 (LB/RB)
索引 6-7: 扳机 (LT/RT)
索引 8-9: 选择/开始键 (Select/Start)
索引 10-11: 摇杆下压键 (L3/R3)
索引 12-15: 十字键 (D-Pad)
索引 16: 首页键 (Home)
索引 17: 分享/触控键 (Share/Touch)