Эмуляция XBOX геймпада
Введение
В данной инструкции будет описано, как можно использовать аппаратуру для FPV полетов, в качестве Xbox Gamepad. Это может быть удобным для использования в симуляторе DJI Virtual Flight for Windows.
Данный симулятор поддерживает либо аппаратуру от DJI более старых версий либо, Xbox Gamepad. Именно по этому нам и нужно произвести его эмуляцию.
Virtual Gamepad Emulation Driver
Сначала нам нужно установить Virtual Gamepad Emulation Driver (ViGEm Bus Driver).
Скачать последнюю версию инсталлятора можно со страницы релизов.
Больше ничего делать не нужно.
Universal Control Remapper (UCR)
Universal Control Remapper - это программа, которая и будет эмулировать Xbox Gamepad и преобразовывать сигналы со стиков и кнопок нашей аппаратуры в стики и кнопки Xbox Gamepad.
Нужно скачать архив с программой со страницы релизов и распаковать в какую-нибудь папку.
Создание профиля
Подключаем аппаратуру к компьютеру обычным образом, например через кабель и выбираем на экране аппаратуры USB Joystick (HID).
Запускаем программу UCR.exe.
В левой панели Profiles нажимаем кнопку с плюсиком, тем самым добавляя новый профиль.
Даем имя профилю.
В разделе Input Devices ставим галочку напротив нашей аппаратуры.
В панели Output Devices выбираем ViGEm Xbox 360 Controller 1. Симулятор DJI Virtual Flight ожидает именно геймпад Xbox.
Номер (1, 2, 3 или 4) отвечает за то, какими по счёту игроком (слотом) будет эмулируемый контроллер. Для одного пульта выбираем самый первый слот — Controller 1.
Нажимаем кнопку Create. Откроется окно с редактированием плагинов (пробросов каналов).
Нужно настроить **два плагина Axes to Axes** (по одному для каждого стика: один для левого, один для правого).
Настройка первого блока (Левый стик — Throttle / Yaw)
В FPV (режим Mode 2) левый стик отвечает за Газ (Throttle) по вертикали и Рыскание (Yaw) по горизонтали. На геймпаде Xbox это Left Stick (LS).
-
В левой колонке Plugins найдите плагин
Axes to Axesи нажмите на знак+рядом с ним. Дайте имя этому плагину, например,Left Stick. Нажмите кнопку Accept. -
В разделе X Axis - Input нажмите кнопку
Click to bindи пошевелите левым стиком влево-вправо (Yaw). UCR сам перехватит нужную ось пульта. Там появится надписьAxes, RotationX. -
В разделе Y Axis - Input нажмите кнопку
Click to bindи пошевелите левым стиком вверх-вниз (Throttle). Появится надписьAxes, Z. -
В разделе X Axis - Output (в нижней панели «Axes to Axes»): нажмите
Click to bindи из появившегося списка Xbox выберитеLS X(Left Stick X). -
В разделе Y Axis - Output нажмите
Click to bindи выберитеLS Y(Left Stick Y).
Обратите внимание: Если в симуляторе газ или другой канал будет работать наоборот (вверх = ноль, вниз = максимум), включите переключатель
Invert Y.
Настройка второго блока (Правый стик — Pitch / Roll)
Правый стик отвечает за Тангаж (Pitch/Elevator) по вертикали и Крен (Roll/Aileron) по горизонтали. На геймпаде Xbox это Right Stick (RS).
-
В левой колонке Plugins найдите плагин
Axes to Axesи нажмите на знак+рядом с ним. Дайте имя этому плагину, например,Right Stick. Нажмите кнопку Accept. В правой части появится второй такой же блок. -
В разделе X Axis - Input нажмите кнопку
Click to bindи пошевелите правым стиком влево-вправо (Roll). UCR сам перехватит нужную ось пульта. Там появится надпись `Axes, X``. -
В разделе Y Axis - Input нажмите кнопку
Click to bindи пошевелите правым стиком вверх-вниз (Pitch). Появится надписьAxes, Y. -
В разделе X Axis - Output (в нижней панели «Axes to Axes») нажмите
Click to bindи из появившегося списка Xbox выберитеRS X(Right Stick X). -
В разделе Y Axis - Output нажмите
Click to bindи выберитеRS Y(Right Stick Y).
Маппинг кнопок
Маппинг тумблеров и кнопок аппаратуры на кнопки Xbox (A, B, X, Y) в UCR делается через плагин Button to Button.
-
В левой колонке Plugins найдите категорию Button и нажмите
+рядом с плагиномButton to Button. Дайте название нужной кнопки — например,Button A. Нажмите кнопку Accept. В основной рабочей зоне появится новый блок. -
В разделе Button - Input нажмите синюю кнопку
Click to bindи нажмите нужную физическую кнопку или переключите тумблер на пультике. UCR автоматически зафиксирует номер кнопки. -
В разделе Button - Output (в нижней панели «Button to Button») нажмите
Click to bindи из появившегося списка кнопок Xbox выберите нужную кнопку, например Buttons - *A. -
Настройка остальных кнопок делается так же
Полезный совет:
2-х и 3-позиционные тумблеры (SA, SB и т.д.): в Windows часто определяются как RotationY или RotationZ. Их можно биндить через плагин Axis to Button
Запуск и сохранение
- Нажмите на иконку дискеты (Save) в самом верхнем левом углу окна UCR.
-
Нажмите на значок
Play(треугольник) на верхней панели, чтобы активировать трансляцию.
Перед нажатием на значок Play можно открыть панель управления, а в ней разделSetup USB Game Controllers. В нем будет одно устройство. Это пульт. После нажатия кнопки Play появится второе устройствоController (XBOX 360 for Windows).
Можно открыть окно свойств данного контроля, подвигать стиками и увидеть, что они реагируют. -
Не закрывая UCR, запускайте DJI Virtual Flight. Симулятор начнёт принимать команды с вашего пульта, как с оригинального геймпада Xbox.