简体中文

Mac 上 OpenEmu 的手柄无法使用

如果 Mac 自己能看到手柄,OpenEmu 却不理它,原因几乎总是两项 macOS 权限之一,也就是 Input Monitoring 和蓝牙,或者是手柄已经连接,却没有在 OpenEmu 的 Controls 界面里选中。两项都只要一分钟就能检查完。OpenEmu 直接读取手柄,所以不需要映射 App,下面我会准确告诉你,映射 App 在哪里有帮助,在哪里没有。

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

步骤

  1. 在“系统设置”的“游戏控制器”里,确认手柄会亮起。
  2. 在“隐私与安全”的 Input Monitoring 和“蓝牙”里打开 OpenEmu。
  3. 彻底退出 OpenEmu,再重新打开。
  4. 在 OpenEmu 的 Controls 里,选择游戏机、你的手柄和玩家。
  5. 退出 Steam 和所有改写输入的 App,然后再测试一次。

先证明 Mac 能看到手柄

  • 你:打开“系统设置”,点按边栏里的“游戏控制器”,按几个按钮。
  • macOS:列出这只手柄,并让每个按钮亮起。
  • 检查:如果它亮起,问题就出在 OpenEmu 里面。如果没有列出,先解决连接问题:如何把手柄连接到 Mac,如果想实时看到每个按钮,可以用手柄测试。

打开 OpenEmu 需要的两项权限

OpenEmu 直接读取输入设备,而 macOS 把这件事放在权限后面。OpenEmu 自己的故障排除页面列出了这两项:

  • Input Monitoring。键盘需要它,当OpenEmu 里的键盘不能用时,通常也靠它解决。在“系统设置”的“隐私与安全”里选择 Input Monitoring,然后打开 OpenEmu。
  • 蓝牙。从 macOS Monterey 起,无线手柄需要它。在“系统设置”的“隐私与安全”里选择“蓝牙”,然后打开 OpenEmu。

改完其中任何一项之后,都要彻底退出 OpenEmu,再重新打开。如果 OpenEmu 已经在列表里,却仍然收不到任何输入,就把它关掉再打开。授予旧版本 App 的权限,可能在更新之后不再生效。

在 Controls 里选择手柄

  • 你:打开 OpenEmu 的设置,进入 Controls。先在顶部选择游戏机,再在手柄图片下面的输入菜单里选择你的手柄,然后选择玩家编号。
  • OpenEmu:对它认识的手柄,会自动填好。
  • 检查:如果没有自动填好,就点按图片上的每个按钮,再按你手柄上对应的按钮。

映射是按游戏机分别保存的,所以为 SNES 设置好的手柄,在 Genesis 上还要再设置一遍。如果摇杆漂移或者太灵敏,OpenEmu 的指南说,开始玩之前先把每根摇杆完整地转一圈,这样它的自动校准就能找到边缘。

检查你的手柄:PS5、PS4、Xbox、Switch Pro 和 8BitDo

OpenEmu 的手柄数据库,按它的最新版本(2.4.1,2023 年 12 月)来看,为 DualSense、DualShock 4、Xbox One S 和 Series X|S 无线手柄、Switch Pro 手柄、8BitDo Pro 2 以及 Wii Remote 提供了自动布局。所以不能用的 PS5 或 Xbox 手柄,几乎从来不是因为不被支持。回头去看权限。

  • PS3 手柄。DualShock 3 也在数据库里,但在当前的 macOS 上,用 USB 比用蓝牙可靠得多。
  • Xbox 360 手柄。macOS 不支持有线的 Xbox 360 手柄,所以 OpenEmu 和任何映射 App 都读不到它。解决办法是换一只较新的 Xbox 手柄,或者任何蓝牙手柄。
  • 8BitDo。如果 Mac 在“游戏控制器”里没有列出它,就试试手柄开关上的另一种模式。8BitDo 那一页说明了该用哪一种。

关掉争抢输入的 App

OpenEmu 的故障排除页面点名了会干扰它输入的 App:Chrome、Steam、DOSBox 和 Terminal,以及 Karabiner、USB Overdrive 和 ControllerMate 这样改写输入的工具。

  • Steam。这是最常见的一个:Steam 开着的时候,它的手柄层可能同时发送自己的按键。退出它,再测试一次。
  • InputConfig。当映射你手柄的预设处于启用状态时,OpenEmu 会同时收到手柄和按键。停用(Deactivate)这个预设,或者用自动切换给 OpenEmu 单独准备一个预设。

映射 App 在哪里真的有帮助

如果修好权限之后 OpenEmu 能读到你的手柄,这件事就不需要映射 App。下面三种情况,InputConfig(免费,需要 macOS 14 或更高版本)确实有帮助:

  • OpenEmu 不接受的手柄。InputConfig 往往仍然能读取它,因为它也会把手柄当作原始 HID 设备打开。把 OpenEmu 里那名玩家的输入设为键盘,分配你喜欢的按键,再把手柄映射到这些按键上。OpenEmu 的源代码接受其他 App 发送的按键,所以在 OpenEmu 是最前面的窗口时,这样可行。Emulator / Arcade 布局是个起点:方向键、Z、X、A、S、Q、W、Enter 和 Shift。
  • 备用按钮上的菜单命令。OpenEmu 菜单栏里的命令,比如保存状态和载入状态,旁边都显示着键盘快捷键,InputConfig 可以把任何快捷键放到 OpenEmu 没有绑定的按钮上,比如 DualSense Edge 的拨片或触控板的点按。
  • 游戏库。同一只手柄可以在游戏库里移动 Mac 的指针,等游戏打开时再交给 OpenEmu。

简单总结

  • 权限。键盘要允许 Input Monitoring,无线手柄要允许蓝牙,然后重新打开 OpenEmu。
  • Controls。按游戏机和玩家分别选择手柄。
  • 干扰。测试时退出 Steam 和改写输入的工具。

OpenEmu 的手柄问题,大多只是一个权限开关。

常见问题

OpenEmu 支持 PS5 手柄吗?

支持。DualSense 在 OpenEmu 的手柄数据库里,有自动布局。如果它没有反应,就在“隐私与安全”里检查 OpenEmu 的 Input Monitoring 和蓝牙权限,然后在 Controls 里选中它。

为什么 Mac 上 OpenEmu 里的键盘不能用?

OpenEmu 的键盘需要 Input Monitoring 权限。在“系统设置”的“隐私与安全”里打开 Input Monitoring,然后退出并重新打开 OpenEmu。键盘有单独的一页,列出了会挡住它的 App。

怎么更改 OpenEmu 里的按键控制?

打开 OpenEmu 的设置,进入 Controls,选择游戏机和你的手柄,然后点按图片上的每个按钮,再按你想用的那个按钮。每台游戏机都有各自的映射。

OpenEmu 能用 Xbox 360 手柄吗?

在当前的 macOS 上,有线的不行,因为 macOS 本身不支持它。Xbox One 和 Series 手柄可以通过蓝牙使用。

OpenEmu 还在更新吗?

它的最新版本是 2023 年 12 月的 2.4.1。对大多数人来说它在当前的 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 上.