Українська

Загальний USB-геймпад не працює на Mac

Завантажити InputConfig з Mac App StoreЦей застосунок повністю безкоштовний. Обліковий запис створювати не потрібно. Немає підписок, складних завантажень, і нічого не заблоковано. Оптимізовано для Apple Silicon.

Найчастіше геймпад справний: він у режимі, який macOS не може прочитати, або Mac його читає, а гра його не шукає. Загальний USB-геймпад, тобто знеособлений пристрій, який продають парами за дуже мало грошей, на Mac ламається одним із кількох способів, і кожен має своє виправлення. Знайдіть свій симптом нижче.

Я створюю InputConfig, безкоштовну програму для Mac, яка читає такі геймпади напряму. Я скажу, де вона допомагає, а де ні.

З'ясуйте, що бачить Mac

Два місця покажуть, в якому ви випадку. Пройдіть ці кроки, починаючи з найменшого:

  1. Є в System Settings (Системні параметри), Game Controllers, кнопки підсвічуються. macOS сприймає його як ігровий контролер, і проблема в грі. Дивіться контролер підключено, але не працює.
  2. Немає там, але є в System Information (Системна інформація), USB. Утримуйте Option, відкрийте меню Apple, виберіть System Information і натисніть USB. Геймпад, що є тут, але не в Game Controllers, є звичайним HID-пристроєм. Це типовий випадок для загальних геймпадів. Перейдіть до якщо Mac його бачить, але ігри ігнорують.
  3. Немає ні там, ні там. Mac нічого від нього не отримує. Перейдіть до якщо його ніхто не бачить.

Те, де видно геймпад, визначає, яке виправлення потрібне.

Якщо його ніхто не бачить: кабель, хаб або режим Xbox

  • Кабель або адаптер. Підключіть геймпад безпосередньо до Mac. Геймпад зі знімним кабелем міг прийти з кабелем, який лише заряджає. Спробуйте кабель, про який ви знаєте, що він передає дані. На MacBook адаптер USB-C також має передавати дані.
  • Хаб. Хаби без живлення та деякі док-станції втрачають ігрові геймпади. Перевірте без хаба.
  • Режим Xbox або X-input. Багато дешевих геймпадів починають у режимі, який говорить за дротовим протоколом Xbox 360. macOS його взагалі не підтримує, і жодна програма на Mac його не прочитає. Знайдіть перемикач режиму або кнопку, яку тримають під час підключення, що вибирає D-input, PC, Android або Switch (Перемикач).

InputConfig показує геймпад, який застряг у цьому режимі, у меню Devices (Пристрої), сірим кольором, з написом про стиль Xbox 360 і порадою переключити режим або використати Bluetooth, якщо він є.

Меню Devices у InputConfig, де USB-геймпад у режимі Xbox 360 показано сірим, з поясненням, чому macOS його не читає.
Рисунок 1. InputConfig показує геймпад, що застряг у режимі Xbox 360, і пояснює, чому його не можна прочитати.

Геймпад, що світиться, але нічого не надсилає, зазвичай перебуває в режимі Xbox, тож переключіть його на D-input або PC.

Якщо Mac його бачить, але ігри ігнорують

Геймпад у System Information, але не в Game Controllers (Ігрові контролери), читається macOS без драйвера, але ігри, побудовані на підтримці контролерів від Apple, шукають лише геймпади PlayStation, Xbox, Switch і MFi. Жоден драйвер цього не змінить. Що все ще працює:

  • Емулятори та авіасимулятори. Вони самі читають HID-пристрої. Призначте кнопки в їхніх власних налаштуваннях введення.
  • Ігри з режимом клавіатури. InputConfig читає геймпад і надсилає клавіші, які використовує гра. Геймпад з'являється угорі бічної панелі. Якщо його немає, натисніть Refresh Controllers (Оновити контролери) або увімкніть його в InputConfig, Devices у рядку меню. Далі натисніть Scan у рядку і натисніть кнопку на геймпаді.
  • Ігри, що приймають лише контролер. Для HID-геймпада нічого на Mac це не виправить. InputConfig надсилає клавіатуру й мишу, а не віртуальний контролер. Вхід до таких ігор дає геймпад з режимом Switch, iOS або MFi через Bluetooth.

