如何使用 Autodesk forge 的 AR 工具包在 Unity3d 上加载大型模型(50mb 以上)

Posted

技术标签:

【中文标题】如何使用 Autodesk forge 的 AR 工具包在 Unity3d 上加载大型模型(50mb 以上)【英文标题】:How to load large models(Above 50mb) on Unity3d using AR toolkit from autodesk forge 【发布时间】:2021-12-29 22:27:17 【问题描述】:

目前,我正在尝试使用 Autodesk forge 的 AR 工具包加载 IFC 文件。像 10-20MB 这样的小文件正在加载,没有任何问题,但是像 50 MB 以上的大文件没有加载。 在控制台中,它显示它已加载,但在场景中,它没有加载。

【问题讨论】:

10-20 mb 不小。 50 MB 很大。您需要在此处检查并添加有关网格、多边形数或类似的更多信息。确保内存负载非常大,这是您的问题。 请澄清您的具体问题或提供更多详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。 【参考方案1】:

对于较大的场景,我建议切换到 glTF 管道,作为将 BIM 模型从 Forge 导入 Unity 的一种方式。

    首先,使用https://github.com/petrbroz/forge-convert-utils命令行工具,拉取你的SVF文件,并将其转换为glTF文件。

    然后,使用 glTFast 将该 glTF 文件加载到 Unity 中。 https://github.com/atteneder/glTFast

    为了获得极致性能,请使用“gltfpack”来压缩和优化您的 glTF(2 个绘制调用,6:1 压缩比)...使用 gltf 的新 ext_MeshOpt 扩展。 https://github.com/zeux/meshoptimizer/blob/master/gltf/README.md

我看到了非常惊人的结果。 (大约4000万个三角形场景,使用简单的渐进式渲染技术)

ext_MeshOpt 参考:https://github.com/KhronosGroup/glTF/blob/main/extensions/2.0/Vendor/EXT_meshopt_compression/README.md

【讨论】:

以上是关于如何使用 Autodesk forge 的 AR 工具包在 Unity3d 上加载大型模型(50mb 以上)的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Autodesk Forge 查看器离线查看模型?

如何将 Autodesk Forge 模型查看器嵌入网站?

如何在 nuxt js Autodesk forge 查看器中使用 IconMarkupExtension?

Autodesk-forge 查看器:访问令牌

如何将 Autodesk Forge 查看器扩展添加到 React?

如何在 Forge Viewer 中激活“Autodesk.MemoryLimited”扩展?