Начните работу с фреймворком взаимодействия Android XR для Unity.

Применимые устройства XR
Данное руководство поможет вам создавать приложения для устройств XR такого типа.
XR-гарнитуры
Проводные XR-очки

Android XR Interaction Framework (AXRIF) предоставляет привычные, высокоуровневые, субъективные способы взаимодействия для приложений OpenXR на Android XR. AXRIF устраняет разрыв между системным и внутриприложным взаимодействием, предлагая интуитивно понятный и целостный способ обработки пользовательского ввода.

Следуйте этому руководству, чтобы настроить и начать использовать AXRIF в Unity.

Предварительные требования

Перед началом убедитесь, что ваша среда разработки соответствует следующим требованиям:

Настройка и конфигурирование Unity

Прежде чем опробовать тестовую сцену, необходимо настроить Unity для AXRIF. Для этого выполните действия, описанные в следующих разделах.

Импортируйте пакет AXRIF.

Сначала установите пакет AXRIF и его зависимости:

  1. Перейдите в меню Window > Package Manager .
  2. Откройте меню «Добавить» на панели инструментов «Диспетчер пакетов» .
  3. В параметрах добавления пакетов нажмите + (плюс).
  4. В выпадающем меню выберите «Установить пакет из URL-адреса Git» .

    Импортируйте пакет AXRIF, используя его URL-адрес в Git.

  5. Введите следующий URL-адрес:

    https://github.com/android-xr/android-xr-interaction-framework-unity-package.git

  6. Нажмите «Установить» .

    Подробную информацию о пакете AXRIF можно найти в менеджере пакетов Unity.

Проверьте версию XR Interaction Toolkit

Пакет AXRIF работает совместно с Unity XR Interaction Toolkit (XRIT) и не заменяет его. Поскольку пакет AXRIF определяет зависимость от XRIT, Unity должен был установить XRIT при установке пакета AXRIF на предыдущих шагах. Однако следует убедиться, что установлена ​​версия 3.3.1 или выше, перейдя в редакторе Unity по пути Window > Package Manager > Unity Registry > XR Interaction Toolkit .

Рисунок 1. Проверьте установленную версию XR Interaction Toolkit в редакторе Unity.

Выберите профиль сборки Android XR

Выберите профиль сборки Android XR, чтобы включить соответствующие расширения OpenXR и параметры сборки для Android XR:

  1. Перейдите в меню Файл > Создать профили .
  2. Нажмите Android XR , а затем нажмите «Переключить платформу» .

    В настройках Unity выберите профиль сборки Android XR.

Настройка параметров OpenXR

Настройте параметры OpenXR в Unity, чтобы Unity мог получить доступ к необходимым данным OpenXR:

  1. Перейдите в меню «Редактировать» > «Настройки проекта» > «Управление плагинами XR» > «OpenXR» .
  2. На вкладке Android нажмите + (плюс), чтобы открыть раздел «Включенные профили взаимодействия» .
  3. В зависимости от потребностей вашего приложения добавьте любой из следующих профилей:

    • Профиль взаимодействия взгляда
    • Профиль взаимодействия рук
    • Профиль контроллера Oculus Touch
    • Профиль взаимодействия мыши Android XR
  4. В списке функций в разделе «Управление плагинами XR» > «OpenXR» включите следующие функции:

    • Android XR (расширения): слой композиции, обеспечивающий сквозную передачу данных.
    • Android XR (расширения): управление сессиями
    • Поддержка Android XR
    • Android XR: Камера дополненной реальности
    • Android XR: сессия дополненной реальности
    • Android XR: Данные сетки руки в дополненной реальности
    • Поддержка слоев композиции
    • Подсистема отслеживания движений рук

Провести проверку проекта

Выполните проверку проекта, чтобы исправить любые ошибки OpenXR в конфигурации вашего проекта:

  1. Перейдите в меню «Редактировать» > «Настройки проекта» > «Управление плагинами XR» > «Проверка проекта» .
  2. Устраните все оставшиеся предупреждения и оповещения, чтобы ошибки во время выполнения не влияли на компиляцию.

    Устраните все нерешенные проблемы OpenXR, выполнив проверку проекта.

Используйте пример сцены.

Теперь, когда вы завершили предварительную настройку и конфигурацию, вы можете использовать пример сцены AXRIF. Следуйте инструкциям в следующих разделах, чтобы получить пример сцены и попробовать её в действии.

Импортируйте пакеты с примерами XRIT и пример AXRIF.

