XRInputSource: gamepad-Eigenschaft
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Die schreibgeschützte XRInputSource
-Eigenschaft gamepad
gibt ein Gamepad
-Objekt zurück, das den Zustand der Tasten und Achsen der XR-Eingabequelle beschreibt, wenn es sich um einen Gamepad-ähnlichen oder vergleichbaren Gerätetyp handelt. Sollte das Gerät nicht wie ein Gamepad sein, ist der Wert dieser Eigenschaft null
.
Die zurückgegebene Gamepad
-Instanz verhält sich so, wie es in der Gamepad API beschrieben ist. Es gibt jedoch einige wichtige Punkte zu beachten:
Gamepad
-Instanzen, die zuXRInputSource
gehören, sind nicht in dem Array enthalten, das durchnavigator.getGamepads()
zurückgegeben wird. Gamepads sind ausschließlich mit der WebXR-Hardware verbunden und keine Allzweck-Gaming-Geräte.Gamepad.id
ist ein leerer String (""
).Gamepad.index
ist-1
.Gamepad.connected
isttrue
, bis dieXRInputSource
aus der Liste der aktiven XR-Eingabequellen entfernt wird oder dieXRSession
beendet wird.- Wenn eine Achse, die durch
Gamepad.axes
gemeldet wird, eine Achse eines Touchpads darstellt, ist der Wert 0, wenn die zugehörigeGamepadButton.touched
-Eigenschaftfalse
ist. Gamepad.mapping
gibt "xr-standard" zurück.
Beispiele
Verwendung einer Gamepad-Eingabequelle
for (const source of frame.session.inputSources) {
const gamepad = source.gamepad;
if (gamepad) {
if (gamepad.buttons[2].pressed) {
// do something
}
}
}
Spezifikationen
Specification |
---|
WebXR Gamepads Module - Level 1 # dom-xrinputsource-gamepad |
Browser-Kompatibilität
BCD tables only load in the browser