UE 5.5.1 Interchange USD Material Import not checking existing materials

Hello,
at first thanks for giving USD a little more love inside Unreal Engine. After watching the Prague demonstration I tried to give it another run. Sadly I ran into several problems.

When importing an USD (in this case from Blender) materials are always imported and existing materials are not taken into consideration - Materials have the same name and are already existing.

I know that USD is experimental at this moment but this is confusing and/or a bug?

How is it possible to get the same behaviour back that the path to Materials is properly respected?

Edit: Now 5.6 (main) compiled successfully and I started from scratch to see if the same behaviour is existing in 5.6. It’s different but “worse”.

These is a folder that should be checked for existing materials.

Import looks like this:

After import I have changed materials in my Lib.


For me this feels like a pretty weird behaviour,

Thanks a lot.

I am no longer able to edit my post so here is another finding:

Unlike in the legacy USD import into level using Interchange Instances are no longer recognized and will be imported as multiple static meshes.

(Unreal 5.6)

1 Like

BUMPING THIS.

Getting the exact same issue.

I am importing cars with 400+ materials on them for visualization - and USD routinely breaks all of the material instances. Its unusable.

And to make matters worse - where FBX used to load quite fast - since 5.4 this has slowed drastically forcing us to use USD so it atleast will import.

Is this even on EPICs radar?!

Are you importing with the default USD import? or after having it loaded in the USD stage? Or are you using interchange to do your import?

Do you have a fbx sample showing the slowing down process you could share with us so we try to repro?

Bests.

Hey, thanks for your reply. Here you can download some example files with the same/similar setup:

I was experimenting a lot. The legacy FBX Import works but I switching USD to Interchange Import it was no longer working.

It felt as if the Material Section in the Interchange Pipeline Import is completely ignored and New Materials are created on every import. Yes it is experimental but maybe I just completely misunderstand the import process.

Expectation: Similar to the old process unreal checks Materials FIRST before creating a new MaterialInstance ad IF it creates a MaterialInstance it respects my Mastermaterial.

Materials that are already existing are never overwritten or altered.

Thanks,
Hartmut