4.24.1 Datasmith no option to import CAD

Hello RC-1290,
our agreement with the third party provider for CAD import does not allow us to distribute their library with the source code. Thus, you cannot build full CAD import functionality from source.

Ah indeed, it does work in the epic launcher version of the engine. Can I copy anything over from that version to a built version to get it to work? The plugin folders seem identical, including the source.
(I assume it’s UE_4.27\Engine\Plugins\Enterprise\DatasmithCADImporter)

Hi, I have the very same issue at the moment. I need to build the engine from source, (I have the UE5.1 source build) but I also need to import CAD content with Datasmith. Did you find a solution or a workaround? Thank you very much

At first I used a separate project to perform the imports, followed by exporting to fbx or migrating them. My notes say I made some use of Convert to Blueprint and harvest components to get them in a usable format.

Later I needed to more processing such as creating custom collision meshes, assigning different materials to various parts of the asset, and setting up sockets, so I bought an importer for the 3D modelling program I was using. It was getting a bit silly to stick with Datasmith.

1 Like

I want to build the Datasmith plugins from source so I can add my own logging and determine why import processes go wrong sometimes,
however when I do build these from source, IFC importing stops working.
The symbol: ‘WITH_IFC_ENGINE_LIB’ turns false and the required code is not compiled.

I get the same errors in my log:
[2023.06.28-11.15.14:920][161]LogCADInterfaces: Warning: Failed to load CADInterfaces module. Plug-in may not be functional.
[2023.06.28-11.15.14:920][161]LogDatasmithXMLPLMTranslator: Warning: CAD Interface module is unavailable. Most of CAD formats (except to Rhino and Alias formats) cannot be imported.

I’ve checked the paths in DatasmithIFCTranslator.build.cs that refer to ifcengine.dll and these paths exist, however the module ‘IFCEngine’ wchich will try to load from the directory with path:
EngineDirectory + “Restricted/NotForLicensees/Source/ThirdParty/Enterprise/ifcengine”
does not seem to exist.

To be clear: is this because it is third party software that Unreal Engine is not allowed to distribute? If so, it looks like I’m hitting a dead end here.

Which version are you building?

Not putting my nose in the code much but:

  1. Yes some of the CAD importer cannot be built from source as we cannot ship the 3rd party library for people to rebuild
  2. IFC engine lib should be removed in 5.3, we basically stop supporting it using the IFC library and switch to support with the library we use for other CAD formats. So that does not change the fact you cannot rebuild CAD library from source, but the WITH_IFC_ENGINE_LIB should disappear.

Yea unfortunately we are still on Unreal 5.0, We are using Unreal Engine to create a prettier automated viewer for IFC files from architects, We will eventually be updating to a higher Unreal Engine version but that will be a long process for us, I just needed the confirmation that I hit a dead end in this route for now.

Hi- Any update to this? I desperately need to find a way to import STEP files into the packaged application, however I get the same error message…

which version of the engine are you on? And is it the one from the Launcher?
You should be able to load some CAD file in a package application, with limitations: no materials, no nanite, etc.

We are working with 5.3. And I tried both building the project from Visual Studio and launching it straight from the Unreal Launcher. Does it make a difference, if I want to package the application anyways?

I am using the Interchange Manager for the Import - and it works fine in the Editor. But in the Build the log prints following error:

[2024.07.16-13.34.58:898][284]LogCADInterfaces: Warning: Failed to load CADInterfaces module. Plug-in may not be functional.
[2024.07.16-13.34.58:898][284]LogInterchangeEngine: Error: Cannot import file, the source data is not supported. See if you can enable for interchange the extension [stp]

We cant use Datasmith, as we would like to import Step Files directly. I thought datasmith only works with .udatasmith files and a few other formats, or am I missing something?

I am using this code:

I get the same error using this code, the editor gets opened from the launcher:

I opened a ticket and will have Dev to look into it.
Interchange Datasmith should work with .udatasmith and most CAD files. But it is still experimental and as you can see a module is not packaged properly with your application.

1 Like

I built from source and ran into the issue of the CAD formats (STEP) not being available. I was trying to see if 5.5 would allow me to package my application with the ability for adding STEP files in runtime.

Is this something that you guys are going to be adding in future releases? (5.5, etc.) If so, we can wait for this release. If not, I will need to look for my own way to add STEP during runtime or just work with the glTF format

Thanks in advance!

We will work to have CAD load at runtime. But it is low prio so we cannot guarantee a version yet + not a feature you can get from UE build from source.

Thus from the time being you should look at workarounds.