PadBench

說明
開啟測試工具

說明內容尚未翻譯成此語言,本頁以簡體中文顯示。

工作原理

识别手柄

每个手柄都会表明自己的身份:代表厂商的厂商 ID、代表产品的产品 ID,以及一个名称。PadBench 在它的手柄列表中查找这些信息,从而为手柄命名,按其布局绘制,并按印在按键上的标识标注按键。

ID 与名称

这个列表来自 SDL 的手柄列表、社区维护的 SDL_GameControllerDB、USB ID 列表,以及 PadBench 自己对研究过的手柄所做的记录。无论连接什么手柄,每位访问者加载的都是同一个文件,因此加载它不会透露任何关于你的手柄的信息。

浏览器会尽量传递这些信息:Chrome 和 Firefox 提供 ID 和名称,Safari 只提供名称。在 Windows 上,对于 Xbox 手柄或任何处于 XInput 模式的手柄,Chrome 和 Firefox 都既不提供 ID 也不提供名称,因此 PadBench 只能说明它是一个 XInput 手柄。显示的名称是 PadBench 为该型号取的名称,而不是许多手柄报告的冗长或笼统的名称,例如 Wireless Controller。

手柄的标识

许多手柄借用其他产品的 ID,以便游戏和主机能够识别它们:第三方手柄标识为 Xbox 360 手柄,街机摇杆标识为 DualShock 4,GP2040-CE 主板在每种模式下标识为不同的手柄。仅凭借用的 ID 无法确定型号。此时,主区域会在手柄名称下方显示它标识为哪个手柄,例如 Razer Panthera;而它报告的名称仍可能说明它到底是哪个手柄。

对电脑而言,有多种模式的手柄在每种模式下就是它所标识的那种手柄,因此同一块主板可以先显示为 Xbox 手柄,切换模式后又显示为 Switch 手柄。这是正常现象,说明模式切换已经生效。

这是哪个手柄?

当 ID 和名称符合多个型号时,手柄的“手柄”标签页会询问“这是哪个手柄?”,并列出最多五个型号,根据你按过的控件缩小范围:你按过触摸板的手柄,必定是带触摸板的型号。如果符合的型号超过五个,或手柄既不报告 ID 也不报告名称,则改为让你在所有型号中搜索。

从此以后,手柄就以你的选择命名,布局和按键标识也随之确定;对于具有这些 ID 的手柄,只要它报告的名称不变,此浏览器就会记住你的选择。既不报告 ID 也不报告名称的手柄(例如 Windows 上 Chrome 中的 Xbox 手柄)只在保持连接期间被记住。“都不是”会停止询问,“不是这个手柄?”会再次询问。如果列表中没有你的手柄,请通过“反馈”告诉我们。

编号的控件

PadBench 没有解码器的手柄会通过其自身的描述符读取,并以编号报告控件,由映射说明哪个编号对应哪个控件:映射可以来自该手柄的记录、具有相同 ID 的所有手柄共用的映射、SDL_GameControllerDB,或你自己的引导式采集或逐一检查控件。没有任何映射涵盖的手柄会按通用手柄绘制,其摇杆和扳机根据描述符的描述推测,按键编号为 B0、B1 等,其他轴编号为 A0、A1 等。

此时会有一条提示,提出根据你按下的四个按键推测其余按键。PadBench 从 SDL_GameControllerDB 中找出按键编号与你的按键相符的手柄,并按其中大多数手柄的命名方式为其余每个按键命名。这对大多数手柄是正确的,但并非全部,因此另一条提示会说明这些名称是推测的,并提供“逐一检查控件”,根据你按下的控件为每个控件命名。

对于没有布局可用的手柄,浏览器只提供编号的按键。Windows 和 Mac 上的 Chrome、Edge 和 Firefox 的编号方式与 PadBench 通过描述符读取手柄时相同,因此 SDL_GameControllerDB 中该手柄的映射或推测结果在这些浏览器中同样能为按键命名。其他浏览器(例如 Safari)按自己的顺序编号:在这些浏览器中,除非手柄的记录中有适用于该浏览器的映射,否则手柄会保留编号,而“逐一检查控件”可以为它们命名。

详见“录制和采集”

隱私權
關於