--- title: Gamepad API slug: Web/API/Gamepad_API translation_of: Web/API/Gamepad_API ---
{{DefaultAPISidebar("Gamepad API")}}

A Gamepad API é uma maneira dos desenvolvedores acessarem e responderem à sinais oriundos de gamepads e outros controladores de games de forma simples e consistente. A API contém três interfaces, dois eventos e uma função especialista, para responder aos gamepads sendo conectados e desconectados, e acessar outras informações sobre o próprio gamepad, e quais botões e outros controles estão sendo de fato passados.

Interfaces

Gamepad
Representa o gamepad/controlador conectado ao computador.
GamepadButton
Representa um botão num dos controles conectados.
GamepadEvent
O objeto de evento representando eventos disparados que são relacionados ao gamepad.

Experimental Gamepad extensions

GamepadHapticActuator
Representa o hardware no controlador designado à prover feedbacks táteis ao usuário (Se disponível), mais comumente um hardware de vibração.
GamepadPose
Representa a "localização" de um controle (ex. posição e orientação no espaço 3D) no caso de um controlador WebVR.

Veja também as extensões para a interface de Gamepad, para funcionalidades que permitem você acessar as informações acima.

Extensions to other interfaces

{{domxref("Navigator.getGamepads()")}}
Uma extensão para o objeto {{domxref("Navigator")}} que retorna um array  de objetos {{domxref("Gamepad")}}, um para cada controlador conectado.

Window events

{{domxref("Window.ongamepadconnected")}}
Representa um controlador de evento que irá rodar quando o gamepad é conectado (quando o evento {{event('gamepadconnected')}} for disparado).
{{domxref("Window.ongamepaddisconnected")}}
Representa um controlador de evento que irá rodar quando o gamepad é desconectado (quando o evento {{event('gamepaddisconnected')}} for disparado).

Guias e tutorias

Especificações

Especificações Estatus Comentários
{{SpecName("GamepadExtensions")}} {{Spec2("GamepadExtensions")}} Defines the {{anch("Experimental Gamepad extensions")}}.
{{SpecName("Gamepad", "", "The Gamepad API specification")}} {{Spec2("Gamepad")}} Initial definition

Compatibilidade de navegadores

{{Compat("api.Gamepad")}}

Veja também