Демонстрационная сцена AXRIF зависит от стартовых ресурсов Unity XR Interaction Toolkit (XRIT) и демонстрационных пакетов Hands Interaction Demo.

Импортируйте примеры пакетов XRIT.

Импортируйте пакеты примеров XRIT, от которых зависит пример AXRIF:

  1. Перейдите в меню Window > Package Manager .
  2. Выберите XR Interaction Toolkit из списка пакетов.
  3. На вкладке «Примеры» нажмите «Импорт» рядом с пунктами «Стартовые ресурсы» и «Демонстрация взаимодействия рук» .

    Перед импортом пакета примеров AXRIF импортируйте необходимые пакеты примеров XRIT.

Импортируйте образец AXRIF.

Импортируйте образец файла AXRIF, чтобы получить тестовую сцену:

  1. Перейдите в меню Window > Package Manager .
  2. Выберите Android XR Interaction Framework из списка пакетов.
  3. На вкладке «Образцы» нажмите «Импорт» рядом с «Образец Axrif» .

    Импортируйте пример файла AXRIF из менеджера пакетов Unity.

Открыть сцену

После импорта необходимых пакетов с примерами вы можете открыть сцену:

  1. Перейдите в Assets > Samples > Android XR Interaction Framework > [Номер версии AXRIF] > Axrif Sample .
  2. Откройте AxrifDemoScene .

    Импортируйте пакет с примерами файлов AXRIF в менеджер пакетов Unity.

Изучите готовые дома.

Сцена поставляется предварительно настроенной с использованием модульных префабов, расположенных в разделе Packages > Android XR Interaction Framework > Prefabs .

Префабы интерактивных объектов

Префабы Axrif Interactor управляют механикой взаимодействия в Unity XRIT, используя соответствующие входные модальности из следующего списка:

  • Ручной/контроллерный луч :
    • Axrif Left Interactor — использует трассировку лучей левой рукой или контроллер.
    • Axrif Right Interactor — использует трассировку лучей правой рукой или контроллер.
  • Взгляд, прикованный к объекту :
    • Axrif Left GazePinch Interactor — использует отслеживание взгляда и движения левой руки при выполнении сжатия.
    • Axrif Right GazePinch Interactor — использует отслеживание взгляда и движения правой руки при выполнении сжатия.
    • Axrif Gaze Interactor — использует взгляд только для указания.
  • Удар рукой :
    • Axrif Left Poke Interactor — использует указательный палец левой руки при касании интерактивных объектов.
    • Axrif Right Poke Interactor — использует указательный палец правой руки при касании интерактивных объектов.
  • Мышь :
    • Axrif Mouse Interactor — использует пространственную мышь Android XR.

Менеджер взаимодействия Axrif и префабы Origin

  • Менеджер взаимодействия Axrif : Этот префаб является центральным узлом для AXRIF в сцене. В префабе размещается компонент «Менеджер взаимодействия Axrif», разработанный для работы совместно с менеджером взаимодействия XRIT XR. Этот префаб отвечает за:

    • Инициализация и управление основными подсистемами AXRIF во время выполнения.
    • Обработка и маршрутизация входных данных из OpenXR с использованием адаптера ввода Interaction Framework.
    • Отслеживание состояний пользовательского интерфейса и коллайдеров с помощью инструмента интеграции сцен Interaction Framework.
  • Axrif XR Origin : выступает в роли основного персонажа и драйвера камеры, а также управляет визуализаторами сетки ручной работы.

Настройка действий ввода

Для обеспечения связи данных среды выполнения OpenXR с действиями ввода Unity зарегистрируйте привязки карт в масштабе всего проекта:

  1. Перейдите в Packages > Android XR Interaction Framework > InputActions .
  2. Найдите раздел «AndroidXRInteractionFramework Input Actions» .
  3. Нажмите «Назначить» в качестве действий ввода для всего проекта .

    Настройте действия ввода для Unity, чтобы связать данные времени выполнения с действиями ввода Unity.

Изменить взаимодействия

С помощью префаба Axrif Interaction Manager вы можете включать или отключать различные режимы ввода. AXRIF поддерживает следующие режимы ввода:

  • Контроллер трассировки лучей
  • Щипок и взгляд
  • Ручная трассировка лучей
  • Прямая рука
  • Взаимодействие мышей.

Вы можете настроить режимы ввода непосредственно в Инспекторе в разделе «Конфигурации» компонента « Менеджер интерактивной среды» .

Рисунок 2. Настройка режимов ввода в инспекторе.

Создайте образец

Чтобы собрать пример, нажмите кнопку «Сборка» или «Сборка и запуск» в редакторе Unity.