Использование Vuforia Engine с Unity

Vuforia Engine предоставляет в HoloLens важную возможность — возможность подключения интерфейсов дополненной реальности к определенным изображениям и объектам в среде. Эту возможность можно использовать для наложения пошаговых инструкций поверх оборудования для промышленного предприятия или добавления цифровых функций и возможностей в физический продукт или игру.

Vuforia Engine предлагает широкий спектр функций и целевых объектов, которые делают процесс разработки дополненной реальности более гибким. Одна из наших новейших функций, Vuforia Model Targets, является ключевой возможностью для коммерческого и промышленного использования. Целевые объекты модели позволяют приложениям распознавать физические объекты, такие как машины, автомобили или игрушки, и отслеживать их на основе САПР или цифровой трехмерной модели. Для промышленного использования эта функция может предоставить сборщикам и техническим специалистам по обслуживанию инструкции по работе с AR и процедурные инструкции на заводе или в полевых условиях.

Существующие приложения Vuforia Engine, созданные для телефонов и планшетов, можно легко настроить в Unity для работы на HoloLens. Вы даже можете использовать Vuforia Engine, чтобы использовать новое приложение HoloLens на планшетах с Windows 10, таких как Surface Pro и Surface Book.

Получить инструменты

Установите рекомендуемые версии Visual Studio и Unity, а затем настройте Unity для использования Visual Studio и предпочтительной интегрированной среды разработки и компилятора.

При установке Unity обязательно установите серверную часть сценариев IL2CPP для Магазина Windows.

Добавьте пакет Vuforia Engine, как описано здесь.

Начало работы с Vuforia Engine

Лучшей отправной точкой для изучения Vuforia Engine и HoloLens является пример HoloLens для Vuforia Engine (доступный в хранилище активов Unity). Пример предоставляет полный проект HoloLens, включая предварительно настроенные сцены, которые можно развернуть в HoloLens.

В сценах показано, как использовать Vuforia Image Targets для распознавания изображения и дополнения его цифровым содержимым в интерфейсе HoloLens. Пример HoloLens подсистемы Vuforia также содержит сцену, показывающую использование целевых объектов модели и VuMarks на HoloLens. Вы можете легко заменить собственное содержимое в сценах, чтобы поэкспериментировать с созданием приложений HoloLens, использующих Vuforia Engine.

Настройка приложения Vuforia для HoloLens

Разработка приложения Vuforia Engine для HoloLens по сути не отличается от разработки приложений Vuforia Engine для других устройств. Затем можно применить параметры и конфигурации сборки, описанные в разделе ниже. Это все, что необходимо, чтобы Vuforia Engine мог работать с системами пространственного сопоставления HoloLens и отслеживания позиций.

Сборка и запуск примера подсистемы Vuforia для HoloLens

  1. Скачайте пример подсистемы Vuforia для HoloLens из хранилища активов Unity
  2. Применение рекомендуемых параметров подсистемы Unity для управления питанием и производительностью
  3. Добавьте пример сцен в сцены в разделе Сборка.
  4. В разделе Параметры сборки переключите платформу сборки на UWP , нажав кнопку Добавить открытые сцены . Изображение
  5. Нажмите кнопку Параметры проигрывателя .
  • Щелкните значок UWP и разверните раздел Параметры XR .
  • Убедитесь, что включена поддержка виртуальной реальности .
  • В разделе Пакеты SDK для виртуальной реальности убедитесь, что:
    • Окно Смешанная реальность включено в список, и включен параметр Включить общий доступ к буферу глубины.
    • Для параметра Depth Format (Формат глубины ) задана 16-разрядная глубина.
  • Убедитесь, что для режима отрисовки стерео задано значение Однопрохожий экземпляр.
  1. Разверните раздел Параметры публикации .
  • В разделе Возможности убедитесь, что выбраны Internet Client, WebCam, Microphone и SpatialPerception .
  • ПРИМЕЧАНИЕ. SpatialPerception следует выбирать только в том случае, если вы планируете использовать API Surface Observer.
  • В разделе Поддерживаемые семейства устройств убедитесь, что выбран параметр Голографический .
  1. Разверните раздел Разрешение и презентация .
  • Отключите параметр Запуск в фоновом режиме , чтобы Vuforia Engine приостанавливался при переводе приложения в фоновый режим и снова смог получить доступ к камере при возобновлении работы приложения.
  • В раскрывающемся списке Ориентация по умолчанию убедитесь, что выбран параметр Альбомная слева .
  1. Вернитесь в окно Параметры сборки и выберите Сборка , чтобы создать проект Visual Studio.
  2. Выполните сборку исполняемого файла из Visual Studio и установите его на устройстве HoloLens.

