简体中文

Mac 上的手柄输入延迟

Mac 上大多数手柄延迟,按这个顺序用四招就能解决。全屏玩游戏,让游戏模式打开:在装有 macOS Sonoma 或更高版本的 Apple 芯片 Mac 上,它会让手柄的蓝牙采样率翻倍。如果你的手柄能通过线缆传输输入,就用线缆。清理 Mac 周围 2.4 GHz 的空间。如果游戏通过 Steam 运行,试试为这款游戏关掉 Steam Input。蓝牙本身只会带来很小而且稳定的延迟。人们真正察觉到的延迟,通常来自干扰、串流,或者中间多出来的一层。

在 Mac App Store 下载 InputConfigInputConfig 在 Mac App Store 免费提供。支持 macOS 14 或更高版本,无需账户,不追踪,开源。

步骤

  1. 全屏玩游戏,让游戏模式打开。
  2. 如果手柄能通过线缆传输输入,就把它直接插到 Mac 上。
  3. 把手柄挪近一点,让 USB 3 硬盘和扩展坞远离,并把 Wi-Fi 设为 5 GHz。
  4. 在 Steam 里,把这款游戏的 Steam Input 覆盖设置设为 Disable Steam Input。
  5. 在电池供电的 MacBook 上,调高 InputConfig 的 设置(Settings)里 Polling rate 下的 On battery。

让游戏模式打开

Apple 自己解决手柄延迟的办法是游戏模式。在装有 Apple 芯片和 macOS Sonoma 14 或更高版本的 Mac 上,游戏全屏时,游戏模式会自动打开。它让游戏优先使用 CPU 和 GPU,并且按 Apple 的说法,让蓝牙采样率翻倍,从而降低无线手柄和 AirPods 的输入延迟(Apple 的游戏模式页面)。

有三种情况会让它不起作用:

  • 窗口。游戏在窗口里,而不是全屏。
  • Intel 芯片。Intel Mac 没有游戏模式。那里的办法是用线缆。
  • 被关闭过一次。如果这款游戏的游戏模式被关掉过,它就会一直对这款游戏保持关闭,即使你退出再重新打开,直到你把它重新打开。在 macOS Tahoe 上,点按菜单栏里的 Game 图标(或按 Command-Esc),然后选 Settings。在 Sonoma 和 Sequoia 上,使用菜单栏里的 Game 菜单。

全屏不花任何代价,是最先该试的。更多内容见 Mac 上的游戏模式。

如果手柄能通过线缆传输输入,就用线缆

线缆是延迟最低、最稳定的连接,而且对离沙发很远的台式 Mac,它还能治好掉线。把 USB-C 直接插到 Mac 上,不要经过扩展坞。对于在沙发上用的笔记本,蓝牙就可以了。

并不是每个手柄在 Mac 上都能通过线缆传输输入:Switch Pro Controller 通过线缆只能充电,有线 Xbox 手柄则取决于你的 macOS 版本。

清理 2.4 GHz 的空间

蓝牙和 Wi-Fi 共用 2.4 GHz,还会被离 Mac 很近的 USB 3 设备干扰。时好时坏、偶尔掉线的延迟,几乎都是这个原因。

  • 把手柄挪近。距离会让其他所有干扰源的影响更严重。
  • 把路由器挪远。或者把 Wi-Fi 设为 5 GHz。
  • 挪开 USB 3 扩展坞和硬盘。让它们远离手柄所通信的那一侧 Mac。

为 Steam 游戏试试关掉 Steam Input

Steam 可以夹在手柄和游戏之间做转换。这一层是很多 Mac 延迟报告背后的原因,尤其是 Switch Pro 和 Xbox 手柄,而报告里的解决办法是只为那一款游戏把它关掉。

  • 你:在 Steam 里,右键点按这款游戏,选 Properties,再选 Controller,把覆盖设置设为 Disable Steam Input。
  • 检查:如果延迟没了,就为这款游戏保持关闭。如果游戏根本认不出手柄了,就改回去:它需要 Steam Input,延迟另有原因。

如果 Steam 的菜单有反应而游戏没有,那是另一个问题:见手柄在 Steam 里能用,在游戏里不能用。

了解串流会增加什么

GeForce NOW 和 Xbox Cloud Gaming 在良好的网络下会增加 40 到 100 毫秒,在 Wi-Fi 上更多。这是串流造成的,不是手柄。以太网、离得近的服务器区域和较低的分辨率都有帮助。给手柄接线缆几乎没用。

你自己的游戏机或 PC 上的 PS Remote Play 和 Steam Link 也是一样。在怪手柄之前,先把游戏机或 PC 接上以太网,把 Mac 接到 5 GHz Wi-Fi 或有线网络。

了解映射工具会增加什么

InputConfig 开箱就是接电源适配器时每秒读取手柄 120 次,用电池时每秒 60 次。由此增加的等待时间,比玩的时候任何人能察觉的都短。

  • 你:打开 InputConfig 的 设置(Settings),选 Polling rate。打开 Auto-switch on power source 后,分别为 On power adapter 和 On battery 选择:60、120、180 或 240 Hz。
  • InputConfig:立即应用新的速率,不用重新启动,并在预设启用期间显示引擎正在运行的速率。
  • 检查:预设运行时,选择器下面那一行会显示新的速率。对于不插充电器的 MacBook 上瞄准,把 On battery 设为 120 或 240。
