Table of Contents

Конфигурация easyar

Страница конфигурации EasyAR доступна через меню Unity EasyAR > Sense > Configuration или Edit > Project Settings > Easyar.

alt text

Здесь содержатся все глобальные настройки для EasyAR Sense Unity Plugin.

alt text


Initialize on startup

Инициализировать EasyAR при запуске. Обычно рекомендуется оставлять эту опцию включенной.

Если отключить эту опцию, потребуется вручную инициализировать EasyAR Sense. Подробные инструкции можно найти в разделе Инициализация EasyAR Sense.

Лицензия EasyAR Sense

Настройки, связанные с лицензией EasyAR Sense.

LicenseKey

Ключ лицензии EasyAR Sense. Для использования функций EasyAR необходимо указать действительный лицензионный ключ.

Можно оставить пустым, только если инициализация EasyAR Sense выполняется вручную через интерфейсы.

Примечание

При использовании на устройствах гарнитур (Vision Pro, XREAL, Pico, Rokid и др.) требуется лицензия EasyAR XR.

Примечание

При использовании пробных продуктов (например, лицензии Personal, пробной лицензии XR или пробного сервиса Mega) на пользовательских камерах или гарнитурах, EasyAR Sense перестает отвечать через 100 секунд после каждого запуска (пользователи Mega могут запросить изменение этого времени через EasyAR Business после утверждения). Использование платной версии EasyAR Sense и платного сервиса EasyAR Mega не имеет этого ограничения.

Verify When Build

Проверять лицензионный ключ при сборке проекта Unity.

Если эта опция включена, процесс сборки проекта Unity проверит лицензионный ключ. Сборка завершится ошибкой, если лицензия недействительна на целевой платформе сборки или не включает имя пакета (Bundle ID), заданное в настройках Unity Player Settings. Если вам нужно использовать ключ лицензии, настроенный в другом месте, или требуется изменить имя пакета после процесса сборки Unity, эту опцию можно отключить.

Lib variants

Настройка вариантов библиотеки EasyAR Sense.

Лицензия EasyAR Sense

Настройки, связанные с лицензией EasyAR Sense.

LicenseKey

Ключ лицензии EasyAR Sense. Для использования функций EasyAR необходимо указать действительный лицензионный ключ.

Можно оставить пустым, только если инициализация EasyAR Sense выполняется вручную через интерфейсы.

Примечание

При использовании на устройствах гарнитур (Vision Pro, XREAL, Pico, Rokid и др.) требуется лицензия EasyAR XR.

Примечание

При использовании пробных продуктов (например, лицензии Personal, пробной лицензии XR или пробного сервиса Mega) на пользовательских камерах или гарнитурах, EasyAR Sense перестает отвечать через 100 секунд после каждого запуска (пользователи Mega могут запросить изменение этого времени через EasyAR Business после утверждения). Использование платной версии EasyAR Sense и платного сервиса EasyAR Mega не имеет этого ограничения.

Verify When Build

Проверять лицензионный ключ при сборке проекта Unity.

Если эта опция включена, процесс сборки проекта Unity проверит лицензионный ключ. Сборка завершится ошибкой, если лицензия недействительна на целевой платформе сборки или не включает имя пакета (Bundle ID), заданное в настройках Unity Player Settings. Если вам нужно использовать ключ лицензии, настроенный в другом месте, или требуется изменить имя пакета после процесса сборки Unity, эту опцию можно отключить.

Permissions

Настройка разрешений приложения. Обычно рекомендуется оставлять значения по умолчанию.

За исключением разрешения камеры, другие настройки разрешений неизменяемы и определяются конфигурацией других функций.

Разрешение Изменяемо Условие активации Описание
Camera Да Разрешение на использование камеры
AndroidMicrophone Нет Вариант - VideoRecording Разрешение на использование микрофона (требуется для записи экрана)
Location Нет Импорт пакета поддержки Mega Разрешение на точное (fine) определение местоположения (требуется для EasyAR Mega)

Unity XR

Настройки, связанные с фреймворком Unity XR (AR Foundation и др.).

AR foundation support

Переключатель поддержки AR Foundation. Рекомендуется оставлять включенным.

В редких случаях (например, при необходимости использовать AR Foundation 4 или ошибках компиляции из-за обновления AR Foundation) можно отключить эту опцию, но все функции плагина, связанные с AR Foundation, будут отключены.

