Disappearing materials in UE5 after direct link file

We have direct linked an Archicad file to an UE5 file (via datasmith). We are then applying materials to the UE5 model but it wont save those materials? Meaning we need to reapply the materials every time we reopen the file. How can we work around this issue?

What do you mean by “it won’t save those materials”?
the materials assets are no more in the project?

Do you save the scene and all the assets?

The Material assets are still there but they are no longer on the surfaces we applied them to.
Yes we save all the assets and as well the scene.

So am I understanding correctly:

  • You import your scene with direct link
  • you change some of the Archicad materials directly in Unreal? Do you change on the asset or on the static mesh component (of the actor in the scene)
  • you save assets and level
  • you restart the level and the materials are not the one you set up yourself? On the static mesh component on the actors in the level?

Do you resync from the direct link source at some point?

Is it something that used to work and does not work anymore?

it works now. we found the issue. we had some overlapping geometrys. thank you.
Now we are looking for a way that materials automatically apply on our imported geometrys.
Everytime we import our scene the geometrys are imported with the Material name from Rhino or ArchiCad but the materials itself changed to white.
is there a Way to create Materials in UE before importing the scene that these materials automatically will apply on the goemetrys when imported?
sorry if this question is confusing we are very new to Unreal Engine

If you do a file import I would recommend looking into the visual dataprep tool.
It allows you to make a dataprep recipe to process your data on import. Dataprep Import Customization in Unreal Engine | Unreal Engine 5.3 Documentation
You will find tutorials on youtube too.
There is an operation to replace materials based on their name “substitute material” and "substitute material by table Dataprep Operation Reference in Unreal Engine | Unreal Engine 5.3 Documentation
You could make a recipe that replace materials based on object names instead, there is not an out of the box function for that.

Else, with a bit of blueprint knowledge, you could do an editor utility widget that you call once your scene is imported in the level to replace materials. Editor Utility Widgets in Unreal Engine | Unreal Engine 5.3 Documentation

thank you for your help i will look into these links.