Best way to dynamically import huge 3D models

Hi,

I’m trying to find out if Unity is suitable to load huge 3D models dynamically.
The models are exported from 3rd party software and is basically 3D reconstructions of buildings, landscape and similar which we want to explore using VR.

When i import a .obj file i get a warning that the mesh is being split into xxx parts as Meshes may not have more than 65534 vertices.

So an open question if Unity is suitable to handle the tasks and perhaps some thought on requirements for it?

Splitting doesn’t really matter, but if its really huge cad model with tens of thousands of objects, its going to start to get slow… did you try whats the fps/draw call count on vr?

You can try to optimize it (cleanup small parts, remove duplicate materials, reduce polygons etc but that might mean lots of manual work).

there’s also some tools like these that might help,

ps. unity has few related videos on that topic, like

1 Like

I haven’t done much testing yet as i wanted to ask the community about expiriences first.
Manual editing is not possible as the models are created by photogrammetry and directly exported to e.g. obj or fbx files.

The issue i found with the splitting of the models is the texture. I can only apply texture to the model parts and not the whole model. But i guess there’s ways to fix this as well.

The plugin looks pretty much what i’m looking for besides it does not work on runtime, but you on the right track on my needs. :slight_smile:

You can implement your own loader which will handle model merging/splitting. I mean you’re planning to load models dynamically anyway.

MOdern hardware generally should have no problem rendering huge number of triangles. Back in early 2000s RivaTNT could already render 2 mil triangle landscape at 20 fps or something. Modern GPUs are much more powerful.

In the end you’ll need to test it on a quick prototype.