InputConfig 的 Settings 里的 Polling rate,Auto-switch on power source 已打开,On power adapter 为 120 Hz,On battery 为 60 Hz,下方是实时速率那一行。
Figure 1. 两个选择器分别设置每种电源的速率。下面那一行显示引擎实际运行的速率。

电池上用较低的速率更省电,这就是它成为默认设置的原因。

如果还是有延迟

按这个阶梯来,从最小的一步开始:

  1. 给手柄充电。电量低是手柄卡顿的常见原因。
  2. 拿一款游戏和另一款对比。如果只有一款游戏有延迟,那延迟通常来自那款游戏或它的串流,而不是手柄。
  3. 检查被映射游戏里的响应曲线。如果 InputConfig 的布局手感迟钝,先看摇杆行:平滑曲线在中心附近本来就慢,而线性曲线感觉更快。
  4. 单独测试手柄。如果它不但有延迟还掉线,见一直断开连接的手柄。那里的大多数原因适用于任何手柄。

没有任何设置能解决的事

  • 蓝牙本身。它带来很小而且稳定的延迟,低于大多数人能感觉到的程度。
  • 云串流。那 40 到 100 毫秒属于网络,不属于手柄。
  • Intel Mac。它没有游戏模式,所以用不上翻倍的蓝牙采样率。

简单总结

  • 全屏。游戏模式打开,并让蓝牙采样率翻倍。
  • 线缆或干净的空间。把线缆直接插到 Mac 上,或者用蓝牙,周围没有 USB 3 的杂物,Wi-Fi 用 5 GHz。
  • 关掉 Steam Input。对有延迟的 Steam 游戏,试试为这款游戏关掉它。

你能感觉到的延迟,几乎总是干扰、串流或中间多出来的一层,而不是蓝牙本身。

常见问题

Mac 手柄的蓝牙延迟明显吗?

很少。蓝牙带来的延迟很小而且稳定,低于大多数人能感觉到的程度。人们真正注意到的是干扰和串流。

映射 App 会增加输入延迟吗?

很少。InputConfig 默认在接电源适配器时以 120 Hz 轮询,用电池时以 60 Hz 轮询,你选的话最高可到 240 Hz。

为什么我的 Switch Pro Controller 在 Mac 上有延迟?

在 Mac 上,Pro Controller 只通过蓝牙传输输入。USB-C 线只是给它充电,所以线缆这个办法不适用。让它靠近 Mac,远离 USB 3 扩展坞和硬盘,并把 Wi-Fi 设为 5 GHz。如果它只在一款游戏里仍有延迟,那通常是游戏或串流的问题。

游戏模式能减少 Mac 上的手柄延迟吗?

能,前提是 Apple 芯片的 Mac 和 macOS Sonoma 或更高版本。Apple 说它让手柄和 AirPods 的蓝牙采样率翻倍。游戏全屏时它会打开。窗口里的游戏得不到它。

为什么我的 Xbox 手柄在 Mac 上有延迟?

通常是蓝牙上的干扰或距离、电量低,或者 Steam 游戏里的 Steam Input。全屏玩让游戏模式打开,挪近一点或把 USB 3 扩展坞挪到离 Mac 远的地方,给手柄充电,并为这款游戏试试关掉 Steam Input。

有线手柄能减少 Mac 上的输入延迟吗?

能减少一点,而且让延迟更稳定。更大的好处是线缆不受干扰影响,而干扰造成了你能感觉到的大部分延迟。并不是每个手柄在 Mac 上都能通过线缆传输输入:Switch Pro Controller 通过线缆只能充电,有线 Xbox 手柄则取决于你的 macOS 版本。

怎么测试手柄的输入延迟?

没有哪个网页能计时从按键到画面变化的整个过程。浏览器能显示的是新读数到达的频率:手柄轮询率测试会统计每秒更新次数,所以用线缆测一次,用蓝牙再测一次,比较两个数字。

更多中文页面

详细指南(英文)

作者说明。Ryleigh Newman 开发了 InputConfig,因为双手活动不便,每天都用手柄操作自己的 Mac。本页译自英文。Mac 的语言设为简体中文时,App 的主要按钮和菜单显示为中文,本页使用这些名称,并在括号中附上英文名称。App 的其他部分和网站的其他页面都是英文。

本页的其他语言版本: English, العربية, Čeština, Dansk, Deutsch, Español, Suomi, Français, עברית, Magyar, Bahasa Indonesia, Italiano, 日本語, 한국어, Norsk, Nederlands, Polski, Português, Русский, Slovenčina, Svenska, ไทย, Türkçe, Українська, Tiếng Việt, 繁體中文

在 Mac App Store 下载 InputConfig免费。macOS 14 或更高版本。无需账户,数据不会离开你的 Mac。 源代码在 GitHub 上.