Как использовать Mega Studio в Unity для создания 3D-контента, точно выровненного с реальным пространством
Хотя xr-frame не предоставляет функции 3D-редактора, вы всё равно можете с помощью Mega Studio точно размещать виртуальные объекты в определённых местах реального пространства, чтобы в AR-опыте они точно совпадали с реальным пространством.
Перед началом
Подготовьте модель: используйте модель из sample project, милую панду, либо модель маленького робота, используемую в официальном Demo xr-frame, либо обратитесь к формату GLTF, загружаемому XRFame, и поддерживаемым расширениям, чтобы подготовить файл модели, соответствующий требованиям xr-frame.
Импортируйте файл модели в Unity.
Совет
В плагин Mega уже добавлена зависимость от com.unity.cloud.gltfast, поэтому файл модели можно напрямую перетащить в Unity Assets.
Использование 3D-контента как дочернего узла annotation
Перетащите импортированную модель в узел сцены, сделав её дочерним узлом annotation.
В панели Inspector модели установите все значения Position и Rotation в 0. Scale можно настроить по необходимости.
Примечание
EMA содержит всю логику преобразования координат. Установка Position и Rotation модели в 0 нужна для того, чтобы геометрический центр модели полностью совпал с точкой annotation. Все смещения и повороты должны выполняться через её родительский узел, то есть узел annotation.

Точная настройка положения модели
Выберите узел 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: