Служба имитации ввода

Имитация ввода МРТК

С помощью имитации ввода MRTK можно тестировать различные типы взаимодействий в редакторе Unity, не создавая и не развертывая их на устройстве. Это позволяет быстро проверять свои идеи в процессе проектирования и разработки. Используйте сочетания клавиш и мыши для управления имитацией входных данных.

Служба моделирования ввода эмулирует поведение устройств и платформ, которые могут быть недоступны в редакторе Unity. Примеры приведены ниже.

  • отслеживание головного устройства HoloLens или VR
  • жесты HoloLens руки
  • отслеживание HoloLens 2 с неуправляемыми манипуляторами
  • отслеживание HoloLens 2 глаз
  • Контроллеры устройств VR

Предупреждение

Это не работает при использовании одноXRной эмуляции Unity > режим эмуляции = "имитировать в редакторе". Имитация в редакторе Unity будет управляться от имитации ввода МРТК. Чтобы использовать службу имитации ввода МРТК, необходимо установить XR holographic Emulator в режим эмуляции = "нет"

Как использовать моделирование ввода МРТК

Имитация ввода включена по умолчанию в профилях, поставляемых с МРТК. Можно просто нажать кнопку воспроизвести , чтобы запустить сцену с поддержкой имитации ввода.

  • Чтобы переместить камеру, нажимайте клавиши W, A, S, D, Q, E.
  • Чтобы посмотреть по сторонам, перемещайте мышь при нажатой правой кнопке мыши.
  • Нажмите клавишу ПРОБЕЛ (правой рукой) или клавишу SHIFT (левой рукой) , чтобы отобразить имитацию рук.
  • Нажмите клавишу T или Y, чтобы удерживать имитацию рук в поле зрения.
  • Чтобы повернуть смоделированные руки, нажмите и удерживайте клавишу CTRL и переместите указатель мыши

Лист Памятка по с имитацией входных данных редактора

Нажмите левую клавишу CTRL + H в сцене хандинтерактионексамплес, чтобы открыть лист Памятка по с элементами управления имитацией входных данных.

Лист Памятка по МРТК моделирования входных данных

Включение службы моделирования ввода

В конфигурации поставщика входных системных данных для службы моделирования ввода можно настроить следующие параметры.

  • тип должен быть Microsoft. микседреалити. набор средств. Входные > Инпутсимулатионсервице.
  • Поддерживаемые платформы (-ы) по умолчанию включают все платформы редактора , так как служба использует ввод с клавиатуры и с помощью мыши.

Примечание

Службу моделирования ввода можно использовать на других конечных точках платформы, например в автономном режиме, изменив свойство Supported Platform (s) , включив в него нужные целевые объекты.
Input Simulation Supported Platforms

Элемент управления камерой

Головное перемещение может эмулироваться службой моделирования ввода.

Вращение камеры

  1. Наведите указатель мыши на окно редактора окна просмотра. Может потребоваться щелкнуть окно, чтобы задать фокус ввода, если нажатие кнопки не работают.
  2. Нажмите и удерживайте кнопку мыши (по умолчанию — правая кнопка мыши).
  3. Переместите указатель мыши в окне просмотра, чтобы повернуть камеру.
  4. Используйте колесо прокрутки для поворота камеры вокруг направления представления.

Скорость вращения камеры можно настроить, изменив параметр скорость отображения мыши в профиле эмуляции ввода.

Кроме того, можно использовать / вертикальные горизонтальные оси для поворота камеры (по умолчанию: игровое устройство — аналоговый стик).

Перемещение камеры

Используйте вертикальные оси перемещение по горизонтали / для перемещения камеры (по умолчанию — трассе Keys или игровой контроллер — левый аналоговый стик).

Расположение и угол поворота камеры можно задать явным образом в окне "средства". Камеру можно сбросить до ее значения по умолчанию с помощью кнопки Сброс .

Моделирование контроллера

Имитация ввода поддерживает эмулированные устройства контроллера (т. е. контроллеры движения и руки). Эти виртуальные контроллеры могут взаимодействовать с любым объектом, поддерживающим обычные контроллеры, например кнопками или объектами, которые можно использовать.

Режим моделирования контроллера

