Gamepad API para desarrolladores

El probador de este sitio es un lector fino de la Gamepad API. Si estás conectando un juego o una página, las reglas de abajo son las que mantienen honestos los índices y la cifra de hercios.

Sondea en frames de animación

El evento de conexión se dispara cuando se pulsa un botón. No transmite ejes. Lee la lista dentro de requestAnimationFrame y para el bucle cuando la pestaña está oculta.

const pads = navigator.getGamepads();
// Llama a esto dentro de requestAnimationFrame.
// pads es un array disperso. Comprueba connected antes de leer botones.

Índices estándar de botones

Usa estos solo cuando `mapping === "standard"`. Si no, muestra números.

ÍndiceControl
0–3Cara sur, este, oeste, norte
4–5Hombrera izquierda, hombrera derecha
6–7Gatillo izquierdo, gatillo derecho (analógico)
8–9Atrás / Crear, Start / Opciones
10–11Clic de palanca izquierda, clic de palanca derecha
12–15Cruceta arriba, abajo, izquierda, derecha
16–17Guía, clic del touchpad cuando existe

Los ejes 0 y 1 son la palanca izquierda. Los ejes 2 y 3 son la derecha. La Y positiva suele ser abajo. Los ejes extra pertenecen a una lista en bruto, no al gráfico de la palanca derecha.

Marcas de tiempo y hercios

`gamepad.timestamp` se actualiza cuando el navegador acepta una muestra nueva. Las medianas de los intervalos entre marcas son una tasa de entrega. Restar la marca de `performance.now()` es la edad de la muestra cuando los dos relojes coinciden. Etiqueta las dos cifras como observadas por el navegador. Publicar una insignia de «1000 Hz» a partir de esta cuenta es como las páginas de prueba engañan a la gente.

Vibración

Llama a `vibrationActuator.playEffect("dual-rumble", { duration, strongMagnitude, weakMagnitude })` y gestiona el rechazo. `"trigger-rumble"` es una extensión de Chromium con magnitudes de gatillo izquierdo y derecho. No hay una llamada estándar para la resistencia adaptativa ni para la háptica de bobina del DualSense.

WebHID

Trata WebHID como un permiso aparte, solo Chromium de escritorio, y no escribas informes de salida salvo que tengas un intérprete probado y un camino de recuperación. El botón de giroscopio de este sitio pide el fabricante Sony 0x054C, lee el nombre del producto y cierra el dispositivo. Las páginas de MDN de la Gamepad API y de WebHID son las especificaciones. Esta página es la parte que de verdad ejecutamos.