Якщо гра має керування з клавіатури, геймпад може керувати нею через InputConfig.

Якщо кнопки стоять не на своїх місцях

InputConfig називає загальні геймпади за базою спільноти SDL GameControllerDB, якщо один із її рядків збігається з геймпадом: A, B, X, Y, плечові кнопки та стіки отримують ті самі номери, що й на будь-якому іншому контролері.

  • Рядок, що збігається. Багато дешевих геймпадів мають однаковий чип і однаковий USB-ідентифікатор, тому рядок використовується лише тоді, коли збігається точно, або коли всі рядки для цього ідентифікатора погоджуються. Пошук ідентифікатора контролера показує, чи є ваш.
  • Немає рядка, що збігається. Геймпад читається за власним описом, кнопки нумеруються в порядку, в якому він їх повідомляє, і позначаються як Button 1, Button 2 і так далі.
  • A і B переставлені. Геймпад може просто використовувати розташування Nintendo. Дивіться USB-геймпади SNES на Mac, щоб дізнатися чому.
Live Visualizer в InputConfig показує кнопки і стіки загального USB-геймпада як просту карту, де натиснуті елементи підсвічуються.
Рисунок 2. Геймпад, якого InputConfig не знає за моделлю, малюється за тим, що він повідомляє. Кожен елемент підсвічується, коли ви його натискаєте.

Live Visualizer (Візуалізатор наживо) підсвічує кожен елемент, коли ви його натискаєте, тож одразу видно, що надсилає геймпад. Scan призначає кнопку, яку ви справді натискаєте, тож розкладка завжди виходить правильною.

Якщо стік дрейфує або завжди показує повний відхил в один бік

Дешеві плати часто неправильно описують свої осі, тож стік може спокійно стояти не в центрі або повідомляти, що його відхилено повністю в один бік. InputConfig виправляє типові помилки опису, наприклад діапазон, записаний задом наперед або ширший за поле, замість того щоб читати нісенітницю. Пройдіть ці кроки, починаючи з найменшого:

  1. Натисніть кнопку Analog або Mode. Деякі геймпади мають її, і вона вимикає стіки або міняє їх місцями з хрестовиною. Натисніть один раз і перевірте ще раз.
  2. Перепідключіть, не торкаючись стіків. Якщо стік притиснутий до одного краю, від'єднайте геймпад і підключіть знову. Деякі дешеві геймпади встановлюють центр під час вмикання.
  3. Збільште Deadzone. Для стіка, що стоїть трохи не в центрі, відкрийте Options у рядку стіка і використовуйте Adjust live (Налаштувати наживо), спостерігаючи за стіком.
Вікно Adjust live в InputConfig з траєкторією положення стіка і повзунком Deadzone.
Рисунок 3. Adjust live задає Deadzone, поки ви спостерігаєте за стіком, і це приховує зміщення спокою дешевого геймпада.

Більше про дрейф стіка на Mac. Перепідключайте, не торкаючись стіків, перш ніж міняти будь-яке налаштування.

Якщо меню Devices каже, що потрібен Input Monitoring

Деякі геймпади, і багато аркадних стіків, також представляють себе як клавіатура, а macOS ставить будь-який пристрій із частиною клавіатури за дозвіл Input Monitoring (Контроль вводу).

  • Ви: Оберіть запис, позначений як потрібний Input Monitoring, в меню Devices у InputConfig, і увімкніть InputConfig у вікні, що відкриється.
  • macOS: Дозволяє InputConfig читати геймпад.
  • Перевірка: Поверніться до програми, і геймпад читається.

Повне пояснення є на сторінці чому контролеру потрібен Input Monitoring.

