Table of Contents

Как использовать Mega Studio в Unity для создания 3D-контента, точно выровненного с реальным пространством

Хотя xr-frame не предоставляет функции 3D-редактора, вы всё равно можете с помощью Mega Studio точно размещать виртуальные объекты в определённых местах реального пространства, чтобы в AR-опыте они точно совпадали с реальным пространством.

Перед началом

Совет

В плагин Mega уже добавлена зависимость от com.unity.cloud.gltfast, поэтому файл модели можно напрямую перетащить в Unity Assets.

Использование 3D-контента как дочернего узла annotation

Перетащите импортированную модель в узел сцены, сделав её дочерним узлом annotation.

В панели Inspector модели установите все значения Position и Rotation в 0. Scale можно настроить по необходимости.

Примечание

EMA содержит всю логику преобразования координат. Установка Position и Rotation модели в 0 нужна для того, чтобы геометрический центр модели полностью совпал с точкой annotation. Все смещения и повороты должны выполняться через её родительский узел, то есть узел annotation.

Изменение Transform модели

Точная настройка положения модели

Выберите узел annotation в сцене и настройте положение и поворот модели относительно dense model.

Примечание

Position и Rotation модели относительно annotation всегда должны быть равны 0, иначе в xr-frame не получится получить правильный результат рендеринга.

[Необязательно] Точная настройка положения модели по панораме

Нажмите кнопку загрузки справа от маркера панорамы в панели Inspector, и в сцене появятся маркеры панорамы.

Загрузка маркера панорамы

Отображение маркера панорамы

Нажмите любой маркер панорамы, чтобы разместить объект в панорамном виде в этой позиции. Можно переключать позиции панорамы, чтобы убедиться, что положение модели точно с разных ракурсов.

Редактирование панорамы

[Необязательно] Точная настройка положения модели по LCC 3D Gaussian splatting

Примечание

Этот раздел подходит для сценариев после сбора данных устройством Qiyu и завершения картографирования. Результаты картографирования с другими устройствами не содержат данные LCC 3DGS.

Если вы использовали функцию LCC 3D Gaussian splatting, то есть Qiyu LCC, положение модели можно настроить, сопоставляя её с 3DGS. Использование данных LCC описано в Загрузка данных LCC и выравнивание с Mesh.

Что делать, если загруженная модель Block не горизонтальна

Выберите Block Root в панели Hierarchy и изменяйте Rotation в панели Inspector, пока направление dense model не станет выглядеть правильно в Unity Editor.

Важно

Block Root является родительским узлом всех узлов Block в дереве узлов сцены 3D-движка.

Transform Block Root в мировой системе координат не влияет на локальную систему координат Block, а значит не влияет на результат рендеринга annotation и модели под annotation. Его Transform не связан с итоговым отображением.

Что делать, если загруженная модель Block имеет разрывы или отсутствующие части

Во время 3D-реконструкции, если охват ракурсов при сборе данных неполный, в созданной dense model могут появиться разрывы или недостающие части.

Разрывы и недостающие части

Для неполной модели, если требования к точности выравнивания 3D-контента в разорванной или отсутствующей части невысоки, можно разместить 3D-контент, нажимая маркеры панорамы и сопоставляя его с панорамой. Затем можно проверить результат, нажимая расположенные рядом маркеры панорамы.

Размещение по панораме

Получите результат размещения.

Результат размещения

Если требования к точности выравнивания 3D-контента в разорванной или отсутствующей части очень высоки, карту нужно дополнить или обновить через supplemental update или lossless full update. Обычно такая область означает, что процесс съемки её не охватил. Внутри такой области качество локализации Mega будет затронуто, и одного выравнивания 3D-контента в редакторе недостаточно.

Следующие шаги

Связанные темы

Плагин Mega для WeChat Mini Program:

Mega Studio: