Настройка нового проекта OpenXR с помощью MRTK
Самый простой способ настроить проект Unity для смешанной реальности — использовать набор средств Смешанная реальность (MRTK). MRTK для Unity — это кроссплатформенный пакет разработки с открытым кодом, предназначенный для упрощения создания удивительных приложений смешанной реальности.
MRTK предоставляет кросс-платформенную систему ввода, базовые компоненты и общие строительные блоки для пространственных взаимодействий. Это поможет ускорить разработку приложений для Microsoft HoloLens, Windows Mixed Reality иммерсивных гарнитур (VR) и многих других устройств виртуальной реальности и дополненной реальности. Проект направлен на снижение барьеров для входа, позволяя всем создавать приложения смешанной реальности и вносить свой вклад в сообщество по мере роста.
MRTK поддерживает широкий спектр платформ, в том числе:
Microsoft HoloLens;
Microsoft HoloLens 2;
гарнитуры смешанной реальности Windows Mixed Reality;
гарнитуры смешанной реальности OpenVR (HTC Vive / Oculus Rift);
отслеживание рук Ultraleap.
Устройства Android и iOS
Примечание
Недавно мы представили MRTK3, третье поколение Microsoft Смешанная реальность Toolkit for Unity, созданное на основе системы управления XR Unity и XR Interaction Toolkit, с улучшенной поддержкой различных устройств, совместимых с OpenXR, и новым языком дизайна. Дополнительные сведения см. в документации по MRTK3.
Примечание
Вы также можете настроить новый проект OpenXR без MRTK.
Другие параметры конфигурации, отличные от OpenXR, которые следует учитывать
Windows XR. Корпорация Майкрософт не рекомендует использовать подключаемый модуль Windows XR для новых проектов в Unity 2020. Вместо этого следует использовать подключаемый модуль Смешанная реальность OpenXR. Однако если вы используете Unity 2019 и вам требуется AR Foundation 2.0 для совместимости с устройствами ARCore/ARKit, этот подключаемый модуль обеспечивает такую поддержку.
Важно!
Использование этого подключаемого модуля в Unity 2019 несовместимо с Пространственными привязками Azure.
Устаревшая версия XR:
Если вы все еще используете Unity 2019 или более ранней версии, корпорация Майкрософт рекомендует использовать поддержку встроенного XR прежних версий. Хотя подключаемый модуль Windows XR работает в Unity 2019, мы не рекомендуем его использовать, так как он несовместим с Пространственными привязками Azure в Unity 2019.
Если вы запускаете новый проект, рекомендуется установить Unity 2020 и использовать подключаемый модуль OpenXR Смешанная реальность.
Начало работы с OpenXR: создание проекта Unity
Запустите Unity Hub.
На вкладке Проекты щелкните Создать проект.
Щелкните раскрывающийся список Новый проект и выберите нужную версию редактора.
Выбранный шаблон должен представлять собой 3D Core.
В поле Имя проекта введите имя проекта, например, MRTK Tutorial.
В поле Расположение щелкните значок папки, а затем перейдите к папке, в которой необходимо сохранить проект, и выберите ее. Кроме того, можно создать новую папку.
Нажмите кнопку Создать проект. Откроется проект в Unity.
Внимание!
При работе в Windows есть ограничение для MAX_PATH в 255 символов. Эти ограничения влияют на Unity. Может произойти сбой компиляции, если длина пути к файлу превышает 255 символов. Поэтому рекомендуется хранить проект Unity как можно ближе к корневому каталогу диска.
Установка целевого объекта сборки
В строке меню выберите File>Build Settings... (Файл > Параметры сборки...).
Чтобы создать приложение для Windows Mixed Reality, необходимо выбрать целевой объект сборки. Параметры сборки для универсальная платформа Windows (UWP) предназначены для любого устройства, включая иммерсивные гарнитуры, такие как HP Reverb G2. Это лучший выбор, если вы создаете HoloLens 2. Однако, если вы используете виртуальную реальность для настольных компьютеров, рекомендуется использовать автономную платформу PC, Mac & Linux.
Выполните одно из следующих действий.
Если вы используете виртуальную реальность для настольных компьютеров, выполните следующие действия.
- Сохраните автономную платформу PC, Mac & Linux , которая выбрана по умолчанию в новом проекте Unity:
Если вы используете HoloLens 2:
- В разделе Платформа выберите универсальная платформа Windows. Убедитесь, что активны следующие параметры:
Тип сборки: проект D3D.
Целевая версия пакета SDK: последняя установленная версия.
Минимальная версия платформы 10.0.10240.0.
Версия Visual Studio: последняя установленная версия.
Нажмите кнопку Сменить платформу. При смене платформы Unity отображает индикатор выполнения.
По завершении процесса смены платформы закройте окно Параметры сборки.
Скачивание и установка средства Смешанная реальность Feature Tool
Подключаемый модуль OpenXR Смешанная реальность поставляется в виде пакета для Unity. Лучший способ обнаружения, обновления и импорта пакетов компонентов — Смешанная реальность Feature Tool. Вы можете искать пакеты по имени или категории, просматривать их зависимости и проверять предлагаемые изменения в файле манифеста проектов перед импортом.
Скачайте последнюю версию Смешанная реальность Feature Tool из Центра загрузки Майкрософт.
После завершения скачивания перейдите к исполняемому файлу MixedRealityFeatureTool.exe и используйте его для запуска средства Смешанная реальность компонентов.
Импорт пакетов Смешанная реальность Toolkit и OpenXR
В Mixed Reality Feature Tool выберите Start.
Нажмите кнопку обзора (это кнопка с трем точками на рисунке ниже), перейдите к проекту и откройте его.
Примечание
Поле Путь к проекту в средстве должно содержать значение, поэтому по умолчанию вставляется обратная косая черта ("_").
После выбора папки средство проверяет, является ли она допустимой папкой проекта Unity.
Выберите Discover Features (Обнаружение компонентов).
Примечание. Может потребоваться подождать несколько секунд, пока средство обновит пакеты из каналов.
На странице Discover Features обратите внимание на то, что имеется список из шести групп пакетов.
Нажмите кнопку "+" слева от Mixed Reality Toolkit (0 of 10), а затем выберите последнюю версию Mixed Reality Toolkit Foundation.
Примечание
Пакет Mixed Reality Toolkit Foundation является единственным пакетом, который необходимо импортировать и настроить, чтобы использовать MRTK в проекте. Этот пакет включает в себя основные компоненты для создания приложения смешанной реальности.
Нажмите кнопку "+" слева от элемента Platform Support (0 of 5) и выберите последнюю версию Mixed Reality OpenXR Plugin.
Выполнив выбор, щелкните Get Features (Получить компоненты).
Выберите Validate (Проверить), чтобы проверить выбранные пакеты. Вы увидите диалоговое окно с текстом No validation issues were detected (Проблемы при проверке не обнаружены). После этого щелкните ОК.
На странице Import Features (Импорт компонентов) в левом столбце в списке Components (Компоненты) отображаются только что выбранные пакеты. В правом столбце Required dependencies (Обязательные зависимости) нет ни одной зависимости. Чтобы узнать больше о них, щелкните ссылку Details (Сведения) для любого из этих элементов.
Когда вы будете готовы продолжить, выберите Import (Импорт). На странице Review and Approve (Проверка и утверждение) можно просматреть сведения о пакетах.
Выберите Approve (Утвердить).
Вернитесь в редактор Unity и щелкните пустую область в пользовательском интерфейсе. Появится индикатор выполнения, показывающий, что выполняется импорт пакетов.
Настройка входных параметров серверной части
После импорта пакета в Unity появится предупреждение с запросом на включение серверной части путем перезапуска редактора. Выберите ответ Да.
Настройка проекта для HoloLens 2 с помощью проверки проекта (MR OpenXR 1.6+)
Если вы разрабатываете виртуальную реальность для настольных компьютеров, пропустите этот раздел и перейдите к разделу Настройка проекта для классической виртуальной реальности.
- В строке меню щелкните Смешанная реальность > Параметры > проверки проекта HoloLens 2 приложение (UWP), чтобы включить правила проверки для HoloLens 2. Для подключаемых модулей Mr OpenXR до версии 1.9 доступен пункт меню Смешанная реальность > Project > Apply recommended project settings for HoloLens 2.
- В появившемся окне проверки проекта убедитесь, что вы находитесь на вкладке платформы UWP (обозначенной логотипом Windows), и нажмите кнопку Исправить все , чтобы устранить проблемы с проверкой. Обратите внимание, что могут возникнуть проблемы, которые остаются после нажатия кнопки Исправить все. В этом случае попробуйте снова нажать кнопку Исправить все , игнорировать все проблемы, помеченные как "сцены" (если таковые имеются), и просмотреть остальные проблемы (если таковые имеются), чтобы узнать, есть ли какие-либо предлагаемые изменения, которые вы хотите внести.
- На данный момент проект почти готов к развертыванию HoloLens 2. Перейдите к разделу Настройка параметров проигрывателя для следующего шага.
Настройка проекта для HoloLens 2 вручную
Если вы разрабатываете виртуальную реальность для настольных компьютеров, пропустите этот раздел и перейдите к разделу Настройка проекта для классической виртуальной реальности.
Убедитесь, что окно Параметры проекта открыто. В противном случае в строке меню выберите Изменить>параметры проекта.
В окне Параметры проекта убедитесь, что вы находитесь на странице Управление подключаемыми модулями XR и на вкладке универсальная платформа Windows.
Убедитесь, что выбран параметр Инициализировать XR при запуске , а затем в разделе Поставщики подключаемых модулей щелкните OpenXR.
Подключаемый модуль OpenXR загружается, а затем под openXR отображаются несколько элементов. Выберите Microsoft HoloLens группу компонентов.
Обратите внимание, что рядом с OpenXR есть желтый предупреждающий треугольник. Это означает, что у вас есть несовместимые параметры, которые необходимо разрешить. Чтобы узнать, как устранить эту проблему, пропустите следующий раздел о настройке виртуальной реальности и перейдите к следующему разделу : Разрешение несовместимых параметров.
Настройка проекта для классической виртуальной реальности с помощью проверки проекта (MR OpenXR 1.9+)
- В строке меню щелкните Смешанная реальность > Параметры проверки > проекта Приложение Win32 (изолированное), чтобы включить правила проверки для классического приложения XR.
- В появившемся окне проверки проекта убедитесь, что вы находитесь на вкладке Автономная платформа, и нажмите кнопку Исправить все , чтобы устранить проблемы с проверкой. Обратите внимание, что могут возникнуть проблемы, которые остаются после нажатия кнопки Исправить все. В этом случае попробуйте снова нажать кнопку Исправить все , игнорировать все проблемы, помеченные как "сцены" (если таковые имеются), и просмотреть остальные проблемы (если таковые имеются), чтобы узнать, есть ли какие-либо предлагаемые изменения, которые вы хотите внести.
Настройка проекта для классической виртуальной реальности вручную
Убедитесь, что окно Параметры проекта открыто. В противном случае перейдите в строку меню и выберите Изменить>параметры проекта.
В окне Параметры проекта убедитесь, что вы находитесь на странице Управление подключаемым модулем XR и на вкладке Pc, Mac & Linux Standalone .
Убедитесь, что выбран параметр Инициализировать XR при запуске , а затем в разделе Поставщики подключаемых модулей щелкните OpenXR.
Загрузится подключаемый модуль OpenXR, а затем в разделе OpenXR появятся два элемента. Выберите первую группу компонентов Windows Mixed Reality.
Обратите внимание, что рядом с OpenXR появился желтый треугольник предупреждения. Это означает, что у вас есть несовместимые параметры, которые необходимо разрешить. Чтобы узнать, как устранить эту проблему, перейдите к следующему разделу : Разрешение несовместимых параметров.
Разрешение несовместимых параметров
Важно!
На изображениях в этом разделе показаны параметры на вкладке универсальная платформа Windows. Однако инструкции одинаковы для вкладки Виртуальной реальности рабочего стола, за исключением случаев, когда указано.
Наведите указатель мыши на желтый треугольник предупреждений рядом с Элементом OpenXR, прочитайте сообщение во всплывающем окне и выберите треугольник.
В окне OpenXR Project Validation (Проверка проекта OpenXR) указано несколько проблем. Нажмите кнопку Fix All (Исправить все). ПРИМЕЧАНИЕ. Этот список может выглядеть по-разному в зависимости от того, на какой вкладке вы находитесь.
Одна из проблем останется — необходимо добавить по крайней мере один профиль взаимодействия. Для этого щелкните Edit (Изменить). Откроется раздел параметров подключаемого модуля OpenXR в окне Project Settings (Параметры проекта).
В области Interaction Profiles (Профили взаимодействия) обратите внимание на кнопку со знаком "плюс" (+).
Нажмите кнопку три раза, каждый раз выбирая другой профиль:
Eye Gaze Interaction Profile (Профиль взаимодействия с помощью взгляда);
Microsoft Hand Interaction Profile (Профиль взаимодействия с помощью рук Майкрософт);
Microsoft Motion Controller Profile (Профиль контроллера движений Майкрософт).
Если рядом с Eye Gaze Interaction Profile или любым другим профилем появится желтый треугольник, выберите треугольник, а затем в окне OpenXR Project Validation нажмите кнопку Fix (Исправить). Завершив работу, закройте окно OpenXR Project Validation.
В окне Project Settings (Параметры проекта) в разделе OpenXR Feature Groups (Группы функций OpenXR) убедитесь, что выбраны следующие компоненты:
Если вы находитесь на вкладке Виртуальной реальности для рабочего стола:
Windows Mixed Reality
Отслеживание рук
Motion Controller Model (Модель контроллера движений)
Если вы находитесь на вкладке универсальная платформа Windows:
Microsoft HoloLens
Отслеживание рук
Motion Controller Model (Модель контроллера движений)
Щелкните раскрывающийся список Depth Submission Mode (Режим отправки глубины), а затем выберите Depth 16 Bit (Глубина 16 бит).
Совет
Уменьшение формата глубины до 16-разрядной версии не является обязательным, однако это может повысить производительность графики в проекте. Подробные сведения приведены в разделе Совместное использование буфера глубины (HoloLens).
Примечание
Параметр Render Mode (Режим рендеринга), находящийся непосредственно над параметром Depth Submission Mode, по умолчанию равен Single Pass Instanced (Один проход). В приложениях смешанной реальности сцена отображается дважды, один раз для каждого глаза. Результат — стереоскопичность. Это удваивает объем необходимых вычислений, поэтому важно выбрать наиболее эффективный путь отрисовки в Unity, чтобы сэкономить время ЦП и GPU. В этом случае лучшим вариантом является визуализация в один проход — рекомендуется включить ее по умолчанию для каждого проекта. Дополнительные сведения см. в документации по Unity.
Настройка параметров проигрывателя
В левом столбце Project Settings (Параметры проекта) выберите Player (Проигрыватель).
Обратите внимание, что в окне Проигрыватель поле Название продукта уже заполнено. Оно берется из имени проекта и будет отображаться в меню "Пуск" HoloLens.
Совет
Чтобы упростить поиск приложения во время разработки, добавьте символ подчеркивания перед именем, чтобы отсортировать его в верхней части списка.
Щелкните раскрывающийся список Параметры публикации , а затем в поле Имя пакета введите подходящее имя.
Примечание
Имя пакета — это уникальный идентификатор приложения. Если вы хотите избежать перезаписи ранее установленных версий приложения с тем же именем, необходимо изменить этот идентификатор перед развертыванием приложения.
Закройте окно Project Settings (Параметры проекта).
Теперь вы готовы приступить к разработке с помощью OpenXR в Unity!
Примеры проектов Unity
Ознакомьтесь с репозиторием примеров Смешанная реальность OpenXR для примеров проектов unity, демонстрируя, как создавать приложения Unity для HoloLens 2 или Смешанная реальность гарнитур с помощью подключаемого модуля Смешанная реальность OpenXR.