Якщо він перестав працювати після оновлення InputConfig

InputConfig 1.6 по-іншому нумерує загальні USB-геймпади, 8BitDo у режимі D-input, аркадні енкодери та руль Logitech, ніж у версії 1.5.

  • Ви: Підключіть геймпад вперше після оновлення.
  • InputConfig: Пропонує перенести рядки пресетів, створених до 1.6.
  • Перевірка: Позначте пресети, які ви створили для цього геймпада, і натисніть Update Checked Presets (Оновити вибрані пресети). Рядки, які ви знову просканували в 1.6 або новішій, не чіпаються.

Якщо ви натиснули Leave Them As They Are (Залишити без змін), відкрийте Settings, Advanced, і в розділі Data & Storage натисніть Check Older Presets Again. Пропозиція повернеться, коли геймпад підключиться наступного разу.

Чого він не вміє

  • Читати режим Xbox 360. Жодна програма на Mac цього не може.
  • Зробити геймпад схожим на контролер Xbox. InputConfig надсилає події клавіатури й миші. Гра, яка приймає лише контролер, потребує того, який розпізнає macOS.

Загального геймпада досить для ігор, які приймають клавіші, але не досить для ігор, які приймають лише контролер.

Коротко

  • Не видно ніде. Використовуйте кабель для передачі даних без хаба і встановіть геймпад у режим D-input або PC.
  • Лише в System Information. Емулятори його читають. InputConfig перетворює його на клавіші для всього іншого.
  • Дивні кнопки або дрейф. Скануйте те, що натискаєте. Використовуйте Adjust live для мертвої зони.
  • Зламався після оновлення. Погодьтеся на пропозицію або натисніть Check Older Presets Again (Перевірити старі пресети ще раз).

Геймпад майже ніколи не зламаний, а коли ви знаєте, де він видно, ви знаєте і виправлення.

Питання

Чи потрібен драйвер для загального USB-геймпада на Mac?

Ні. macOS читає загальні USB-геймпади як HID-пристрої без будь-чого встановленого. Драйвер не змусив би ігри, які використовують підтримку контролерів від Apple, побачити геймпад.

Чому мій USB-геймпад світиться, але нічого не робить на Mac?

Живлення йде через кабель, навіть коли даних немає. Зазвичай геймпад у режимі Xbox або X-input, який macOS не може прочитати, або кабель чи адаптер лише заряджає. Переключіть його в режим D-input або PC і використовуйте кабель для передачі даних.

Чому Steam бачить мій загальний контролер, а гра ні?

Steam читає контролери через власний рівень і передає їх лише іграм, які використовують Steam Input. Гра, яка сама читає контролери через підтримку від Apple, не побачить HID-геймпад. Дивіться працює в Steam, але не в грі.

Чи може InputConfig зробити загальний геймпад схожим на контролер Xbox?

Ні. Він надсилає події клавіатури й миші. Гра, яка приймає лише контролер, потребує того, який розпізнає macOS.

Які загальні геймпади InputConfig називає автоматично?

Ті, чий USB-ідентифікатор збігається з рядком для macOS у базі спільноти SDL GameControllerDB, яка охоплює багато геймпадів PowerA, Hori, Logitech, Tomee, Retrolink і подібних. Геймпади без рядка все одно читаються. Їхні кнопки просто нумеруються в порядку звітування.

Більше українською

Сторінки українською

Докладні посібники, англійською

Хто пише. Ryleigh Newman розробляє InputConfig і щодня керує своїм Mac за допомогою геймпада, бо руки погано слухаються. Цю сторінку перекладено з англійської. Якщо на Mac вибрано українську мову, InputConfig показується українською. Деякі сторінки сайту є лише англійською.

Ця сторінка іншими мовами: English, Français

Завантажити InputConfig з Mac App StoreБезкоштовно. macOS 14 або новіша. Без облікового запису, ніщо не залишає ваш Mac. Відкритий код на GitHub.