Author Topic: UE4 - "Send to Substance" doesn't retain material IDs?  (Read 1106 times)

Title says it all really. With the Substance plugin, sending a mesh to Substance makes it have 1 "texture set" in Substance called "worldgridmaterial". If I import the exact same mesh outside of UE4 it has all the correct material IDs, same as if I look at it in UE4, so somewhere in the middle of sending it from UE4 to Substance the material IDs are lost.

Title says it all really. With the Substance plugin, sending a mesh to Substance makes it have 1 "texture set" in Substance called "worldgridmaterial". If I import the exact same mesh outside of UE4 it has all the correct material IDs, same as if I look at it in UE4, so somewhere in the middle of sending it from UE4 to Substance the material IDs are lost.

Hi,

Would you be able to share the mesh? It seems to be working for me. The correct material IDs are being transferred to Painter.

Cheers,
Wes
Head of Substance Demo Art Team
the3dninja@adobe.com
Twitter: The3DNinja

Do you get the popup that it can not find the fbx file, and thus need to export one? That was for me the culprit.
After importing a mesh into UE4 the corresponding UASSET retains no link to the original fbx, then it asks to export an fbx from the UASSET. You will then miss the material ID because this export misses the required data. If you go and check where the exported file resides you could replace that with the original file. That fixes it for me. It seems the substance plugin has rigid requirements of where the fbx files need to be placed in order to properly retain the link to the original data.

I believe my problem here was that I added the material IDs to the mesh in Blender, after initially importing the mesh into UE4, so I reimported it. Doing a reimport instead of importing it as a new asset (with a different name) for some reason does not work with "send to substance". I had to delete the asset from my UE4 and import it again, or import it with a different name and then I saw the material IDs.

Even though I got it to work, I ended up changing my technique to use color ID maps anyway because I need 1 material per mesh.