Search code examples
c#unity-game-engineautodesk-forge

How to load large models(Above 50mb) on Unity3d using AR toolkit from autodesk forge


Currently, I'm trying to load an IFC file using an AR toolkit from Autodesk forge. Small files like 10-20MB are loading without any issues, But large files like Above 50 MB are not loading. In the console, it is showing that it's loaded but in the scene, it's not loaded.


Solution

  • For larger scenes, I recommend switching to a glTF pipeline, as a way of getting BIM models from Forge into Unity.

    1. First, use https://github.com/petrbroz/forge-convert-utils command line tool, to pull your SVF file, and convert it a glTF file.

    2. Then, use glTFast to load that glTF file into Unity. https://github.com/atteneder/glTFast

    3. For extreme performance, use 'gltfpack' to compress and optimize your glTF's (2 draw calls, 6:1 compression ratio )... using gltf's new ext_MeshOpt extension. https://github.com/zeux/meshoptimizer/blob/master/gltf/README.md

    I've seen pretty amazing results. (in the order of 40Million triangle scene's, with a simple progressive rendering technique)

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