Примечание

После изменения этой опции скрипты автоматически перекомпилируются.

Unity XR auto switch

Автоматическое переключение объектов Unity XR (например, AR Foundation).

  • Editor: Настройки режима редактирования
    • Disable AR Session: Отключает ARSession AR Foundation в редакторе при наличии ARSession.
  • Player: Настройки режима выполнения
    • Enable: Включает управление во время выполнения. Примечание: если отключить эту опцию, компоненты, отключенные в редакторе, не будут восстановлены при запуске.
    • Enable If Desktop: Включает на Windows/Mac.
    • Enable If Mobile AR On Startup: Включает, если при запуске переключателя загрузчик мобильного AR (ARKit/ARCore) активен. Обычно для этой опции требуется, чтобы в XR Plug-in Management был выбран Initialize XR on Startup.
    • Disable If Non Mobile AR Post Startup: Отключает, если при запуске переключателя существуют другие загрузчики, кроме мобильного AR (ARKit/ARCore), но ни один из них не активен. Обычно используется, когда в XR Plug-in Management не выбран Initialize XR on Startup.
    • Restore AR Session When Disabled: Восстанавливает (включает) все отключенные ARSession AR Foundation при отключении функции (независимо от того, были ли они отключены EasyAR). Эта опция обычно используется для восстановления компонентов, отключенных во время редактирования.

Подробное описание функциональности см. в разделе Автоматическое переключение Unity XR.


Mega

Настройки функций EasyAR Mega.

InertialCameraDevice support

Только для чтения. Отображает доступность функции инерциальной навигации в текущей конфигурации и информацию о среде выполнения ONNX.

Если отображаемая информация не соответствует требованиям, при необходимости измените параметры Lib Variants и ONNX Runtime (Bundled).

Mega block > Localization service access [Global]

Глобальная конфигурация сервера локализации для Mega Block.

Mega landmark > Localization service access [Global]

Глобальная конфигурация сервера локализации для Mega Landmark.

Spatial map

Настройки функции пространственной карты EasyAR.

Service access [Global]

Глобальная конфигурация сервера разреженной карты.

Image tracking

Настройки функции отслеживания изображений EasyAR.

Target gizmo

Настройки Gizmos для ImageTarget в редакторе Unity.

Включение этих опций будет отображать соответствующие gizmo в Unity Editor. Если в сцене много таких целей, это может повлиять на производительность запуска в редакторе. На производительность во время работы на устройстве это не влияет.

Cloud recognition (CRS) > Service access [Global]

Глобальная конфигурация сервера облачного распознавания (CRS).

Object tracking

Настройки функции отслеживания объектов EasyAR.

Target gizmo

Настройки Gizmos для ObjectTarget в редакторе.

  • Enable: Включает Gizmos.

Third-party libraries

Настройка сторонних библиотек.

Arcore sdk

Настройка ARCore SDK.

ARCore предоставляет возможности отслеживания движения на некоторых устройствах Android. Подробнее о взаимосвязи функций EasyAR с отслеживанием движения и о том, когда может потребоваться ARCore, см. в разделе Отслеживание движения и функции EasyAR.

  • AR Foundation Or Optional: SDK ARCore, распространяемый вместе с EasyAR или AR Foundation, будет включен в приложение, в зависимости от настроек ARCore XR Plugin. Обычно рекомендуется этот вариант, так как он автоматически обрабатывает случаи с AR Foundation.
  • Optional: Функции ARCore будут доступны на устройствах, поддерживающих ARCore и имеющих установленный сервис Google Play Services for AR.
  • Required: Приложение будет работать только на устройствах, поддерживающих ARCore и имеющих установленный сервис Google Play Services for AR.
  • External: Используйте этот вариант, если SDK ARCore распространяется с AR Foundation или другим пакетом. В этом случае SDK ARCore, поставляемый с EasyAR, использоваться не будет. Этот вариант также можно использовать для полного исключения SDK ARCore из приложения.
Осторожно

Если установить ARCore SDK в значение Required или установить Requirement в Required в настройках ARCore для AR Foundation, и установить собранное приложение на устройство, не поддерживающее ARCore, устройство ошибочно сообщит, что ARCore доступен и будет работать с ним. Это создаст ложное впечатление, что устройство работает на ARCore с неполадками (черный экран или другие аномалии), но это неверно.

