Gamepad

Gamepad APIGamepad インターフェイスはそれぞれのゲームパッドやその他のコントローラーを定義し、ボタンのプッシュや軸位置や ID といった情報にアクセスできるようにします。

Gamepad オブジェクトは2つのうちのどちらかの方法で取得できます : Gamepad オブジェクトは、gamepadconnected イベントと gamepaddisconnected イベントの gamepad プロパティを使用する方法、Navigator.getGamepads() メソッドが返した配列内の任意の位置を取得する方法のいずれかで返すことができます。

プロパティ

Gamepad.axes 読取専用

デバイス上に軸があるコントロールを表す配列です (例 : アナログスティック)。

Gamepad.buttons 読取専用

デバイス上のボタンを表す gamepadButton のオブジェクトの配列。

Gamepad.connected 読取専用

ゲームパッドがシステムに繋がっているかを表す真偽値。

Gamepad.displayId 読取専用

関連する VRDisplayVRDisplay.displayId を返します (該当する場合)*— *ゲームパッドが表示されているシーンを制御している VRDisplay を返します。

Gamepad.id 読取専用

コントローラーに関する識別情報を含む DOMString

Gamepad.index 読取専用

システムに現在接続しているそれぞれのデバイスを表すユニークな整数値。

Gamepad.mapping 読取専用

ブラウザがデバイス上のコントロールを既知のレイアウトに再マップしたかどうかを示す文字列。

Gamepad.timestamp 読取専用

このゲームパッドのデータが最後に更新された時刻を表す DOMHighResTimeStamp

Gamepad の実験的な拡張機能

以下のインターフェイスは、Gamepad Extensions の仕様で定義されており、触覚フィードバックや WebVR コントローラーのポーズ情報などの実験的機能へのアクセスを提供します。

Gamepad.hand 読取専用

コントローラーがどの手で持っているか、または持っている可能性が最も高いかを定義する列挙型。

Gamepad.hapticActuators 読取専用

GamepadHapticActuator オブジェクトを含む配列。各オブジェクトはコントローラーで使用できる触覚フィードバックハードウェアを表します。

Gamepad.pose 読取専用

WebVR コントローラーに関連付けられたポーズ情報 (例えば 3D 空間における位置と向き) を表す GamepadPose オブジェクト。

window.addEventListener("gamepadconnected", function(e) {
  console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.",
  e.gamepad.index, e.gamepad.id,
  e.gamepad.buttons.length, e.gamepad.axes.length);
});

仕様書

仕様 状態 コメント
Gamepad
Gamepad の定義
草案 初期定義
WebVR 1.1
displayId の定義
ドラフト Gamepad.displayId プロパティの定義。
Gamepad Extensions
Gamepad extensions の定義
編集者草案 Experimental extensions to Gamepad の定義

ブラウザーの互換性

BCD tables only load in the browser

関連情報