Runtime Import, IFC still not supported ?

Hello everyone,

I am working with IFC files and in an other forum question
(To open any IFC file in packaged application and not in editor - #4 by UE_FlavienP),
it was said that IFC import in runtime will be there, one day.

I just tested (5.4) importing with DatasmithRuntimeActor,
with this :

And nothing (the boolean is false)

Am I doing something wrong ?
Or is the runtime import of IFC not supported, yet ? :cry:

Hopefully someone have the information or can help me,

Have a nice day :wave:

Found solution ?

I presume IFC can’t import directly at runtime. Datasmith runtime format works

Not with ONLY the IFC in runtime, no;

But we managed to :

  • Convert IFC in XML
  • get the data we needed (Type, Location, Forward, Right, GUID etc.)
  • Convert IFC in GLTF
  • Import the GLTF with a plugin (GLTFRuntime)

Everything work in runtime/shipping

I wish it could be simplier…

I created a temporary solution for Windows.

As you know there is a pre-built tool called “IfcConvert.exe” from “IfcOpenShell”.

So, I developed a helper function to trigger “IfcConvert.exe” with correct arguments to convert IFC files to GLB files at runtime with with CreateProc, asynchronously.

It is just like running something with Windows Command Prompt but from UE5’s inside and without creating a terminal windows (headless).

Just copy IfcConvert.exe to your Project’s Binaries folder.

codes are here. It is blueprint exposed. You don’t need to write arguments manually. It automatically creates for you.

It is a slow operation but because it is asynchronous, users won’t feel anything. After you receive your GLB file, you can use gLTFRuntime importer.

Btw. I talked with maintainer in GitHub issues. He said to receive metadata, the most effective way was GLB + XML.

I will look at that, too.

Couple days ago, I finished my in house OCCT 8.0 based STEP importer. Today, I forked IfcOpenShell’s itself and modified it to work with OCCT 8.0 and Boost 1.88 (it is UE5’s version).

I can create a real IFC importer, too but it is not in my top priorities.

// Note for official CAD importers.
I am not an Epic employee but I saw that Epic used Hoops Exchange to bring CAD support to the engine. These kind of libraries are NOT open sourced (besides OCCT if you want to support only OBJ, GLB, IFC, IGES, STEP, VRML but not native ones like .sldasm .iam parasolid) and very expensive. I mean at least 20-30K USD per year per developer + runtime fees. So, I don’t think Epic will ever bring that feature. It is not technical but financial.