Recherche Keymap Labs · 8 min

Compatibilité des manettes dans le navigateur : ce que les tests voient

Une note de compatibilité pratique pour l'exposition des manettes, les mappages standard, les contextes sécurisés et la validation entre navigateurs et systèmes d'exploitation.

L'API Web Gamepad donne à une page accès aux objets manette qu'un navigateur choisit d'exposer. C'est très utile, mais la disponibilité ne garantit pas des noms d'appareils, un ordre des boutons, un ordre des axes ou une prise en charge des fonctionnalités identiques d'une plate-forme à l'autre.

Activation utilisateur et exposition

Les navigateurs peuvent attendre qu'un bouton de manette soit pressé avant d'exposer un appareil connecté. Cela réduit le fingerprinting passif et signifie qu'une manette peut être physiquement connectée pendant que navigator.getGamepads() renvoie initialement des entrées vides. Keymap Labs invite l'utilisateur à appuyer sur un bouton et écoute les événements de connexion tout en continuant d'inspecter la liste actuelle.

Plusieurs fonctionnalités d'appareils du navigateur nécessitent une connexion sécurisée. Utilisez https://keymap.io, maintenez le navigateur à jour et évitez les versions copiées ou intégrées de la page lors de la comparaison des résultats.

Mappages standard et génériques

Un objet manette peut déclarer le mappage standard, ce qui donne des positions communes pour les boutons de face, les gâchettes hautes, les gâchettes, les sticks et les boutons directionnels. Les appareils génériques peuvent fournir un mappage vide et exposer des tableaux bruts dans un ordre spécifique à l'appareil.

Keymap Labs affiche toujours les indices de boutons bruts et les valeurs des axes. Cela permet de garder l'outil utile même lorsqu'une manette ne correspond pas au diagramme familier. Il ne renomme pas une entrée générique avec une certitude injustifiée.

Les gâchettes analogiques peuvent apparaître comme des boutons avec des valeurs fractionnaires, des axes séparés ou des boutons numériques selon la pile. Les fonctionnalités supplémentaires telles que les pavés tactiles, le gyroscope, l'état de la batterie, les LED et les retours haptiques ne sont pas disponibles de manière cohérente via le mappage principal et se trouvent en dehors du champ de diagnostic standard.

Comportement de connexion et d'indice

Les manettes reçoivent un indice au sein de la session du navigateur. Déconnecter et reconnecter peut changer l'entrée active. Le labo en direct sélectionne un appareil disponible et réagit aux changements de connexion ; utilisez le sélecteur d'appareils lorsque plusieurs manettes sont exposées.

Le mode sans fil peut exposer un identifiant ou un ensemble de fonctionnalités différent du mode USB. Cette différence doit être enregistrée lors du dépannage. Un identifiant visible par le navigateur peut également être générique pour des raisons de confidentialité ou de pilote.

Matrice de validation

Une comparaison de compatibilité sérieuse nécessite des appareils physiques sur différents systèmes d'exploitation et moteurs de navigateur. Keymap Labs utilise l'API standard et gère les boutons ou axes manquants de manière défensive, mais un test en ligne ne peut pas émuler le pilote de chaque manette.

Un enregistrement de comparaison utile comprend :

  • Système d'exploitation et version
  • Moteur du navigateur et version
  • Modèle de manette et firmware
  • Filaire, Bluetooth ou récepteur propriétaire
  • ID rapporté, mapping, axes et décompte des boutons
  • Représentation des gâchettes et ordre des sticks
  • Comportement de connexion, reconnexion et focus

Les résultats doivent être traités comme des observations datées, et non comme un badge intemporel « fonctionne partout ». Les mises à jour du navigateur et du système d'exploitation peuvent modifier le mapping au fil du temps.

Interprétation d'un résultat vide

L'absence de manette sur la page peut signifier qu'il n'y a pas d'appareil, pas d'activation utilisateur, une limitation du navigateur, une application concurrente, une couche de pilotes ou un problème de connexion. Le guide de détection de manette aborde ces couches dans un ordre contrôlé.

Si l'appareil apparaît mais qu'une étiquette visuelle est incorrecte, les changements d'index bruts confirment tout de même qu'une entrée a atteint le navigateur. Si les axes ne reviennent pas au centre, le Test de Stick Drift ajoute un échantillon chronométré, mais ce résultat reste lié au mapping et au calibrage actuels.

Promesse de compatibilité

Keymap Labs prend en charge les navigateurs modernes qui exposent la Gamepad API et fournit un état de repli explicite lorsqu'aucun n'est disponible. Il ne nécessite ni compte, ni extension de navigateur, ni pilote. Il ne peut garantir des fonctionnalités de manette avancées ou des étiquettes universelles.

Cette promesse est intentionnellement précise. Les utilisateurs reçoivent un diagnostic brut fonctionnel là où la plateforme le permet et une explication utile là où elle ne le permet pas.