Портал разработчика Vuforia

Разработчикам, желающим создать собственные возможности дополненной реальности с помощью Vuforia Engine и HoloLens, следует зарегистрироваться на портале разработчика Vuforia на developer.vuforia.com. На портале разработчики имеют доступ к форумам Vuforia Engine , где они могут присоединиться к обсуждениям сообщества, библиотеке с подробной документацией по всем функциям подсистемы Vuforia и диспетчеру целевых объектов Vuforia, где пользователи могут создавать собственные пользовательские целевые объекты. Разработчики также могут зарегистрироваться для получения бесплатной лицензии разработчика с помощью диспетчера лицензий Vuforia.

Отслеживание устройств с помощью Vuforia

Отслеживание устройств поддерживает отслеживание, даже если целевой объект больше не отображается. Он автоматически включается для всех целевых объектов при включении средства отслеживания позиционных устройств. Для приложений HoloLens средство отслеживания позиционных устройств запускается автоматически в Unity.

Vuforia Engine автоматически сливает позы из отслеживания камеры и пространственного отслеживания HoloLens, чтобы обеспечить стабильные позы цели независимо от того, виден ли целевой объект камерой или нет.

Так как процесс обрабатывается автоматически, разработчик не требует программирования.

Ниже приведено общее описание процесса.

  1. Целевой трекер Vuforia распознает целевой объект
  2. Затем выполняется инициализация целевого отслеживания
  3. Положение и поворот целевого объекта анализируются, чтобы обеспечить надежную оценку положения для HoloLens
  4. Vuforia Engine преобразует позу целевого объекта в пространство координат пространственного сопоставления HoloLens
  5. HoloLens берет на себя отслеживание, если целевой объект больше не отображается. Всякий раз, когда вы снова посмотрите на целевой объект, Vuforia будет продолжать точно отслеживать изображения и объекты.

Целевые объекты, которые обнаружены, но больше не отображаются, отображаются как EXTENDED_TRACKED. В таких случаях скрипт DefaultTrackableEventHandler, используемый для всех целевых объектов, продолжает отображать содержимое расширения. Разработчик может управлять этим поведением, реализовав пользовательский скрипт обработчика отслеживаемых событий.

Режим производительности с подсистемой Vuforia

С помощью подсистемы Vuforia можно управлять производительностью в HoloLens, чтобы масштабировать возможности дополненной реальности и уменьшать рабочую нагрузку на ЦП. Подсистема Vuforia предлагает три режима, которые можно выбрать: по умолчанию, для оптимизации скорости и для оптимизации качества.

  • MODE_OPTIMIZE_SPEED позволяет свести к минимуму рабочую нагрузку на устройстве HoloLens и отлично подходит для расширения возможностей дополненной реальности. Мы рекомендуем использовать ситуации, когда приложение отслеживает статические объекты или целевые объекты.
  • MODE_DEFAULT — это обычный режим, который можно использовать в большинстве сценариев.
  • MODE_OPTIMIZE_QUALITY лучше для отслеживания перемещаемых целевых объектов или целевых объектов модели, которые вы ожидаете получить.

Настройка режима

Чтобы изменить режим производительности в Unity, перейдите к конфигурации Vuforia (CTRL+SHIFT+V/ CMD+SHIFT+V), которая находится в качестве компонента в ARCamera GameObject.

  • Выберите раскрывающееся меню режим устройства камеры и выберите один из трех вариантов.

См. также статью