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 License

EasyAR Sense License related configuration.

LicenseKey

EasyAR Sense License Key. A valid license is required to use EasyAR features.

It can be left empty only when EasyAR Sense is initialized manually through the interface.

Примечание

When used on headset devices (Vision Pro, XREAL, Pico, Rokid, Meta Quest, etc.), EasyAR XR License is required.

Примечание

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

Verify When Build

Verify the license Key when building the Unity project.

When this option is enabled, the Unity project build process verifies the license Key. If the license is invalid on the build platform or does not include the package name set in Unity Player Settings, the build process will fail. If you need to use a license key configured elsewhere or need to modify the package name after the Unity build process, you can disable this option.

Lib Variants

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

Only Android, iOS, and visionOS platforms can be selected. Windows and Mac platforms do not support selection and always use the Full variant.

EasyAR Sense usually has multiple variants, and different variants have different features. The library variants integrated in the plugin are compared below.

Variant EasyAR Sense variant name Feature differences Other notes
Normal Community/Enterprise Does not include screen recording, inertial navigation, or Mega Go
Full CommunityFull/EnterpriseFull Includes inertial navigation and Mega Go Larger library file size
VideoRecording CommunityR Includes screen recording feature (Android only)
Совет

Some variants that cannot be used in Unity are not listed, such as the iOS CommunityR variant.

Значения по умолчанию:

  • EasyAR Mega support package not imported: Normal
  • EasyAR Mega support package imported: Full

Рекомендуемая конфигурация:

  • Full: use EasyAR Mega or inertial navigation features
  • Normal: pursue the smallest package size and do not use EasyAR Mega or inertial navigation support
  • VideoRecording: need to use screen recording feature (Android only)

Permissions

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

Кроме разрешения камеры, остальные разрешения изменить нельзя; они зависят от других настроенных функций.

Permission Можно изменить Условие активации Описание разрешения
Camera Да Разрешение камеры, необходимое для использования камеры
AndroidMicrophone Нет Variant = 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: опции режима editor
    • Disable AR Session: если существует ARSession, отключает ARSession AR Foundation в editor.
  • Player: опции режима выполнения
    • Enable: включает управление во время выполнения. Обратите внимание: если отключить эту опцию, компоненты, отключённые в режиме editor, не будут восстановлены во время выполнения.
    • Enable If Desktop: включать в Windows/Mac.
    • Enable If Mobile AR On Startup: при запуске switcher, если loader mobile AR (ARKit/ARCore) активен, он включается. Обычно для этой опции должен быть отмечен Initialize XR on Startup в XR Plug-in Management.
    • Disable If Non Mobile AR Post Startup: при запуске switcher, если существуют loaders, отличные от mobile AR (ARKit/ARCore), но ни один из них не активен, он отключается. Обычно эта опция используется, когда Initialize XR on Startup не отмечен в XR Plug-in Management.
    • Restore AR Session When Disabled: когда функция отключается, восстанавливает (включает) все ARSession AR Foundation, которые были отключены, независимо от того, сделал ли это EasyAR. Эта опция обычно используется для восстановления отключённых в editor компонентов.

Подробное описание функции см. в Unity XR Auto Switch.


Mega

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

Mega Block/Landmark Support

Включена ли поддержка Mega Block/Landmark.

Эта опция включается по умолчанию после импорта com.easyar.mega; если пакет не импортирован, она по умолчанию выключена.

Mega Go Support

Версия >= 4003.1

Включена ли поддержка локализации на устройстве для Mega Go.

Параметр только для чтения; показывает, доступна ли функция Mega Go при текущей конфигурации.

Если отображаемая информация не соответствует вашим требованиям, измените опцию Lib Variants при необходимости.

InertialCameraDevice Support

Параметр только для чтения; показывает, доступна ли инерциальная функция при текущей конфигурации.

Если отображаемая информация не соответствует вашим требованиям, измените опцию Lib Variants при необходимости.

ONNX Rumtime

Параметр только для чтения; показывает информацию ONNX runtime при текущей конфигурации.

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

Mega Block > Localization Service Access [Global]

Глобальная настройка сервера локализации Mega Block.

Mega Landmark > Localization Service Access [Global]

Глобальная настройка сервера локализации Mega Landmark.

Spatial Map

Настройки функции spatial map в EasyAR.

Service Access [Global]

Глобальная настройка sparse map сервера.

Image Tracking

Настройки функции image tracking в EasyAR.

Target Gizmo

Настройка Gizmo для ImageTarget в editor.

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

Cloud Recognition (CRS) > Service Access [Global]

Глобальная настройка cloud recognition сервера.

Object Tracking

Настройки функции object tracking в EasyAR.

Target Gizmo

Настройка Gizmo для ObjectTarget в editor.

  • Enable: включает gizmo.

Third-Party Libraries

Конфигурация сторонних библиотек.

ARCore SDK

Конфигурация ARCore SDK.

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

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

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

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

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

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

Примечание

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

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

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

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

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

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

  • Использовать другой ARCore SDK

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

Warn 32-bit-only ARCore-enabled build

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

alt text

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

alt text

Осторожно

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

AR Engine SDK

Конфигурация AR Engine SDK.

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

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

ONNX Runtime (Bundled)

Использовать ли встроенный ONNX runtime.

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

Workaround For Unity

Способы обхода для багов или неудачного поведения Unity.

GenerateXMLDoc

Генерирует XML-документацию при перезагрузке scripts, чтобы intelliSense в API-документации мог работать.

URP17RG_DX11_RuinedScene

Workaround для повреждения рендеринга scene в URP 17 Render Graph DX11. Эта опция отключена в Unity 6.2 и более поздних версиях.

URP17RG_IOS_Glitches_Partial

Частичный workaround для Unity Issue UUM-87787.

Краткое описание проблемы: при получении текстуры камеры из EasyAR, как в sample ImageTracking_Coloring3D и sample ARSession workflow (CameraDevice), на устройствах iOS/Mac могут наблюдаться visual glitches и artifacts. Мы воспроизвели эту проблему в чистом Unity package и сообщили о ней Unity: Glitches on iOS with AR Camera Image Rendering (URP 17 render graph). За ходом решения можно следить в обновлениях Unity Issue UUM-87787 и будущих release notes Unity.