Die Web Gamepad API gibt einer Seite Zugriff auf Controller-Objekte, die ein Browser freigibt. Sie ist weit verbreitet, aber die Verfügbarkeit garantiert keine identischen Gerätenamen, Tastenbelegungen, Achsenbelegungen oder Funktionsunterstützung über Plattformen hinweg.
Benutzeraktivierung und Erkennung
Browser warten möglicherweise auf einen Tastendruck am Gamepad, bevor sie ein angeschlossenes Gerät freigeben. Dies reduziert passives Fingerprinting und bedeutet, dass ein Controller physisch angeschlossen sein kann, während navigator.getGamepads() anfangs leere Einträge zurückgibt. Keymap Labs fordert den Benutzer auf, eine Taste zu drücken, und wartet auf Verbindungsereignisse, während die aktuelle Liste weiter überprüft wird.
Einige Browser-Gerätefunktionen erfordern eine sichere Verbindung. Verwende https://keymap.io, halte den Browser aktuell und vermeide kopierte oder eingebettete Versionen der Seite beim Vergleichen der Ergebnisse.
Standard- und generische Belegungen
Ein Gamepad-Objekt kann die Standardbelegung deklarieren, die gängige Positionen für Aktionstasten, Schultertasten, Trigger, Sticks und Richtungstasten vorgibt. Generische Geräte können eine leere Belegung bereitstellen und Rohdaten-Arrays in einer gerätespezifischen Reihenfolge freigeben.
Keymap Labs zeigt immer rohe Tastenindizes und Achsenwerte an. Dies hält das Tool nützlich, auch wenn ein Controller nicht dem bekannten Diagramm entspricht. Es benennt eine generische Eingabe nicht mit unbegründeter Sicherheit um.
Analoge Trigger können je nach Stack als Tasten mit Teilwerten, separate Achsen oder digitale Tasten erscheinen. Zusätzliche Funktionen wie Touchpads, Gyro, Akkustatus, LEDs und Haptik sind nicht konsistent über die Kernbelegung verfügbar und liegen außerhalb des standardmäßigen Diagnoseumfangs.
Verbindungs- und Indexverhalten
Gamepads erhalten einen Index innerhalb der Browsersitzung. Das Trennen und erneute Anschließen kann ändern, welcher Eintrag aktiv ist. Das Live-Labor wählt ein verfügbares Gerät aus und reagiert auf Verbindungsänderungen; verwende die Geräteauswahl, wenn mehrere Controller erkannt werden.
Der Wireless-Modus kann eine andere Kennung oder einen anderen Funktionsumfang als der USB-Modus aufweisen. Dieser Unterschied sollte bei der Fehlerbehebung aufgezeichnet werden. Eine im Browser sichtbare Kennung kann aus Datenschutz- oder Treibergründen auch generisch sein.
Validierungsmatrix
Ein ernsthafter Kompatibilitätsvergleich erfordert physische Geräte über Betriebssysteme und Browser-Engines hinweg. Keymap Labs verwendet die Standard-API und geht defensiv mit fehlenden Tasten oder Achsen um, aber ein Online-Test kann nicht jeden Controller-Treiber emulieren.
Ein nützlicher Vergleichsdatensatz enthält:
- Betriebssystem und Version
- Browser-Engine und Version
- Controller-Modell und Firmware
- Kabelgebunden, Bluetooth oder proprietärer Empfänger
- Gemeldete ID, Mapping, Achsen und Tastenanzahl
- Trigger-Darstellung und Stick-Reihenfolge
- Verbindungs-, Wiederverbindungs- und Fokus-Verhalten
Ergebnisse sollten als zeitlich begrenzte Beobachtungen betrachtet werden, nicht als zeitloses „funktioniert überall“-Zertifikat. Browser- und Betriebssystem-Updates können Mappings im Laufe der Zeit verändern.
Interpretation eines leeren Ergebnisses
Kein Controller auf der Seite kann bedeuten: kein Gerät, keine Benutzeraktivierung, eine Browser-Einschränkung, eine konkurrierende Anwendung, eine Treiberebene oder ein Verbindungsproblem. Der Gamepad-Erkennungs-Guide geht diese Ebenen in einer kontrollierten Reihenfolge durch.
Wenn das Gerät erscheint, aber eine visuelle Bezeichnung falsch ist, bestätigen Änderungen des Roh-Index dennoch, dass eine Eingabe den Browser erreicht hat. Wenn Achsen nicht in die Mitte zurückkehren, fügt der Stick-Drift-Test einen zeitgesteuerten Messwert hinzu, aber dieses Ergebnis bleibt an das aktuelle Mapping und die Kalibrierung gebunden.
Kompatibilitätsversprechen
Keymap Labs unterstützt moderne Browser, die die Gamepad API bereitstellen, und bietet einen expliziten Fallback-Status, wenn keine verfügbar ist. Es ist kein Konto, keine Browser-Erweiterung und kein Treiber erforderlich. Es können keine erweiterten Controller-Funktionen oder universelle Bezeichnungen garantiert werden.
Dieses Versprechen ist bewusst präzise. Nutzer erhalten eine funktionierende Roh-Diagnose, wo die Plattform dies zulässt, und eine nützliche Erklärung, wo dies nicht der Fall ist.