Как добавить кнопки ввода с контроллеров VR в VRTK 4 Beta (Unity)? - PullRequest
0 голосов
/ 24 апреля 2020

Я хочу использовать кнопки для запуска действий в моей сцене Unity, но я не могу понять, как вызывать соответствующие методы, когда я нажимаю кнопку. Я использую VRTK 4 (бета) и не могу найти какую-либо полезную документацию или ответы на нее.

1 Ответ

0 голосов
/ 24 апреля 2020

VRTK версии 4.0 Beta

  1. Найдите «Индекс ввода устаревших данных» из этой таблицы для кнопки вашего устройства: https://docs.unity3d.com/Manual/xr_input.html
  2. Проверка соответствующий тип объекта.
    • Если это кнопка, вам не нужно добавлять ее в список «Настройки проекта -> Ввод».
    • Если это ось, ее нужно добавить в « Настройки проекта -> Ввод »списка (путем увеличения размера списка). Посмотрите на другие (похожие) кнопки и скопируйте схему:

Example Left Oculus Trigger:
Name: VRTK_Axis9_LeftTrigger *[Adapt your name]*
[...] Gravity: 0
Dead: 0.001
Sensitivity: 1
[...]
Type: Joystick Axis
Axis: 9th axis (Joysticks) *[Enter the index number you've looked up before]*
Joy Num: Get Motion from all Joysticks

Просмотрите свойства и их описания здесь: https://docs.unity3d.com/Manual/class-InputManager.html


Создайте новый GameObject в Unity.
  • Если это кнопка:
    • добавить сценарий Zinnia UnityButtonAction. Установите «Джойстик [индекс, который вы искали]» в качестве кода клавиши.
  • Если это 1DAxis:
    • , и вы хотите его значение (с плавающей точкой):
      • добавить скрипт VRTK UnityAxis1DAction. Установите имя из «Настройки проекта -> Ввод» (в примере «VRTK_Axis9_LeftTrigger») в качестве имени оси.
    • и вы хотите, чтобы его нажимали / отпускали (bool):
      • добавить скрипт VRTK UnityAxis1DAction. Задайте имя из «Настройки проекта -> Ввод» (в примере «VRTK_Axis9_LeftTrigger») в качестве имени оси.
      • добавьте скрипт Zinnia FloatToBoolean. В поле «Transformed» укажите сам GameObject (нажмите +, чтобы добавить). Выберите BooleanAction.Receive.
      • добавьте скрипт Zinnia BooleanAction. В поле «Активировано» укажите GameObject, который должен реагировать на состояние кнопки (нажмите +, чтобы добавить), и выберите метод, который будет вызываться при нажатии кнопки. (Повторите для поля «Деактивировано» с методом, который должен быть вызван при отпускании кнопки.)
  • Если это 2DAxis:
    • и вам нужны его значения:
      • добавьте скрипт VRTK UnityAxis2DAction. Задайте имена из «Настройки проекта -> Ввод» для осей X и Y, указав соответствующие имена осей X и Y.

Надеюсь, это поможет вам начать работу с новой версией VRTK!

...