Gamepad API は開発者に様々な種類のゲームパッドや単純で一貫した異なるゲームのコントローラーと接続する方法を提供している。これには、ゲームパッドの接続や切断、ゲームパッドに関するその他の情報へのアクセス、現在押されているボタンやその他のコントロールなど、3つのインターフェース、2つのイベントと1つの特別な機能が含まれています。

インターフェイス

Gamepad
Represents a gamepad/controller connected to the computer.
GamepadButton
Represents a button on one of the connected controllers.
GamepadEvent
The event object representing events fired that are related to gamepads.

Experimental Gamepad extensions

 

GamepadHapticActuator
Represents hardware in the controller designed to provide haptic feedback to the user (if available), most commonly vibration hardware.
GamepadPose
Represents the pose of a controller (e.g. position and orientation in 3D space) in the case of a WebVRcontroller.

See also the extensions to the Gamepad interface, for features that allow you to access the above information.

Extensions to other interfaces

Navigator.getGamepads()
接続されたゲームパッドごとに一つの Gamepad オブジェクトの配列を返す Navigator オブジェクトの拡張です。

Window events

Window.ongamepadconnected
Represents an event handler that will run when a gamepad is connected (when the gamepadconnected event fires).
Window.ongamepaddisconnected
Represents an event handler that will run when a gamepad is disconnected (when the gamepaddisconnected event fires).
(この部分が、上に吸収されるはず)Gamepad Window events
ゲームパッドが接続または未接続になったときに検知できる特別な Window オブジェクトの特別なイベント: gamepadconnectedgamepaddisconnected。イベントハンドラーはかんたんに Window.ongamepadconnectedWindow.ongamepaddisconnectedを利用してかんたんに設定を行うことが出来ます。

チュートリアルとガイド

仕様

仕様 状態 コメント
Gamepad Extensions 編集者草案 Defines the Experimental Gamepad extensions.
Gamepad
The Gamepad API specification の定義
草案 Initial definition