В окне средства моделирования ввода в режиме моделирования контроллера по умолчанию переключается между тремя различными входными моделями. Этот режим по умолчанию также можно задать в профиле имитации ввода.

  • Руки: имитирует полностью обозначающий устройство с данными о размещении.

    эмулирует модель взаимодействия HoloLens 2.

    В этом режиме можно имитировать взаимодействия, основанные на точном положении руки или использовании касания.

  • Жесты руки: имитирует упрощенную модель с помощью воздушного касания и основных жестов.

    эмулирует модель взаимодействия HoloLens.

    Управление фокусом осуществляется с помощью указателя взгляните. Жест касания используется для взаимодействия с кнопками.

  • Контроллер движения. имитирует контроллер движения, используемый с наушниками VR, которые работают аналогично дальнему взаимодействию с четко написанными руки.

    Эмулирует гарнитуру VR с моделью взаимодействия контроллеров.

    Клавиши триггера, захвата и меню моделируются с помощью ввода с клавиатуры и мыши.

Имитация перемещения контроллера

Нажмите и удерживайте клавишу управления для левого и правого контроллера (по умолчанию сдвиг для левого контроллера и пространства для правого контроллера), чтобы получить контроль над любым контроллером. При нажатии клавиши манипуляции контроллер появится в окне просмотра. После освобождения ключа манипуляции контроллеры исчезают после того, как короткий контроллер не сможет скрыть время ожидания.

Контроллеры можно переключать и закрепить относительно камеры во входном окне средства моделирования или путем нажатия клавиши "переключить левый/правый контроллер " (по умолчанию: T для Left и Y для прав). Снова нажмите клавишу Toggle, чтобы снова скрыть контроллеры. Для управления контроллерами необходимо удерживать левый или правый ключ манипуляции с контроллером . Двойное касание ключа манипуляции с левым или правым контроллером также может включать и отключать контроллеры.

Перемещение мыши переместит контроллер на плоскости просмотра. Контроллеры можно перемещать на камеру или ближе к камере с помощью колесика мыши.

Чтобы поворачивать контроллеры с помощью мыши, удерживайте нажатой левый/правый ключ манипуляции (сдвиг влево или пробел) и кнопку вращения контроллера (по умолчанию — кнопка с левой кнопкой мыши), а затем передвиньте мышь, чтобы повернуть контроллер. Скорость смены контроллера можно настроить, изменив параметр скорость вращения контроллера мыши в профиле моделирования ввода.

Кроме того, размещение можно изменить в окне средства моделирования ввода, включая сброс настроек по умолчанию.

Дополнительные параметры профиля

  • Множитель глубины контроллера управляет чувствительностью перемещения колесика мыши к прокрутке. Чем больше значение, тем ускоряется увеличение масштаба контроллера.
  • Расстояние по контроллеру по умолчанию — это начальное расстояние контроллеров от камеры. При нажатии кнопки Сброс контроллеры также будут размещаться контроллеры на этом расстоянии.
  • Величина колебаний контроллера добавляет случайное движение к контроллерам. Эта функция может использоваться для имитации неточного отслеживания контроллеров на устройстве и обеспечения удобного взаимодействия с шумами ввода.

Жесты руками

Также можно имитировать жесты, такие как сжатие, броские, знакомство и т. д.

  1. Включение элемента управления "рука" с помощью ключа манипуляции с левым или правым контроллером (сдвиг влево или пробел)

  2. При манипуляции нажмите и удерживайте кнопку мыши, чтобы выполнить жест руки.

Каждая кнопка мыши может быть сопоставлена с преобразованием формы руки в другой жест, используя параметры левого или среднего или правого жеста мыши . По умолчанию используется жест руки, если кнопка не нажата.

Примечание

Жест сжатия — это единственный жест, выполняющий действие "Select" на этом этапе.

Односторонняя манипуляция

  1. Нажмите и удерживайте клавишу управления "левый/правый" контроллер (сдвиг влево или пробел)
  2. Точка на объекте
  3. Удерживайте кнопку мыши для сжатия
  4. Перемещение объекта с помощью мыши
  5. Отпустите кнопку мыши, чтобы прекратить взаимодействие

Манипуляция с двумя рукой

