Table of Contents

如何使用 Unity 上的 Mega Studio 创建与实景精确对齐的 3D 内容

尽管 xr-frame 没有提供 3D 编辑器功能,您还是可以借助 Mega Studio 将虚拟物体准确地摆放在现实空间的某个位置,在 AR 体验中与现实空间精确对齐。

开始之前

提示

Mega 插件中已经添加了对 com.unity.cloud.gltfast 的依赖,因此您可以直接将模型文件拖入 Unity Assets。

将 3D 内容作为标注的子节点

将导入的模型拖到场景节点,作为标注的子节点。

将模型 Inspector 面板中的 Position 和 Rotation 全部改为 0, Scale 可以根据需要自行调整。

注意

EMA 承载了所有的坐标转换逻辑。将模型 Position 和 Rotation 设为 0,是为了让模型的几何中心与标注点完全重合。所有的位移和旋转调整,都应该通过操作其父节点(标注节点)来完成。

修改模型Transform

精确调整模型位置

选择 标注节点 在场景中对着稠密模型调整模型的位置和旋转。

注意

模型相对于标注的 Position 和 Rotation 必须始终全部为 0 ,否则您无法在 xr-frame 上得到正确的渲染结果。

[可选] 根据全景图精确调整模型位置

点击 Inspector 面板中的全景标记右侧的加载按钮,场景中出现全景标记。

加载全景标记

显示全景标记

点击任意一个全景标记,就可以在其位置进行全景下的摆放,您可以切换全景的位置以确认模型在不同视角下的位置都是准确的。

全景编辑

如果加载的 Block 模型不水平怎么办

Hierarchy 面板中选择 Block Root ,在 Inspector 面板中修改 Rotation 直到稠密模型的朝向在 Unity 编辑器中看起来正确。

重要事项

Block Root 是在 3D 引擎场景节点树上所有 Block 节点的父节点。

Block Root 在世界坐标系下的 Transform 不会影响 Block 的本地坐标系,也因此不会影响标注和标注下模型的渲染结果。它的 Transform 和最终的显示效果无关

如果加载的 Block 模型有破碎,缺损的部分怎么办

在三维重建过程中,若受采集视角覆盖不全的影响,生成的密模型中可能会出现破碎或缺损的部分。

破碎缺损

面对不完整的模型,若破碎/缺损部分的 3D 内容对齐精度要并不高,可以通过点击全景标记对照全景图的方式来摆放 3D 内容。之后可以通过点击附近不同的全景标记位置来验证效果。

通过全景图摆放

得到摆放结果。

摆放结果

若破碎/缺损部分的 3D 内容对齐精度要求非常高,则需要通过补充更新无损全量更新进行地图的补充或更新。一般来说这样的区域意味着采图过程中没有覆盖,在这样的区域内部 Mega 定位效果会受到影响,仅在编辑器中对齐 3D 内容是不够的。

后续步骤

相关主题

微信小程序 Mega 插件

Mega Studio