ブラウザの互換性

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOS 版 SafariSamsung Internet
基本対応Chrome 完全対応 35
完全対応 35
未対応 21 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge 完全対応 ありFirefox 完全対応 29
完全対応 29
未対応 24 — 28
無効
無効 From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE 未対応 なしOpera 完全対応 22
完全対応 22
未対応 15 — 21
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Safari 未対応 なしWebView Android 未対応 なしChrome Android 完全対応 35
完全対応 35
未対応 25 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge Mobile 完全対応 ありFirefox Android 完全対応 32Opera Android 完全対応 22
完全対応 22
未対応 15 — 21
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Safari iOS 未対応 なしSamsung Internet Android 完全対応 あり
Gamepad() constructorChrome 完全対応 35Edge 完全対応 12Firefox 完全対応 29
完全対応 29
未対応 24 — 28
無効
無効 From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE 未対応 なしOpera 完全対応 22Safari 未対応 なしWebView Android 未対応 なしChrome Android 完全対応 35Edge Mobile 完全対応 ありFirefox Android 完全対応 32Opera Android 完全対応 22Safari iOS 未対応 なしSamsung Internet Android 完全対応 あり
axesChrome 完全対応 35
完全対応 35
未対応 21 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge 完全対応 12Firefox 完全対応 29
完全対応 29
未対応 24 — 28
無効
無効 From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE 未対応 なしOpera 完全対応 22
完全対応 22
未対応 15 — 21
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Safari 未対応 なしWebView Android 未対応 なしChrome Android 完全対応 35
完全対応 35
未対応 25 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge Mobile 完全対応 ありFirefox Android 完全対応 32Opera Android 完全対応 22
完全対応 22
未対応 15 — 21
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Safari iOS 未対応 なしSamsung Internet Android 完全対応 あり
buttonsChrome 完全対応 35
完全対応 35
未対応 21 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge 完全対応 12Firefox 完全対応 29
完全対応 29
未対応 24 — 28
無効
無効 From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE 未対応 なしOpera 完全対応 22
完全対応 22
未対応 15 — 21
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Safari 未対応 なしWebView Android 未対応 なしChrome Android 完全対応 35
完全対応 35
未対応 25 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge Mobile 完全対応 ありFirefox Android 完全対応 32Opera Android 完全対応 22
完全対応 22
未対応 15 — 21
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Safari iOS 未対応 なしSamsung Internet Android 完全対応 あり
connectedChrome 完全対応 35
完全対応 35
未対応 25 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge 完全対応 12Firefox 完全対応 29
完全対応 29
未対応 24 — 28
無効
無効 From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE 未対応 なしOpera 完全対応 22
完全対応 22
未対応 15 — 21
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Safari 未対応 なしWebView Android 未対応 なしChrome Android 完全対応 35
完全対応 35
未対応 25 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge Mobile 完全対応 ありFirefox Android 完全対応 32Opera Android 完全対応 22
完全対応 22
未対応 15 — 21
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Safari iOS 未対応 なしSamsung Internet Android 完全対応 あり
displayId
実験的
Chrome 完全対応 あり
補足 無効
完全対応 あり
補足 無効
補足 Only works on desktop in an experimental version of Chrome (other builds won't return any devices when Navigator.getVRDisplays() is invoked).
無効 This feature is behind the WebVR preference. To change preferences in Chrome, visit chrome://flags.
Edge 完全対応 15Firefox 完全対応 56
補足
完全対応 56
補足
補足 Currently only Windows support is enabled by default. Mac support is available in Firefox Nightly.
IE 未対応 なしOpera ? Safari ? WebView Android 未対応 なしChrome Android 完全対応 あり
補足
完全対応 あり
補足
補足 Currently supported only by Google Daydream.
Edge Mobile ? Firefox Android ? Opera Android ? Safari iOS ? Samsung Internet Android 完全対応 あり
hand
実験的
Chrome 未対応 なしEdge 完全対応 15Firefox 完全対応 あり
補足 無効
完全対応 あり
補足 無効
補足 The flag is enabled by default in Firefox Nightly and Beta, versions 55 and above.
無効 This feature is behind the dom.gamepad-extensions.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE 未対応 なしOpera 未対応 なしSafari 未対応 なしWebView Android 未対応 なしChrome Android 未対応 なしEdge Mobile 未対応 なしFirefox Android 未対応 なしOpera Android 未対応 なしSafari iOS 未対応 なしSamsung Internet Android 未対応 なし
hapticActuators
実験的
Chrome 未対応 なしEdge 完全対応 15Firefox 完全対応 あり
補足 無効
完全対応 あり
補足 無効
補足 The flag is enabled by default in Firefox Nightly and Beta, versions 55 and above.
無効 This feature is behind the dom.gamepad-extensions.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE 未対応 なしOpera 未対応 なしSafari 未対応 なしWebView Android 未対応 なしChrome Android 未対応 なしEdge Mobile 未対応 なしFirefox Android 未対応 なしOpera Android 未対応 なしSafari iOS 未対応 なしSamsung Internet Android 未対応 なし
id
実験的
Chrome 完全対応 35
完全対応 35
未対応 21 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge 完全対応 12Firefox 完全対応 29
完全対応 29
未対応 24 — 28
無効
無効 From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE 未対応 なしOpera 完全対応 22
完全対応 22
未対応 15 — 21
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Safari 未対応 なしWebView Android 未対応 なしChrome Android 完全対応 35
完全対応 35
未対応 25 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge Mobile 完全対応 ありFirefox Android 完全対応 32Opera Android 未対応 なしSafari iOS 未対応 なしSamsung Internet Android 完全対応 あり
index
実験的
Chrome 完全対応 35
完全対応 35
未対応 21 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge 完全対応 12Firefox 完全対応 29
完全対応 29
未対応 24 — 28
無効
無効 From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE 未対応 なしOpera 完全対応 22
完全対応 22
未対応 15 — 21
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Safari 未対応 なしWebView Android 未対応 なしChrome Android 完全対応 35
完全対応 35
未対応 25 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge Mobile 完全対応 ありFirefox Android 完全対応 32Opera Android 未対応 なしSafari iOS 未対応 なしSamsung Internet Android 完全対応 あり
mappingChrome 完全対応 35
完全対応 35
未対応 21 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge 完全対応 12Firefox 完全対応 29
完全対応 29
未対応 24 — 28
無効
無効 From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE 未対応 なしOpera 完全対応 22
完全対応 22
未対応 15 — 21
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Safari 未対応 なしWebView Android 未対応 なしChrome Android 完全対応 35
完全対応 35
未対応 25 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge Mobile 完全対応 ありFirefox Android 完全対応 32Opera Android 完全対応 22
完全対応 22
未対応 15 — 21
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Safari iOS 未対応 なしSamsung Internet Android 完全対応 あり
pose
実験的
Chrome 未対応 なしEdge 完全対応 15Firefox 完全対応 あり
補足 無効
完全対応 あり
補足 無効
補足 The flag is enabled by default in Firefox Nightly and Beta, versions 55 and above.
無効 This feature is behind the dom.gamepad-extensions.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE 未対応 なしOpera 未対応 なしSafari 未対応 なしWebView Android 未対応 なしChrome Android 未対応 なしEdge Mobile 未対応 なしFirefox Android 未対応 なしOpera Android 未対応 なしSafari iOS 未対応 なしSamsung Internet Android 未対応 なし
timestampChrome 完全対応 35
完全対応 35
未対応 21 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge 完全対応 12Firefox 完全対応 29
完全対応 29
未対応 24 — 28
無効
無効 From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE 未対応 なしOpera 完全対応 22
完全対応 22
未対応 15 — 21
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Safari 未対応 なしWebView Android 未対応 なしChrome Android 完全対応 35
完全対応 35
未対応 25 — 34
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge Mobile 完全対応 ありFirefox Android 完全対応 32Opera Android 完全対応 22
完全対応 22
未対応 15 — 21
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Safari iOS 未対応 なしSamsung Internet Android 完全対応 あり

凡例

完全対応  
完全対応
未対応  
未対応
実装状況不明  
実装状況不明
実験的。動作が変更される可能性があります。
実験的。動作が変更される可能性があります。
実装ノートを参照してください。
実装ノートを参照してください。
ユーザーが明示的にこの機能を有効にしなければなりません。
ユーザーが明示的にこの機能を有効にしなければなりません。
使用するには、ベンダー接頭辞または異なる名前が必要です。
使用するには、ベンダー接頭辞または異なる名前が必要です。

参照

ドキュメントのタグと貢献者

このページの貢献者: hamasaki, T.Ukegawa
最終更新者: hamasaki,