Для манипулирования объектами с двумя практическими операциями рекомендуется использовать режим постоянной обработки.

  1. Переключитесь в обе руки, нажав клавиши переключения (T/Y).
  2. Управлять одной рукой за раз:
    1. Удержание пространства для управления правой рукой
    2. Переместить руку в то место, куда нужно захватить объект
    3. Нажмите левую кнопку мыши , чтобы активировать жест сжатия .
    4. Место выпуска для отмены управления правой стороны. Рука будет зафиксирована и заблокирована для жеста сжатия , так как он больше не обрабатывается.
  3. Повторите процесс с другой стороны, извлеките один и тот же объект во вторую точку.
  4. Теперь, когда обе руки изменяют один и тот же объект, можно переместить любой из них, чтобы выполнить двустороннюю манипуляцию.

Взаимодействие ГГВ (взгляд, жест и речь)

По умолчанию взаимодействие ГГВ включено в редакторе, в то время как в сцене отсутствуют четко сформулированные руки.

  1. Повернуть камеру, чтобы она указывала курсор взгляда на взаимодействующий объект (правая кнопка мыши)
  2. Нажмите и удерживайте левую кнопку мыши для взаимодействия
  3. Снова поверните камеру для работы с объектом

Это можно отключить, включив параметр " доступно без поддержки ввода " в профиле эмуляции ввода.

Кроме того, можно использовать смоделированные руки для взаимодействия ГГВ.

  1. Включение имитации ГГВ путем переключения режима моделирования вручную на жесты в профиле моделирования ввода
  2. Повернуть камеру, чтобы она указывала курсор взгляда на взаимодействующий объект (правая кнопка мыши)
  3. Удержание пространства для управления правой рукой
  4. Нажмите и удерживайте левую кнопку мыши для взаимодействия
  5. Перемещение объекта с помощью мыши
  6. Отпустите кнопку мыши, чтобы прекратить взаимодействие

Создание событий телепортируйтесь

чтобы вызвать событие телепортируйтесь во время моделирования ввода, настройте жест руки Параметры в профиле имитации ввода, чтобы он выполнял жест запуска телепортируйтесь , а другой выполняет жест конца телепортируйтесь . Жест запуска телепортируйтесь выводит указатель телепортируйтесь, а Окончание жесуреа телепортируйтесь завершит действие телепортируйтесь и переместит пользователя.

Y-расположение полученного телепортировать зависит от смещения камеры вдоль оси y. В редакторе по умолчанию это 0, поэтому используйте клавиши Q и E , чтобы изменить высоту.

моделирование входных данных телепортируйтесь Параметры

Взаимодействие с контроллером движения

Смоделированные контроллеры движения можно манипулировать так же, как и руки. Модель взаимодействия схожа с назначением руки, когда ключи триггера, сочетания клавиш и меню сопоставлены с левой кнопкой мыши, G и M соответственно.

Отслеживание взгляда

Моделирование отслеживания глаз можно включить, установив флажок имитировать глаз в профиле имитации ввода. Его не следует использовать с ГГВ или взаимодействия с стилем контроллера движения (поэтому убедитесь, что для режима имитации контроллера по умолчанию задано значение " руки").

Окно средств моделирования ввода

включите окно средства моделирования входных данных из > > меню "имитация" набор средств служебных программ смешанной реальности > . Это окно предоставляет доступ к состоянию имитации ввода в режиме воспроизведения.

Кнопки окна просмотра (необязательно)

Prefab для кнопок в редакторе, позволяющих управлять базовым размещением вручную, можно указать в профиле моделирования ввода в разделе индикаторы prefab. Это необязательная служебная программа. к тем же функциям можно обращаться в окне средства моделирования ввода.

Примечание

Индикаторы окна просмотра по умолчанию отключены, так как в настоящее время они могут мешать взаимодействию с ИП Unity. См. раздел Issue #6106. Чтобы включить, добавьте Инпутсимулатиониндикаторс prefab в индикаторы prefab.

Значки руки показывают состояние имитации руки:

  • Значок незаписанного руки Рука не отслеживается. Щелкните, чтобы включить руку.
  • Значок с изображением руки Рука передается, но не контролируется пользователем. Щелкните, чтобы скрыть руку.
  • Управляемый значок руки Рука и контролируется пользователем. Щелкните, чтобы скрыть руку.
  • Значок сброса руки Щелкните, чтобы сбросить руку на стандартное расположение.

См. также раздел