使用其域 LCC 3D 高斯泼溅数据
本文档介绍如何在 Unity 编辑器中对齐其域 LCC 3D 高斯泼溅数据到 block mesh,以辅助应用开发。
重要事项
本文仅适用于使用其域设备采集并完成建图后,需要在 Unity 编辑器中同时加载并浏览 Mesh 与 LCC 3DGS 的用户。使用其它设备建图结果中不包含 LCC 3DGS 数据,无法使用本文档介绍的方法加载 LCC 3DGS。
开始之前
重要事项
由于其域会修改其数据及 SDK 行为,如下面描述与官方文档不一致,请以其域官方文档为准。
如果您在使用其域 LCC 3DGS 数据时遇到问题,请联系其域技术支持。
LCC 3DGS 与 Mesh 数据对齐
Unity 编辑器中使用 Mega 工具加载并渲染 Mesh,同时使用 LCC SDK 加载并渲染 LCC 3DGS。
配置 LCC SDK 组件
在 Hierarchy 中添加 LCC Unity SDK 提供的组件 LCC Manager 和 LCC Renderer。
将 LCC Renderer 拖到对应的 Block 节点下作为其子节点,使 LCC 3DGS 相对 Block 的 Transform 保持不变。
然后修改 LCC Renderer 的 Transform:
Position修改为(0, 0, 0)Rotation修改为(-90, 0, 0)Scale修改为(-1, 1, 1)

重要事项
根据其域官方文档说明,由于底层数据坐标系定义与 Unity 有差异,必须按照 LCC 官方 Sample 中的做法修改 LCC Renderer 的 Transform 的 Rotation以及 Scale,否则 3DGS 无法与 Mesh 对齐。
如果其域数据坐标系发生变化,导致上述修改之后数据仍无法对齐,请联系其域技术支持解决。EasyAR 数据坐标系定义通常不会发生变化。
为 Camera 添加编辑器场景相机同步脚本
在场景相机上添加 LCC Unity SDK Sample 中提供的脚本 SceneGameCameraSync。

重要事项
在编辑模式下需要通过此脚本同步编辑器场景相机的位姿和 FOV 才能渲染 3DGS。 在运行模式下必须 Disable 此脚本。
完成上面操作之后,即可在同时加载 3DGS 和 Mesh 之后对齐两个数据。这时可以检查 3DGS 是否与 Mesh 对齐,数据对齐后,3DGS 的渲染结果应该与 Mesh 的渲染结果完全重合。

同时渲染 3DGS 和 Mesh 虽然可行,但视觉效果会互相干扰,摆放内容时建议只显示其中一个。
查看 LCC 3D 高斯泼溅
在需要查看 LCC 3DGS 的场景中,建议隐藏 Mesh 后仅显示 3DGS 渲染结果以避免 Mesh 对视觉的干扰。
取消 Mesh 选项,隐藏 Mesh。

然后在 LCC Renderer Inspector 面板中填入 LCC 文件的正确路径后点击右上角更多 (⋮) 按钮 > 点击 Render,触发 3DGS 渲染。

此时仅显示 3DGS 渲染结果。

查看 3D 实景网格
查看 3D 实景网格可以更方便地进行内容标注等操作。
在 LCC Renderer Inspector 面板中点击右上角更多 (⋮) 按钮 > 点击 unRender,停止 3DGS 渲染。

选择 Mesh 选项,显示 Mesh。

此时编辑器中仅渲染 Mesh。


