Conversion of Substrate materials into non-Substrate when migrating materials?

Hi!
When we enable Substrate in a project, UE converts all existing materials into Substrate. When we migrate some materials from a non-Substrate-enabled project to a Substrate-enabled project, the migration process converts them into Substrate.

However, when we disable Substrate, the materials aren’t converted back. Likewise, when we migrate materials from a Substrate-enabled project to a non-Substrate-enabled project, the materials are not converted.

This lack of simmetry is very strange, especially in the migration process. Obviously, UE “knows” the destination project is non-Substrate, so why doesn’t it convert them? I understand that some materials that benefit of any Substrate features can’t be converted, but UE could simply inform the user that some materials couldn’t be converted. It’s better than than no conversion at all.

This limits a lot the desire to test Substrate because we know we cannot use any of the stuff we create in the Substrate-enabled project anywhere else.

Is there some way to achieve the same result that I’m overlooking?
Thanks!

1 Like

Hello,

Sorry but yes this is a limitation: there is no back en forth conversion possible because in some case, e.g. when multiple slabs are used, there is no backward conversion possible. Thus we have decided to not invest time on that, even for the legacy conversion node in order to avoid spending time on potential bugs there.

Substrate is experimental and that non symmetrical conversion is clearly stated in our documentation. You should only experiment with substrate at this stage. Not executing cross project material creation/look-dev. Also because it is experimental, it is worth mentioning that we might change the interface without data conversion and break backward compatibility (material might become broken any release until we reach another development stage).

I hope this clarify the current experimental status of Substrate.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.