aboutsummaryrefslogtreecommitdiff
path: root/files/ru/web/api/gamepad
diff options
context:
space:
mode:
authorPeter Bengtsson <mail@peterbe.com>2020-12-08 14:42:52 -0500
committerPeter Bengtsson <mail@peterbe.com>2020-12-08 14:42:52 -0500
commit074785cea106179cb3305637055ab0a009ca74f2 (patch)
treee6ae371cccd642aa2b67f39752a2cdf1fd4eb040 /files/ru/web/api/gamepad
parentda78a9e329e272dedb2400b79a3bdeebff387d47 (diff)
downloadtranslated-content-074785cea106179cb3305637055ab0a009ca74f2.tar.gz
translated-content-074785cea106179cb3305637055ab0a009ca74f2.tar.bz2
translated-content-074785cea106179cb3305637055ab0a009ca74f2.zip
initial commit
Diffstat (limited to 'files/ru/web/api/gamepad')
-rw-r--r--files/ru/web/api/gamepad/axes/index.html70
-rw-r--r--files/ru/web/api/gamepad/buttons/index.html91
-rw-r--r--files/ru/web/api/gamepad/connected/index.html48
-rw-r--r--files/ru/web/api/gamepad/displayid/index.html58
-rw-r--r--files/ru/web/api/gamepad/id/index.html59
-rw-r--r--files/ru/web/api/gamepad/index.html92
-rw-r--r--files/ru/web/api/gamepad/index/index.html50
-rw-r--r--files/ru/web/api/gamepad/mapping/index.html48
-rw-r--r--files/ru/web/api/gamepad/timestamp/index.html52
9 files changed, 568 insertions, 0 deletions
diff --git a/files/ru/web/api/gamepad/axes/index.html b/files/ru/web/api/gamepad/axes/index.html
new file mode 100644
index 0000000000..eb16be54c3
--- /dev/null
+++ b/files/ru/web/api/gamepad/axes/index.html
@@ -0,0 +1,70 @@
+---
+title: Gamepad.axes
+slug: Web/API/Gamepad/axes
+translation_of: Web/API/Gamepad/axes
+---
+<p>{{APIRef("Gamepad API")}}</p>
+
+<p>Свойство <code><strong>Gamepad.axes</strong></code> интерфейса {{domxref("Gamepad") }} возвращает массив, показывающий состояние элементов управления, имеющих оси направления, такие как джойстики на геймпаде.</p>
+
+<p>Каждый элемент массива - дробное число в диапазоне от -1.0 до 1.0, показывающий состояние от самого маленького значения (-1.0) до самого высокого (1.0).</p>
+
+<h2 id="Синтаксис">Синтаксис</h2>
+
+<pre class="syntaxbox notranslate"><span class="idlInterface" id="idl-def-Gamepad"><span class="idlAttribute">readonly attribute <span class="idlAttrType">double[]</span> <span class="idlAttrName">axes</span>;</span></span></pre>
+
+<h2 id="Пример">Пример</h2>
+
+<pre class="brush: js notranslate">function gameLoop() {
+ if(navigator.webkitGetGamepads) {
+ var gp = navigator.webkitGetGamepads()[0];
+ } else {
+ var gp = navigator.getGamepads()[0];
+ }
+
+ if(gp.axes[0] != 0) {
+ b -= gp.axes[0];
+ } else if(gp.axes[1] != 0) {
+ a += gp.axes[1];
+ } else if(gp.axes[2] != 0) {
+ b += gp.axes[2];
+ } else if(gp.axes[3] != 0) {
+ a -= gp.axes[3];
+ }
+
+ ball.style.left = a*2 + "px";
+ ball.style.top = b*2 + "px";
+
+ var start = rAF(gameLoop);
+};</pre>
+
+<h2 id="Значение">Значение</h2>
+
+<p>Массив значений {{domxref("double") }} </p>
+
+<h2 id="Specifications">Specifications</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName("Gamepad", "#dom-gamepad-axes", "Gamepad.axes")}}</td>
+ <td>{{Spec2("Gamepad")}}</td>
+ <td>Initial definition</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Browser_compatibility">Browser compatibility</h2>
+
+
+
+<p>{{Compat("api.Gamepad.axes")}}</p>
+
+<h2 id="See_also">See also</h2>
+
+<p><a href="/en-US/docs/Web/Guide/API/Gamepad">Using the Gamepad API</a></p>
diff --git a/files/ru/web/api/gamepad/buttons/index.html b/files/ru/web/api/gamepad/buttons/index.html
new file mode 100644
index 0000000000..f17b3cc9d1
--- /dev/null
+++ b/files/ru/web/api/gamepad/buttons/index.html
@@ -0,0 +1,91 @@
+---
+title: Gamepad.buttons
+slug: Web/API/Gamepad/buttons
+translation_of: Web/API/Gamepad/buttons
+---
+<p>{{APIRef("Gamepad API")}}</p>
+
+
+
+<p>Свойство <code><strong>Gamepad.buttons</strong></code> интерфейса {{domxref("Gamepad") }} возвращает массив, сосотоящий из объектов {{domxref("gamepadButton")}}, представляющие кнопки, представленные на устройстве (геймпаде). </p>
+
+<p>Каждый элемент в массиве равен 0 если кнопка не нажата, и не-нуль (обычно 1.0) если нажата. Каждый объект {{domxref("gamepadButton")}} содержит два параметра: <code>pressed</code> и <code>value</code>:</p>
+
+<ul>
+ <li>Свойство <code>pressed</code>  - boolean индикатор, показывающий, нажата ли кнопка (<code>true</code>) или нет (<code>false</code>).</li>
+ <li>Свойство <code>value</code> - число с плавающей точкой, показывающая степень нажатия на аналоговую кнопку (как тригггеры на многих современных геймпадах). Значение нормализованно в диапазоне 0.0 – 1.0, где 0.0 указывает, что кнопка не нажата, а 1.0 - что нажата полностью.</li>
+</ul>
+
+<h2 id="Синтакс">Синтакс</h2>
+
+<pre class="syntaxbox notranslate">readonly attribute GamepadButton[] buttons;</pre>
+
+<h2 id="Пример">Пример</h2>
+
+<p>Приведенный код взят из моего<em> (автора статьи)</em> демо Gamepad API button (вы можете  <a href="http://chrisdavidmills.github.io/gamepad-buttons/" rel="noopener">Посмотреть демо</a>, и <a href="https://github.com/chrisdavidmills/gamepad-buttons/tree/master" rel="noopener">посмотреть исходники на GitHub</a>). Важно — в Chrome <a href="https://developer.mozilla.org/ru/docs/Web/API/Navigator/getGamepads"><code>Navigator.getGamepads</code></a> неободимо установить префикс <code>webkit</code>, и значения кнопки будут представлять из себя массив дробных чисел, тогда как в  Firefox <a href="https://developer.mozilla.org/ru/docs/Web/API/Navigator/getGamepads"><code>Navigator.getGamepads</code></a> нет необходимости устанавливать префикс, и значения будут представлять собой массив  объектов <a href="https://developer.mozilla.org/ru/docs/Web/API/GamepadButton"><code>GamepadButton</code></a>; Свойство <a href="https://developer.mozilla.org/ru/docs/Web/API/GamepadButton/value" rel="nofollow"><code>GamepadButton.value</code></a> или <a href="https://developer.mozilla.org/ru/docs/Web/API/GamepadButton/pressed" rel="nofollow"><code>GamepadButton.pressed</code></a> необходимо для получения состояния кнопки, в зависимости от от типа кнопки. В данном простом примере обрабатывается оба вида кнопок.</p>
+
+<pre class="brush: js notranslate">function gameLoop() {
+ if(navigator.webkitGetGamepads) {
+ var gp = navigator.webkitGetGamepads()[0];
+
+ if(gp.buttons[0] == 1) {
+ b--;
+ } else if(gp.buttons[1] == 1) {
+ a++;
+ } else if(gp.buttons[2] == 1) {
+ b++;
+ } else if(gp.buttons[3] == 1) {
+ a--;
+ }
+ } else {
+ var gp = navigator.getGamepads()[0];
+
+ if(gp.buttons[0].value &gt; 0 || gp.buttons[0].pressed == true) {
+ b--;
+ } else if(gp.buttons[1].value &gt; 0 || gp.buttons[1].pressed == true) {
+ a++;
+ } else if(gp.buttons[2].value &gt; 0 || gp.buttons[2].pressed == true) {
+ b++;
+ } else if(gp.buttons[3].value &gt; 0 || gp.buttons[3].pressed == true) {
+ a--;
+ }
+ }
+
+ ball.style.left = a*2 + "px";
+ ball.style.top = b*2 + "px";
+
+ var start = window.requestAnimationFrame(gameLoop);
+};</pre>
+
+<h2 id="Значение">Значение</h2>
+
+<p>Массив из объектов {{domxref("gamepadButton")}}</p>
+
+<h2 id="Specifications">Specifications</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName("Gamepad", "#dom-gamepad-buttons", "Gamepad.buttons")}}</td>
+ <td>{{Spec2("Gamepad")}}</td>
+ <td>Initial definition</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Browser_compatibility">Browser compatibility</h2>
+
+
+
+<p>{{Compat("api.Gamepad.buttons")}}</p>
+
+<div id="compat-mobile"></div>
+
+<h2 id="См._также">См. также</h2>
+
+<p><a href="/en-US/docs/Web/Guide/API/Gamepad">Using the Gamepad API</a></p>
diff --git a/files/ru/web/api/gamepad/connected/index.html b/files/ru/web/api/gamepad/connected/index.html
new file mode 100644
index 0000000000..8170c0f537
--- /dev/null
+++ b/files/ru/web/api/gamepad/connected/index.html
@@ -0,0 +1,48 @@
+---
+title: Gamepad.connected
+slug: Web/API/Gamepad/connected
+translation_of: Web/API/Gamepad/connected
+---
+<p>{{APIRef("Gamepad API")}}</p>
+
+<p>Свойство <code><strong>Gamepad.connected</strong></code> интерфейса {{domxref("Gamepad") }} возвращает логическое значение того, подключен ли всё ещё геймпад к системе.</p>
+
+<p>Если геймпад подключен - значение равно <code>true</code>; если нет - <code>false</code>.</p>
+
+<h2 id="Синтаксис">Синтаксис</h2>
+
+<pre class="syntaxbox"><span class="idlInterface" id="idl-def-Gamepad"><span class="idlAttribute"> readonly attribute <span class="idlAttrType">boolean</span> <span class="idlAttrName">connected</span>;</span></span></pre>
+
+<h2 id="Пример">Пример</h2>
+
+<pre class="brush: js">var gp = navigator.getGamepads()[0];
+console.log(gp.connected);</pre>
+
+<h2 id="Значение">Значение</h2>
+
+<p>{{jsxref("Boolean")}}.</p>
+
+<h2 id="Спецификации">Спецификации</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Спецификация</th>
+ <th scope="col">Статус</th>
+ <th scope="col">Комментарий</th>
+ </tr>
+ <tr>
+ <td>{{SpecName("Gamepad", "#widl-Gamepad-connected", "Gamepad.connected")}}</td>
+ <td>{{Spec2("Gamepad")}}</td>
+ <td>Первоначальное определение</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Совместимость_с_браузерами">Совместимость с браузерами</h2>
+
+<p>{{Compat("api.Gamepad.connected")}}</p>
+
+<h2 id="Смотрите_также">Смотрите также</h2>
+
+<p><a href="/en-US/docs/Web/Guide/API/Gamepad">Using the Gamepad API</a></p>
diff --git a/files/ru/web/api/gamepad/displayid/index.html b/files/ru/web/api/gamepad/displayid/index.html
new file mode 100644
index 0000000000..0b3f71009e
--- /dev/null
+++ b/files/ru/web/api/gamepad/displayid/index.html
@@ -0,0 +1,58 @@
+---
+title: Gamepad.displayId
+slug: Web/API/Gamepad/displayId
+tags:
+ - Виртуальная реальность
+translation_of: Web/API/Gamepad/displayId
+---
+<p>{{DefaultAPISidebar("WebVR API")}}{{SeeCompatTable}}</p>
+
+<p>Свойство <strong>displayId</strong> только для чтения {{domxref("Gamepad")}} возвращаемый интерфейс<dfn> {{domxref("VRDisplay.displayId")}} связанный с {{domxref("VRDisplay")}} —  <code>VRDisplay</code>  (дисплей виртуальной реальности) в котором геймпад управляет отображаемой сценой.</dfn></p>
+
+<p>Геймпад считается связанным с {{domxref("VRDisplay")}} если он сообщает о позиции, которая находится в том же месте, что и {{domxref("VRDisplay.pose")}}.</p>
+
+<h2 id="Syntax">Syntax</h2>
+
+<pre class="brush: js">var myDisplayId = gamepadInstance.displayId;</pre>
+
+<h3 id="Value">Value</h3>
+
+<p>Число, представляющее связанный интерфейс {{domxref("VRDisplay.displayId")}}.Если число равно 0, то геймпад не связан с дисплеем VR( виртуальной реальности).</p>
+
+<h2 id="Examples">Examples</h2>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js">window<span class="punctuation token">.</span><span class="function token">addEventListener</span><span class="punctuation token">(</span><span class="string token">"gamepadconnected"</span><span class="punctuation token">,</span> <span class="keyword token">function</span><span class="punctuation token">(</span>e<span class="punctuation token">)</span> <span class="punctuation token">{
+ if(</span>!e<span class="punctuation token">.</span>gamepad<span class="punctuation token">.displayId) {
+ </span>console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">'Gamepad connected'</span><span class="punctuation token">)</span><span class="punctuation token">;
+ } else {</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">'Gamepad connected, associated with VR display ' +</span> e<span class="punctuation token">.</span>gamepad<span class="punctuation token">.displayId</span><span class="punctuation token">)</span><span class="punctuation token">;
+ }</span>
+<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+
+<h2 id="Specifications">Specifications</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('WebVR 1.1', '#gamepad-getvrdisplays-attribute', 'displayId')}}</td>
+ <td>{{Spec2('WebVR 1.1')}}</td>
+ <td>Initial definition</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Browser_compatibility">Browser compatibility</h2>
+
+<p>{{Compat("api.Gamepad.displayId")}}</p>
+
+<h2 id="See_also">See also</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web/API/WebVR_API">WebVR API homepage</a></li>
+ <li><a href="http://mozvr.com/">MozVr.com</a> — демосцены, материалы, доступные для скачивания и другие материалы команды the Mozilla VR team.</li>
+</ul>
diff --git a/files/ru/web/api/gamepad/id/index.html b/files/ru/web/api/gamepad/id/index.html
new file mode 100644
index 0000000000..ef66df6574
--- /dev/null
+++ b/files/ru/web/api/gamepad/id/index.html
@@ -0,0 +1,59 @@
+---
+title: Gamepad.id
+slug: Web/API/Gamepad/id
+translation_of: Web/API/Gamepad/id
+---
+<div>{{APIRef("Gamepad API")}}</div>
+
+<p>Свойство<strong> <code>Gamepad.id</code></strong> интерфейса {{domxref("Gamepad") }} возвращает строку, содержащую некоторую информацию о контроллере.</p>
+
+<p>Существующий синтаксис не стандартизирован, но в Firefox эта строка представляет собой три значения, разделенные тире (<code>-</code>):</p>
+
+<ul>
+ <li>Две четырехзначных шестнадцатеричных строки, содержащих USB vendor id (<code>VID</code>) и product id (<code>PID</code>) контроллера</li>
+ <li>Имя контроллера, предоставленное драйвером.</li>
+</ul>
+
+<p>Например, PS2 контроллер вернет <code><strong>810-3-USB Gamepad</strong></code>.</p>
+
+<p>Эта информация позволяет вам найти соответствие для элементов управления контроллера, а также, отобразить полезную информацию для пользователя.</p>
+
+<h2 id="Синтаксис">Синтаксис</h2>
+
+<pre class="syntaxbox"><span class="idlInterface" id="idl-def-Gamepad"><span class="idlAttribute">readonly attribute <span class="idlAttrType">DOMString</span> <span class="idlAttrName">id</span>;</span></span></pre>
+
+<h2 id="Пример">Пример</h2>
+
+<pre class="brush: js">window.addEventListener("gamepadconnected", function() {
+  var gp = navigator.getGamepads()[0];
+  gamepadInfo.innerHTML = "Gamepad connected at index " + gp.index + ": " + gp.id + ".";
+});</pre>
+
+<h2 id="Значение">Значение</h2>
+
+<p>{{jsxref("String")}}.</p>
+
+<h2 id="Спецификации">Спецификации</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Спецификация</th>
+ <th scope="col">Статус</th>
+ <th scope="col">Комментарий</th>
+ </tr>
+ <tr>
+ <td>{{SpecName("Gamepad", "#widl-Gamepad-id", "Gamepad.id")}}</td>
+ <td>{{Spec2("Gamepad")}}</td>
+ <td>Первоначальное определение</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Совместимость_с_браузерами">Совместимость с браузерами</h2>
+
+<p>{{Compat("api.Gamepad.id")}}</p>
+
+<h2 id="Смотрите_также">Смотрите также</h2>
+
+<p><a href="/en-US/docs/Web/Guide/API/Gamepad">Using the Gamepad API</a></p>
diff --git a/files/ru/web/api/gamepad/index.html b/files/ru/web/api/gamepad/index.html
new file mode 100644
index 0000000000..2059e361da
--- /dev/null
+++ b/files/ru/web/api/gamepad/index.html
@@ -0,0 +1,92 @@
+---
+title: Gamepad
+slug: Web/API/Gamepad
+translation_of: Web/API/Gamepad
+---
+<div>{{APIRef("Gamepad API")}}</div>
+
+<p>Интерфейс <strong><code>Gamepad</code></strong> <a href="/en-US/docs/Web/API/Gamepad_API">Gamepad API</a> определяет отдельный геймпад или контроллер, предоставляющий доступ к такой информации, как: нажатие кнопок, позиции осей, и id.</p>
+
+<p>Объект <code>Gamepad</code> может быть возвращен в одном из двух случаев: как свойство <code>gamepad</code> событий {{event("gamepadconnected")}} и {{event("gamepaddisconnected")}}, или считыванием любой позиции в массиве, возвращенном методом {{domxref("Navigator.getGamepads()")}}.</p>
+
+<h2 id="Свойства">Свойства</h2>
+
+<dl>
+ <dt>{{domxref("Gamepad.displayId")}} {{readonlyInline}}</dt>
+ <dd><dfn>Возвращает {{domxref("VRDisplay.displayId")}} связанный с {{domxref("VRDisplay")}} (при необходимости) — <code>VRDisplay</code> отображаемая область которого управляется геймпадом.</dfn></dd>
+ <dt>{{domxref("Gamepad.id")}} {{readonlyInline}}</dt>
+ <dd>{{domxref("DOMString")}} содержит идентификационную информацию о контроллере.</dd>
+ <dt>{{domxref("Gamepad.index")}} {{readonlyInline}}</dt>
+ <dd>Целое автоинкрементируемое значение, уникальное для каждого устройства, подключенного в данный момент к системе.</dd>
+ <dt>{{domxref("Gamepad.mapping")}} {{readonlyInline}}</dt>
+ <dd>Строка, указывающая, переназначил ли браузер элементы управления устройства на уже известный шаблон.</dd>
+ <dt>{{domxref("Gamepad.connected")}} {{readonlyInline}}</dt>
+ <dd>Логическое свойство показывающее, подключен ли геймпад к системе в данный момент.</dd>
+ <dt>{{domxref("Gamepad.buttons")}} {{readonlyInline}}</dt>
+ <dd>Массив объектов {{domxref("gamepadButton")}} представляющих кнопки устройства.</dd>
+ <dt>{{domxref("Gamepad.axes")}} {{readonlyInline}}</dt>
+ <dd>Массив, представляющий элементы управления осями устройства (например, аналоговые стики).</dd>
+ <dt>{{domxref("Gamepad.timestamp")}} {{readonlyInline}}</dt>
+ <dd>{{domxref("DOMHighResTimeStamp")}} представляет время последнего обновления данных геймпада.</dd>
+</dl>
+
+<h3 id="Экспериментальные_расширения_для_Gamepad">Экспериментальные расширения для Gamepad</h3>
+
+<p>Следующие интерфейсы определены в спецификации {{SpecName("GamepadExtensions")}}, и предоставляют доступ к экспериментальным возможностям, таким как тактильная обратная связь (haptic feedback) и информация о положении WebVR контроллера.</p>
+
+<dl>
+ <dt>{{domxref("Gamepad.hand")}} {{readonlyInline}}</dt>
+ <dd>Перечисляемое значение, которое определяет в какой руке находится контроллер.</dd>
+ <dt>{{domxref("Gamepad.hapticActuators")}} {{readonlyInline}}</dt>
+ <dd>Массив, содержащий объекты {{domxref("GamepadHapticActuator")}}, каждый из которых представляет собой аппаратные средства тактильной обратной связи (haptic feedbac) доступные для контроллера.</dd>
+ <dt>{{domxref("Gamepad.pose")}} {{readonlyInline}}</dt>
+ <dd>Объект {{domxref("GamepadPose")}} представляет информацию о положении WebVR контроллера (например, позиция и ориентация в 3D пространстве).</dd>
+</dl>
+
+<h2 id="Пример">Пример</h2>
+
+<pre class="brush: js">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);
+});</pre>
+
+<h2 id="Спецификации">Спецификации</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Спецификация</th>
+ <th scope="col">Статус</th>
+ <th scope="col">Комментарий</th>
+ </tr>
+ <tr>
+ <td>{{SpecName("Gamepad", "#gamepad-interface", "Gamepad")}}</td>
+ <td>{{Spec2("Gamepad")}}</td>
+ <td>Первоначальное определение</td>
+ </tr>
+ <tr>
+ <td>{{SpecName('WebVR 1.1', '#gamepad-getvrdisplays-attribute', 'displayId')}}</td>
+ <td>{{Spec2("WebVR 1.1")}}</td>
+ <td>Определено свойство {{domxref("Gamepad.displayId")}}.</td>
+ </tr>
+ <tr>
+ <td>{{SpecName("GamepadExtensions", "#partial-gamepad-interface", "Gamepad extensions")}}</td>
+ <td>{{Spec2("GamepadExtensions")}}</td>
+ <td>Определены {{anch("Экспериментальные расширения для Gamepad")}}</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Совместимость_с_браузерами">Совместимость с браузерами</h2>
+
+
+
+<p>{{Compat("api.Gamepad")}}</p>
+
+<h2 id="Смотрите_также">Смотрите также</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web/Guide/API/Gamepad">Using the Gamepad API</a></li>
+ <li><a href="/en-US/docs/Web/API/Gamepad_API">Gamepad API</a></li>
+</ul>
diff --git a/files/ru/web/api/gamepad/index/index.html b/files/ru/web/api/gamepad/index/index.html
new file mode 100644
index 0000000000..2e51e57342
--- /dev/null
+++ b/files/ru/web/api/gamepad/index/index.html
@@ -0,0 +1,50 @@
+---
+title: Gamepad.index
+slug: Web/API/Gamepad/index
+translation_of: Web/API/Gamepad/index
+---
+<div>{{APIRef("Gamepad API")}}</div>
+
+<p>Свойство <code><strong>Gamepad.index</strong></code> интерфейса {{domxref("Gamepad") }} возвращает целое автоинкрементируемое значение, уникальное для каждого устройства, подключенного к системе.</p>
+
+<p>Это может быть полезно для распознавания нескольких контроллеров; отключенный, и подключенный заново геймпад, будет иметь тот же индекс.</p>
+
+<h2 id="Синтаксис">Синтаксис</h2>
+
+<pre class="syntaxbox"><span class="idlInterface" id="idl-def-Gamepad"><span class="idlAttribute">readonly attribute <span class="idlAttrType">long</span> <span class="idlAttrName">index</span>;</span></span></pre>
+
+<h2 id="Пример">Пример</h2>
+
+<pre class="brush: js">window.addEventListener("gamepadconnected", function() {
+ var gp = navigator.getGamepads()[0];
+ gamepadInfo.innerHTML = "Gamepad connected at index " + gp.index + ": " + gp.id + ".";
+});</pre>
+
+<h3 id="Значение">Значение</h3>
+
+<p>{{jsxref("Number") }}.</p>
+
+<h2 id="Спецификации">Спецификации</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Спецификация</th>
+ <th scope="col">Статус</th>
+ <th scope="col">Комментарий</th>
+ </tr>
+ <tr>
+ <td>{{SpecName("Gamepad", "#widl-Gamepad-index", "Gamepad.index")}}</td>
+ <td>{{Spec2("Gamepad")}}</td>
+ <td>Первоначальное определение</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Совместимость_с_браузерами">Совместимость с браузерами</h2>
+
+<p>{{Compat("api.Gamepad.index")}}</p>
+
+<h2 id="Смотрите_также">Смотрите также</h2>
+
+<p><a href="/en-US/docs/Web/Guide/API/Gamepad">Using the Gamepad API</a></p>
diff --git a/files/ru/web/api/gamepad/mapping/index.html b/files/ru/web/api/gamepad/mapping/index.html
new file mode 100644
index 0000000000..5fad34e1b5
--- /dev/null
+++ b/files/ru/web/api/gamepad/mapping/index.html
@@ -0,0 +1,48 @@
+---
+title: Gamepad.mapping
+slug: Web/API/Gamepad/mapping
+translation_of: Web/API/Gamepad/mapping
+---
+<p>{{APIRef("Gamepad API")}}</p>
+
+<p>Свойство <code><strong>Gamepad.mapping</strong></code> интерфейса {{domxref("Gamepad")}} возвращает строковый индикатор, указывающий, изменил ли браузер элементы управления на уже известный шабон</p>
+
+<p>На данный момент существует один поддерживаемый шаблон - <a href="https://dvcs.w3.org/hg/gamepad/raw-file/default/gamepad.html#remapping">standard gamepad</a>. Если браузер позволяет поменять элементы управления в данном шаблоне, свойство  <code>mapping</code> будет установлено строко <code>"standard"</code>.</p>
+
+<h2 id="Синтаксис">Синтаксис</h2>
+
+<pre class="syntaxbox notranslate"><span class="idlInterface" id="idl-def-Gamepad"><span class="idlAttribute">readonly attribute <span class="idlAttrType">DOMString</span> <span class="idlAttrName">mapping</span>;</span></span></pre>
+
+<h2 id="Пример">Пример</h2>
+
+<pre class="brush: js notranslate">var gp = navigator.getGamepads()[0];
+console.log(gp.mapping);</pre>
+
+<h2 id="Значение">Значение</h2>
+
+<p>A {{domxref("string")}}.</p>
+
+<h2 id="Спецификации">Спецификации</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Specification</th>
+ <th scope="col">Status</th>
+ <th scope="col">Comment</th>
+ </tr>
+ <tr>
+ <td>{{SpecName("Gamepad", "#dom-gamepad-mapping", "Gamepad.mapping")}}</td>
+ <td>{{Spec2("Gamepad")}}</td>
+ <td>Initial definition</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Браузерная_совместимость">Браузерная совместимость</h2>
+
+<p>{{Compat("api.Gamepad.mapping")}}</p>
+
+<h2 id="См._также">См. также</h2>
+
+<p><a href="/en-US/docs/Web/Guide/API/Gamepad">Using the Gamepad API</a></p>
diff --git a/files/ru/web/api/gamepad/timestamp/index.html b/files/ru/web/api/gamepad/timestamp/index.html
new file mode 100644
index 0000000000..e2352b126d
--- /dev/null
+++ b/files/ru/web/api/gamepad/timestamp/index.html
@@ -0,0 +1,52 @@
+---
+title: Gamepad.timestamp
+slug: Web/API/Gamepad/timestamp
+translation_of: Web/API/Gamepad/timestamp
+---
+<div>{{APIRef("Gamepad API")}}</div>
+
+<p>Свойство <strong><code>Gamepad.timestamp</code></strong> интерфейса {{domxref("Gamepad")}} возвращает {{domxref("DOMHighResTimeStamp")}}, представляющий собой время последнего обновления геймпада.</p>
+
+<p>Идея состоит в том, чтобы позволить разработчику определить, были ли изменены данные для <code>axes</code> и <code>button</code> на аппаратном обеспечении. Значение должно быть установлено относительно атрибута <code>navigationStart</code> интерфейса <code>{{domxref("PerformanceTiming")}}</code>. Значения монотонно увеличиваются, поэтому их можно сравнивать, чтобы определить порядок изменений, т.к. новые значения всегда будут больше или равны старым.</p>
+
+<div class="note">
+<p><strong>Примечание</strong>: В данный момент, это свойство нигде не поддерживается.</p>
+</div>
+
+<h2 id="Синтаксис">Синтаксис</h2>
+
+<pre class="syntaxbox"><span class="idlInterface" id="idl-def-Gamepad"><span class="idlAttribute">readonly attribute <span class="idlAttrType">DOMHighResTimeStamp</span> <span class="idlAttrName">timestamp</span>;</span></span></pre>
+
+<h2 id="Пример">Пример</h2>
+
+<pre class="brush: js">var gp = navigator.getGamepads()[0];
+console.log(gp.timestamp);</pre>
+
+<h2 id="Значение">Значение</h2>
+
+<p>{{domxref("DOMHighResTimeStamp")}}.</p>
+
+<h2 id="Спецификации">Спецификации</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Спецификация</th>
+ <th scope="col">Статус</th>
+ <th scope="col">Комментарий</th>
+ </tr>
+ <tr>
+ <td>{{SpecName("Gamepad", "#widl-Gamepad-timestamp", "Gamepad.timestamp")}}</td>
+ <td>{{Spec2("Gamepad")}}</td>
+ <td>Первоначальное определение</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Совместимость_с_браузерами">Совместимость с браузерами</h2>
+
+<p>{{Compat("api.Gamepad.timestamp")}}</p>
+
+<h2 id="Смотрите_также">Смотрите также</h2>
+
+<p><a href="/en-US/docs/Web/Guide/API/Gamepad">Using the Gamepad API</a></p>