Hi there… friends
First off I really don’t know how to categorize this issue; if its due to it being a hard problem to handle or its because of inefficient code… or perhaps a memory related bug!
Simply describing what I’m trying to do is a import of a FBX file at 14MB of size which contains 2million polygons into UE4.
For 3dsMAX 2015 it imports this FBX file at 10 seconds and for unreal engine it takes about an hour…!
Scene is exported to FBX and DWFx from Revit 2015. Opening the same scene as a DWFx file (2MB) in Autodesk Design review takes 3 seconds, just to have an idea of the scene not being that complex.
Settings I’ve tried in UE4 are many but I guess the most important one is “combine meshes” which i have tried both on and off.
During the 1 hour import UE4 ram usage jumps periodically between 900MB and 1200MB and at the end of the import process it goes above 7 gigs, because of that UE4 sometimes crashes.
In the Trello roadmap there is an “Import FBX into level” card, that has made me curious if it will fix this issue or not and if it will have some nice features.
Basically what I want is to import this scene quickly and also being able to reimport/update it quickly as well.
The “import procedure” and “update procedure” between Revit → FBX → UE4 should be minimal, meaning that when the scene from Revit is updated it should be a simple procedure to export FBX from Revit and then reimport the FBX file in UE4 keeping materials, uv etc. Much like how “Link Revit” and “Link FBX” works in 3dsMAX.
As an idea I think importing the scene with multiple meshes should have a dummy object created, this dummy object located at 0,0,0 world space in fbx scene and all the meshes parented to it.
So moving or scaling the dummy object in UE4 should affect the child meshes. Also this dummy object could(?) be used as a placeholder for remembering settings, materials, uv and other things that you have done in UE4 for that particular FBX import, for when you want to re-import and update that scene in UE4 from a newer FBX scene version (new export from Revit). Essentially keep what you have done in UE4 and get the Revit updates.
Why? Because this kind of projects are basically alive and ever changing until the final part is physically placed on the building, and we see that having the possibility to iterate and have UE4 as a real time tool would be beneficial.
Btw fast iteration is the key of UE4.5 isn’t it? This feature is cool as the C++ hot reload feature right? …yeah that’s my strong selling point… at least I tried =P
To the curious one at Epic I can provide both the FBX and DWFx files exported from Revit.