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

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

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

Добавление модели в качестве точки отсчёта для отслеживания движения
Эта модель важна как для разработчиков, так и для пользователей, так как она разделяет отслеживание движения устройства и алгоритмы EasyAR.

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

Отключение функций EasyAR при запуске и их включение с помощью переключателей UI
Например, функцию отслеживания изображений можно отключить при запуске, установив
enableсоответствующего компонента вfalse:
Затем добавьте обработку переключателя UI:

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