API геймпада
Базовая Широко доступная *
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с марта 2017 года.
* Некоторые части этой функции могут иметь различный уровень поддержки.
Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS), в некоторых или во всех поддерживающих браузерах.
API геймпада — это способ для разработчиков получить доступ к сигналам от геймпадов и других игровых контроллеров простым и последовательным способом. Он содержит три интерфейса, два события и одну специализированную функцию, для реагирования на подключение и отключение геймпадов, а также для доступа к другой информации о самих геймпадах и нажатым кнопкам и другим управлениям.
Интерфейсы
Gamepad-
Представляет геймпад/контроллер, подключенный к компьютеру.
-
Представляет кнопку на одном из подключенных контроллеров.
GamepadEvent-
Объект события, представляющий события, связанные с геймпадами.
Экспериментальные расширения геймпада
GamepadHapticActuator-
Представляет аппаратное обеспечение в контроллере, предназначенное для предоставления тактильной обратной связи пользователю (если доступно), чаще всего вибрации.
GamepadPose-
Представляет позу контроллера (например, положение и ориентацию в 3D-пространстве) в случае контроллера WebVR. Это не используется в новом стандарте WebXR.
Расширения других интерфейсов
Navigator
-
Расширение объекта
Navigator, которое возвращает массив объектовGamepad, по одному для каждого подключенного геймпада.
События окна
gamepadconnected-
Событие, которое срабатывает при подключении геймпада.
gamepaddisconnected-
Событие, которое срабатывает при отключении геймпада.
Учебники и руководства
Спецификации
Совместимость браузеров
| Рабочий стол | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
Gamepad_API |
21 | 12 | 29 | 15 | 10.1 | 25 | 32 | 14 | 10.3 | 1.5 | 4.4 |
axes |
21 | 12 | 29 | 15 | 10.1 | 25 | 32 | 14 | 10.3 | 1.5 | 4.4 |
buttons |
21 | 12 | 29 | 15 | 10.1 | 25 | 32 | 14 | 10.3 | 1.5 | 4.4 |
connected |
25 | 12 | 29 | 15 | 10.1 | 25 | 32 | 14 | 10.3 | 1.5 | 4.4 |
displayId |
Нет | 15–79 | 9864–98Поддержка macOS была включена в Firefox 64.55–98Поддержка Windows была включена в Firefox 55. |
Нет | Нет | 55–80В настоящее время поддерживается только Google Daydream. |
55–98 | 42–57В настоящее время поддерживается только Google Daydream. |
Нет | 6.0–13.0В настоящее время поддерживается только Google Daydream. |
Нет |
hand |
Нет | 15–79 | 55 | Нет | Нет | Нет | 55 | Нет | Нет | Нет | Нет |
hapticActuators |
Нет | 15–79 | 55 | Нет | Нет | Нет | 55 | Нет | Нет | Нет | Нет |
id |
21 | 12 | 29 | 15 | 10.1 | 25 | 32 | 14 | 10.3 | 1.5 | 4.4 |
index |
21 | 12 | 29 | 15 | 10.1 | 25 | 32 | 14 | 10.3 | 1.5 | 4.4 |
mapping |
21 | 12 | 29 | 15 | 10.1 | 25 | 32 | 14 | 10.3 | 1.5 | 4.4 |
pose |
Нет | 15–79 | 55 | Нет | Нет | Нет | 55 | Нет | Нет | Нет | Нет |
secure_context_required |
86 | 86 | 91 | 72 | Нет | 86 | 91 | Нет | Нет | Нет | Нет |
timestamp |
21 | 12 | 29 | 15 | 10.1 | 25 | 32 | 14 | 10.3 | 1.5 | 4.4 |
vibrationActuator |
68 | 79 | Нет | 55 | 16.4 | 68 | Нет | 48 | Нет | 10.0 | Нет |
См. также
- API контроллеров геймпадов от Теда Миельчарека и Роберта Ньмана
- Простая демонстрационная страница API (исходный код)
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Gamepad_API