Использование инструмента проверки сессии
В этой статье объясняется, как использовать инструмент проверки сессии для быстрой проверки рабочего процесса сессии в редакторе и имитации работы с использованием EIF-файлов.
Перед началом
Имитация работы использует EIF-файл в качестве входных данных, поэтому перед началом необходимо записать EIF-файл:
- См. Запись EIF-файла для записи EIF-файла
Также необходимо знать:
- Основные концепции Записи EIF-файла и его использования для имитации работы
- Основные концепции, состав и рабочий процесс AR Session
Инструмент проверки сессии
Инструмент проверки сессии помогает разработчикам быстро проверять рабочий процесс сессии в редакторе Unity и выполнять имитацию работы с использованием EIF-файлов.
По умолчанию инструмент проверки сессии можно увидеть в окне Inspector объекта AR Session (EasyAR), он является частью редактора DiagnosticsController:

Нажатие кнопки ↗ в правом верхнем углу инструмента позволяет вывести его в отдельное окно для удобства просмотра и управления. После закрытия окна или нажатия кнопки ↘ инструмент снова отобразится в окне Inspector.

Эффект работы инструмента во время выполнения показан в следующем видео:
Это видео демонстрирует эффект использования инструмента проверки сессии, записанный в режиме play Unity. В верхней части видео слева находится вид
Hierarchy, посередине — видScene, справа — видGame. В нижней части видео находится инструмент проверки сессии. Содержимое видаGameтакое же, как то, что пользователь видит на экране телефона в реальном мире.В левой верхней части инструмента отображается индикатор прогресса воспроизведения EIF, можно видеть, как он меняется по мере воспроизведения. В левой нижней части инструмента отображается текущее состояние сессии. В правой части инструмента показаны компоненты сессии и доступные режимы центра.
В сцене можно видеть три одновременно работающие AR-функции:
- Отслеживание движения: предоставляется проигрывателем кадров, синяя сфера — это XR Origin, синий конус представляет положение пользователя.
- Плотное картографирование пространства: можно видеть, как при перемещении взгляда полупрозрачные сетчатые модели постоянно генерируются.
- Разреженное отслеживание пространства: в видео отслеживается рождественская елка, наложенные виртуальные объекты — это светло-голубое облако точек.
Запуск инструмента
Нажмите кнопку ▶ в верхней части инструмента, чтобы запустить его. Нажатие этой кнопки имеет тот же эффект, что и прямое нажатие кнопки ▶ на Панели инструментов Unity.

Если инструмент уже запущен, кнопка изменится на ■, нажатие на нее остановит инструмент.
Когда инструмент отображается в отдельном окне, в поле выбора справа от кнопки ▶ можно выбрать объект сессии, который будет использовать инструмент. Если окно было сброшено и сессия потеряна, ее можно выбрать заново отсюда.
Управление воспроизведением EIF
Чтобы использовать функцию воспроизведения EIF инструмента, необходимо перед запуском установить флажок Frame Player в инструменте. В этом случае инструмент возьмет на себя управление выбором источника кадров в процессе сборки сессии. Независимо от значения, установленного в AssembleOptions.FrameSource, будет включен компонент проигрывателя кадров.

Поэтому во время выполнения появится всплывающее окно с уведомлением о том, что источник кадров, используемый текущей сессией, теперь управляется инструментом:

Примечание
Инструмент будет управлять выбором источника кадров в процессе сборки только в редакторе Unity. Эта опция не оказывает никакого влияния при сборке и запуске приложения.
При нормальной работе функции управления воспроизведением EIF отображаются в верхней части инструмента, как показано в выделенной области на рисунке:

С помощью этих кнопок можно управлять воспроизведением EIF-файла:
▶: Воспроизведение, возобновление воспроизведения из состояния паузы или остановки▮▮: Пауза■: Стоп▮◀: Переход на 5 секунд назад (если файл поддерживает)◀◀: Уменьшение скорости воспроизведения (если файл поддерживает)▶▶: Увеличение скорости воспроизведения (если файл поддерживает)▶▮: Переход на 5 секунд вперед (если файл поддерживает)▲: Открыть файл- Индикатор прогресса: щелчок для перехода к позиции воспроизведения (если файл поддерживает)
Можно одновременно с воспроизведением настраивать содержимое сцены и логику взаимодействия, что позволяет выполнять большую часть разработки на компьютере и наглядно видеть результат.
Примечание
При воспроизведении новых данных или переходе по позиции воспроизведения ранее существовавшие данные в сцене не очищаются. Состояние AR-компонентов также не сбрасывается, они будут вести себя так, как если бы данные камеры внезапно перескочили с предыдущего кадра на новые данные.
Хотя для некоторых функций это не имеет большого значения, для функций, зависящих от отслеживания движения (например, плотное картографирование пространства, Mega и т.д.), это может привести к аномальному состоянию функции и повлиять на результат работы.
Управление рабочим процессом сессии
Для использования функции управления рабочим процессом сессии инструмента необходимо перед запуском установить флажок Session Workflow в инструменте. Этот флажок установлен по умолчанию.

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

В верхней части всей области отображается информация о двух состояниях: EasyARController.IsReady и ARSession.State.
В нижней части всей области предоставлены следующие кнопки для управления рабочим процессом сессии:
Initialize: Инициализировать сессию, можно выбрать использование ключа лицензии, настроенного вProject Settings, или ввести ключ лицензии вручнуюAssemble: Собрать, но не запускать сессиюStartSession (Assembled): Запустить собранную сессиюStartSession: Собрать и запустить сессиюStopSession: Остановить сессиюStopSession (keep image): Остановить сессию, но сохранить фоновое изображениеDeinitialize: Деинициализировать сессию
Примечание
Поскольку эти функции управления напрямую вызывают соответствующие методы ARSession и EasyARController, с помощью этих кнопок можно проверять влияние изменений состояния сессии на содержимое. Однако следует помнить, что если аналогичные методы вызываются и в скриптах приложения, рабочий процесс приложения может выйти за рамки ожиданий самого приложения.
Управление компонентами сессии
Для использования функции управления компонентами сессии инструмента необходимо перед запуском установить флажок Session Workflow в инструменте. Этот флажок установлен по умолчанию.
![alt text](https://doc