XRInputSource: gamepad 屬性
只讀的 XRInputSource 屬性 gamepad 返回一個 Gamepad 物件,該物件描述了 XR 輸入源的按鈕和軸的狀態,前提是該輸入源是遊戲手柄或可比裝置。如果裝置不是類似遊戲手柄的裝置,此屬性的值將為 null。
返回的 Gamepad 例項的行為遵循 Gamepad API 的描述。但是,有幾點需要注意:
- 屬於
XRInputSource的Gamepad例項不包含在navigator.getGamepads()返回的陣列中。遊戲手柄嚴格與 WebXR 硬體相關聯,而不是通用遊戲裝置。 Gamepad.id是一個空字串 ("")Gamepad.index是-1Gamepad.connected在XRInputSource從活動 XR 輸入源列表中移除或XRSession結束之前始終為true。- 如果
Gamepad.axes報告的軸代表觸控板的軸,並且GamepadButton.touched屬性為false,則該軸的值為 0。 Gamepad.mapping返回 "xr-standard"。
示例
使用遊戲手柄輸入源
js
for (const source of frame.session.inputSources) {
const gamepad = source.gamepad;
if (gamepad) {
if (gamepad.buttons[2].pressed) {
// do something
}
}
}
規範
| 規範 |
|---|
| WebXR Gamepads Module - Level 1 # dom-xrinputsource-gamepad |
瀏覽器相容性
載入中…