Введение в шаблон пакета расширения для гарнитур
Пакет com.easyar.sense.ext.hmdtemplate предоставляет примеры и шаблоны для разработки расширений для гарнитур. Это реализация SDK, а также он содержит примеры для разработчиков приложений.
Содержимое шаблона
Структура этого package следует рекомендуемой Unity структуре файлов:
.
├── CHANGELOG.md
├── Documentation~
├── Editor
├── LICENSE.md
├── package.json
├── Runtime
└── Samples~
└── Combination_BasedOn_HMD
Некоторые важные элементы:
- Runtime: папка для хранения runtime platform assets. Это самая важная папка в шаблоне.
- Samples~: папка для хранения всех примеров в package. Она содержит примеры для downstream-использования и может применяться как demo для тестирования расширения. Чтобы разрабатывать этот пример на месте, нужно изменить имя папки на
Samples. Метод Client.Pack автоматически переименует ее вSamples~при упаковке нового релиза. - Editor: папка для хранения edit-time platform assets. Скрипты в этой папке в основном используются для создания пунктов меню.
- package.json: manifest-файл package.
Процесс создания примера шаблона
-
В представлении
Hierarchy:- Щелкните правой кнопкой в пустой области и добавьте ARSession через меню
EasyAR Sense>Mega>AR Session (Mega Block Default Preset). - Выберите AR Session (EasyAR) и щелкните правой кнопкой, затем добавьте ImageTrackerFrameFilter в session через меню
EasyAR Sense>Image Tracking>Frame Filter : Image Tracker. - Выберите AR Session (EasyAR) и щелкните правой кнопкой, затем добавьте DenseSpatialMapBuilderFrameFilter в session через меню
EasyAR Sense>SpatialMap>Frame Filter : Dense SpatialMap Builder. - Выберите AR Session (EasyAR) и щелкните правой кнопкой, затем добавьте SparseSpatialMapBuilderFrameFilter в session через меню
EasyAR Sense>SpatialMap>Frame Filter : Sparse SpatialMap Builder. - Выберите AR Session (EasyAR) и щелкните правой кнопкой, затем добавьте и оставьте только HMD Template FrameSource через меню
EasyAR Sense>Extensions>Frame Source : HMD Template (keep it only).

- Щелкните правой кнопкой в пустой области и добавьте ARSession через меню
Добавить ImageTargetController
В представлении
Hierarchyщелкните правой кнопкой в пустой области и добавьте ImageTargetController в session через менюEasyAR Sense>Image Tracking>Target : Image Target.Настройте ImageTargetController:

После завершения указанной выше настройки изображение, отображаемое в представлении
Scene, является gizmo. В этом примере quad используется для отображения виртуального объекта с тем же изображением.Добавьте виртуальный объект, отображаемый поверх target:

Добавить модель как reference origin для motion tracking
Эта модель важна как для разработчиков, так и для downstream-пользователей. Она используется для отделения device motion tracking от алгоритмов EasyAR.

Добавить UI для выбора функций

Отключить функции EasyAR, включенные при запуске, и включать их через переключатели UI
Например, функцию image tracking можно отключить при запуске, просто установив enable соответствующего component в false:

Затем добавьте обработку переключателя UI:

Связанные темы
- Добавить поддержку EasyAR для гарнитуры описывает, как использовать этот шаблон для создания нового пакета расширения для гарнитуры
- Проверка запуска (bring-up) описывает, как использовать примеры, предоставленные этим шаблоном, для проверки корректности input extension
- Публикация пакета расширения описывает, как выполнить финальную упаковку и распространение на основе этого шаблона