XRInputSource: свойство gamepad
Ограниченная доступность
Эта функция не относится к базовому уровню, поскольку она не работает во всех широко используемых браузерах.
Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или всех поддерживающих браузерах.
Только для чтения XRInputSource свойство gamepad возвращает объект Gamepad, описывающий состояние кнопок и осей XR-источника ввода, если это джойстик или аналогичное устройство. Если устройство не является устройством типа джойстика, значение этого свойства равно null.
Возвращаемый экземпляр Gamepad ведет себя так, как описано в API джойстика. Однако следует отметить несколько моментов:
-
Gamepadэкземпляры, принадлежащиеXRInputSourceне включаются в массив, возвращаемыйnavigator.getGamepads(). Джойстики напрямую связаны с аппаратным обеспечением WebXR и не являются универсальными игровыми устройствами. -
Gamepad.id— пустая строка ("") -
Gamepad.indexимеет значение-1 -
Gamepad.connectedимеет значениеtrueдо тех пор, покаXRInputSourceне будет удален из списка активных XR-источников ввода илиXRSessionне завершится. - Если ось, возвращаемая
Gamepad.axes, представляет ось тачпада, ее значение равно 0, когда соответствующееGamepadButton.touchedсвойство имеет значениеfalse. -
Gamepad.mappingвозвращает "xr-standard".
Примеры
Использование источника ввода джойстика
for (const source of frame.session.inputSources) {
const gamepad = source.gamepad;
if (gamepad) {
if (gamepad.buttons[2].pressed) {
// do something
}
}
}
Спецификации
Совместимость с браузерами
| Рабочий стол | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
gamepad |
79 | 79 | Нет | 66 | Нет | 79 | Нет | 57 | Нет | 11.2 | Нет |
© 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/XRInputSource/gamepad