Это происходит потому, что Google Play Store не позволяет устанавливать приложения, помеченные как требующие ARCore, на неподдерживаемые устройства, поэтому такие приложения всегда предполагают, что работают на поддерживаемом устройстве.

При правильной настройке эти устройства определят неподдержку ARCore на этапе сборки сессии и будут использовать функции EasyAR.

Подробнее о Optional и Required, а также о других настройках, необходимых для публикации приложения в Google Play Store, см. в документации Google (Китай, Международная).

Примечание

В плагине EasyAR Sense для Unity библиотеки и настройки, необходимые для поддержки ARCore, уже включены в пакет плагина. Однако для работы на телефоне необходимо установить Google Play Services for AR.

Можно использовать SDK ARCore из разных источников:

  • Использование SDK ARCore, распространяемого с плагином

    Плагин включает в себя определенную версию SDK ARCore. Подробности см. в разделе Совместимость версий ARCore, AR Engine. При использовании оболочки ARCore от EasyAR можно не импортировать AR Foundation отдельно.

  • Использование SDK ARCore из AR Foundation

    Если требуется использовать SDK ARCore от AR Foundation, следуйте инструкциям Google (Китай, Международная) для настройки. В этом случае для опции ARCore SDK необходимо выбрать AR Foundation Or Optional или External.

  • Использование другого SDK ARCore

    Если в проекте или через сторонний плагин распространяется другой SDK ARCore, его также можно использовать. В этом случае для опции ARCore SDK выберите External и выполните настройки в соответствии с требованиями конкретного плагина или проекта.

Предупреждение о сборке с поддержкой ARCore только для 32-бит (Warn 32-bit-only ARCore-enabled build)

Согласно документации Google, ARCore не будет работать корректно на устройствах с архитектурой arm64, если в приложении присутствуют только библиотеки armv7. При сборке без выбора ARM64 появится предупреждение:

alt text

В этом случае необходимо изменить конфигурацию проекта: использовать компиляцию IL2CPP и выбрать поддержку ARM64.

alt text

Осторожно

При необходимости можно выбрать Continue and don't warn me again или отключить эту опцию, что отключит проверку при сборке. Отключение проверки лишь убирает предупреждение при сборке, но во время выполнения на некоторых устройствах могут возникнуть аномалии, включая, но не ограничиваясь, крашами или черным экраном.

Ar engine sdk

Настройка AR Engine SDK.

AR Engine предоставляет возможности отслеживания движения на некоторых устройствах Android. Подробнее о взаимосвязи функций EasyAR с отслеживанием движения и о том, когда может потребоваться AR Engine, см. в разделе Отслеживание движения и функции EasyAR.

  • AREngineInterop: AREngineInterop доступен. SDK AR Engine, распространяемый с EasyAR, будет включен в приложение.
  • External: AREngineInterop доступен. SDK AR Engine, распространяемый с EasyAR, использоваться не будет.
  • Disabled: AREngineInterop недоступен. SDK AR Engine, распространяемый с EasyAR, использоваться не будет. Все функции, связанные с AR Engine, будут отключены.

Onnx runtime (bundled)

Использовать ли встроенную среду выполнения ONNX. Действует только при Lib Variant = Full.

Для использования другой версии ONNX можно получить обновленную версию с официального сайта ONNX и отключить эту опцию. Использование самостоятельно скомпилированных бинарных файлов ONNX, несовместимых с плагином, приведет к непредсказуемым ошибкам.

Workaround for unity

Обходные решения для ошибок или некорректного поведения Unity.

GenerateXMLDoc

Генерирует XML-документацию при перезагрузке скрипта для работы IntelliSense в API-документации.

URP17RG_DX11_RuinedScene

Обходной путь для URP 17 Render Graph DX11, где сцена рендерится повреждённой. Опция отключена в Unity 6.2 и новее.

URP17RG_IOS_Glitches_Partial

Частичное решение для Unity Issue UUM-87787.

Описание проблемы: При получении текстуры камеры из EasyAR (как в примере ImageTracking_Coloring3D и примере Рабочий процесс ARSession (CameraDevice)) на устройствах iOS/Mac наблюдаются визуальные помехи и артефакты. Мы воспроизвели проблему в чистом пакете Unity и сообщили о ней: Glitches on iOS with AR Camera Image Rendering (URP 17 render graph). Отслеживайте обновления по Unity Issue UUM-87787 и логам выпусков будущих версий Unity.