Gamepad

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Das Gamepad-Interface der Gamepad API definiert ein einzelnes Gamepad oder einen anderen Controller und ermöglicht den Zugriff auf Informationen wie Tastendrücke, Achsenpositionen und ID.

Ein Gamepad-Objekt kann auf zwei Arten zurückgegeben werden: über die gamepad-Eigenschaft der gamepadconnected und gamepaddisconnected Ereignisse oder durch Abrufen einer beliebigen Position im Array, das von der Methode Navigator.getGamepads() zurückgegeben wird.

Hinweis: Die Unterstützung von Gamepad-Funktionen variiert je nach Kombination von Plattformen und Controllern. Auch wenn der Controller eine bestimmte Funktion (zum Beispiel haptisches Feedback) unterstützt, kann es sein, dass die Plattform diese Funktion für diesen Controller nicht unterstützt.

Instanz-Eigenschaften

Gamepad.axes Nur lesbar

Ein Array, das die Steuerungen mit Achsen darstellt, die auf dem Gerät vorhanden sind (z.B. analoge Daumensticks).

Gamepad.buttons Nur lesbar

Ein Array von gamepadButton-Objekten, die die Tasten darstellen, die auf dem Gerät vorhanden sind.

Gamepad.connected Nur lesbar

Ein Boolean-Wert, der angibt, ob das Gamepad noch mit dem System verbunden ist.

Gamepad.displayId Nur lesbar Veraltet Nicht standardisiert

Gibt die VRDisplay.displayId eines zugeordneten VRDisplay zurück (falls relevant) — das VRDisplay, das das Gamepad zur Steuerung der angezeigten Szene verwendet.

Gamepad.hand Nur lesbar Experimentell

Ein Enum, das definiert, in welcher Hand der Controller gehalten wird oder wahrscheinlich gehalten wird.

Gamepad.hapticActuators Nur lesbar Experimentell

Ein Array, das GamepadHapticActuator-Objekte enthält, von denen jedes die auf dem Controller verfügbare haptische Feedback-Hardware darstellt.

Gamepad.vibrationActuator Nur lesbar

Ein GamepadHapticActuator-Objekt, das die auf dem Controller verfügbare haptische Feedback-Hardware darstellt.

Gamepad.id Nur lesbar

Ein String, der Identifikationsinformationen über den Controller enthält.

Gamepad.index Nur lesbar

Ein Integer, der automatisch inkrementiert wird, um für jedes aktuell mit dem System verbundene Gerät einzigartig zu sein.

Gamepad.mapping Nur lesbar

Ein String, der angibt, ob der Browser die Steuerelemente auf dem Gerät auf ein bekanntes Layout umgemappt hat.

Gamepad.pose Nur lesbar Experimentell

Ein GamepadPose-Objekt, das die Poseninformationen eines WebVR-Controllers darstellt (z.B. seine Position und Orientierung im 3D-Raum).

Gamepad.timestamp Nur lesbar

Ein DOMHighResTimeStamp, der die letzte Zeit repräsentiert, in der die Daten für dieses Gamepad aktualisiert wurden.

Beispiel

js
window.addEventListener("gamepadconnected", (e) => {
  console.log(
    "Gamepad connected at index %d: %s. %d buttons, %d axes.",
    e.gamepad.index,
    e.gamepad.id,
    e.gamepad.buttons.length,
    e.gamepad.axes.length,
  );
});

Spezifikationen

Specification
Gamepad
# gamepad-interface
Gamepad Extensions
# partial-gamepad-interface

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch