Browse Source

Documentation: input-interface: split Russian translation to new file

pull/2/head
Alibek Omarov 5 years ago
parent
commit
c42b5e043d
  1. 48
      Documentation/extensions/input-interface-ru.md
  2. 56
      Documentation/extensions/input-interface.md

48
Documentation/extensions/input-interface-ru.md

@ -0,0 +1,48 @@
## Цель
На текущий момент клиенты имеют некоторые части платформозависимого кода внутри себя. Это плохо, т.к. мы не можем использовать одинаковые функции (если не перепишем почти половину кода SDL) на разных платформах.
## Клиентская часть
* Клиент будет иметь возможность полностью реализовать touch-ввод. Отрисовка может быть произведена через HUD.
* Клиент получит простые события движения и обзора от движка
### Клиентская реализация
#### Клиент будет экспортировать некоторые функции движку (опционально):
* `int IN_ClientTouchEvent ( int fingerID, float x, float y, float dx, float dy );`
Вернёт 1 если касание активно, иначе 0.
* `void IN_ClientMoveEvent ( float forwardmove, float sidemove );`
Клиент будет накапливать значения величин для команд движения перед созданием команд и очищать их при CreateMove.
* `void IN_ClientLookEvent ( float relyaw, float relpitch );`
Клиент будет вращать камерой когда нужно, прямо как в реализации мыши
## Движковая часть
* Движок будет управлять событиями платформы и вызывать клиентские функции
* Движок реализует стандартную систему взгляда и движения если её нет в клиенте
### Движковая реализация
#### События касания
Перед вызовом ClientMove движок обязан получить события о касании.
Если из клиента экспортирована функция IN_ClientTouchEvent, событие будет отправлено клиенту.
Иначе, движок будет рисовать свой touch-интерфейс.
#### Другие события
Интерфейс прикосновений и код джойстика в движке будут генерировать следующие два типа событий:
* События движения (функция IN_ClientMoveEvent)
* События просмотра (функция IN_ClientLookEvent)
Если клиент экспортирует эти функции, события будут отправляться клиенту перед CreateMove
Иначе события просмотра будут происходить перед CreateMove, но после MoveEvent. Они будут применены к генерируемым командам

56
Documentation/extensions/input-interface.md

@ -1,21 +1,15 @@
## Purpose / Цель ## Purpose
**Eng:**
Clients have different platform-depended input code now. Clients have different platform-depended input code now.
It is bad because we cannot use same functions (if we won't rewrite almost half of SDL) on different platforms. It is bad because we cannot use same functions (if we won't rewrite almost half of SDL) on different platforms.
**Rus:** ## Client part
На текущий момент клиенты имеют некоторые части платформозависимого кода внутри себя. Это плохо, т.к. мы не можем использовать одинаковые функции (если не перепишем почти половину кода SDL) на разных платформах.
## Client part / Клиентская часть
**Eng:**
* Client will have ability to fully implement touch input. Drawing may be done by HUD. * Client will have ability to fully implement touch input. Drawing may be done by HUD.
* Client will receive basic motion and look events from engine * Client will receive basic motion and look events from engine
**Rus:** ### Client implementation
* Клиент будет иметь возможность полностью реализовать touch-ввод. Отрисовка может быть произведена через HUD.
* Клиент получит простые события движения и обзора от движка
### Client implementation / Клиентская реализация
**Eng:**
#### Client will optionally export some functions to Engine: #### Client will optionally export some functions to Engine:
* `int IN_ClientTouchEvent ( int fingerID, float x, float y, float dx, float dy );` * `int IN_ClientTouchEvent ( int fingerID, float x, float y, float dx, float dy );`
@ -29,31 +23,13 @@ Client wil accumulate move values before creating commands and flush it on Creat
Client will rotate camera when needed as in mouse implementation Client will rotate camera when needed as in mouse implementation
**Rus:** ## Engine part
#### Клиент будет экспортировать некоторые функции движку (опционально):
* `int IN_ClientTouchEvent ( int fingerID, float x, float y, float dx, float dy );`
Вернёт 1 если касание активно, иначе 0.
* `void IN_ClientMoveEvent ( float forwardmove, float sidemove );`
Клиент будет накапливать значения величин для команд движения перед созданием команд и очищать их при CreateMove.
* `void IN_ClientLookEvent ( float relyaw, float relpitch );`
Клиент будет вращать камерой когда нужно, прямо как в реализации мыши
## Engine part / Движковая часть
**Eng:**
* Engine will handle platform events and call client functions. * Engine will handle platform events and call client functions.
* Engine will implement fallback look and movement system when client interface not present * Engine will implement fallback look and movement system when client interface not present
**Rus:** ### Engine implementation
* Движок будет управлять событиями платформы и вызывать клиентские функции
* Движок реализует стандартную систему взгляда и движения если её нет в клиенте
### Engine implementation / Реализация в движке
**Eng:**
#### Touch events #### Touch events
Before calling ClientMove engine must get touch events. Before calling ClientMove engine must get touch events.
@ -62,27 +38,11 @@ If client exported IN_ClientTouchEvent, event will be sent to client.
Otherwise engine will draw own touch interface. Otherwise engine will draw own touch interface.
**Rus:** #### Other events
#### События касания
Перед вызовом ClientMove движок обязан получить события о касании.
Если из клиента экспортирована функция IN_ClientTouchEvent, событие будет отправлено клиенту.
Иначе, движок будет рисовать свой touch-интерфейс.
#### Other events / Другие события
**Eng:**
Engine touch interface and joystick support code will generate two types of events: Engine touch interface and joystick support code will generate two types of events:
* Move events (IN_ClientMoveEvent function) * Move events (IN_ClientMoveEvent function)
* Look events (IN_ClientLookEvent function) * Look events (IN_ClientLookEvent function)
If client exported these functions, events will be sent to client before CreateMove If client exported these functions, events will be sent to client before CreateMove
Otherwise Look Event will be processed before CreateMove, but MoveEvent after. It will be applied to generated command Otherwise Look Event will be processed before CreateMove, but MoveEvent after. It will be applied to generated command
**Rus:**
Интерфейс прикосновений и код джойстика в движке будут генерировать следующие два типа событий:
* События движения (функция IN_ClientMoveEvent)
* События просмотра (функция IN_ClientLookEvent)
Если клиент экспортирует эти функции, события будут отправляться клиенту перед CreateMove
Иначе события просмотра будут происходить перед CreateMove, но после MoveEvent. Они будут применены к генерируемым командам

Loading…
Cancel
Save