Javascript required
Skip to content Skip to sidebar Skip to footer

How to Use Material Id's With Substance Painter

I couldn't agree more. For any export to AR or webGL which only accepts one single mesh and an one full texture set this workflow needs to be addressed. It seems like community solutions exist (though this particular one didn't work for me):

https://forum.allegorithmic.com/index.php/topic,24986.0.html

Please Allegorithmic, integrate a clean solution of merging multiple UVsets in a single 0-1 space. I hate to render out Alpha PNGs and merge them manually in PS...

Yes, its very perplexing to me why this isn't done yet.

Basically, substance offers a set of several ridiculous workarounds for a problem that's technically solved, just poorly implemented in the UI.

Right now, we are required to keep two versions of the mesh in our DCC. One with material IDs, and one with stripped materials IDs down to just one. Then it requires us to export both of these, and then on import in substance, load one as paint object, other one as baking projection object, and use it to bake the ID masks. Why?

There is no technical obstacle. SP is capable of using the low poly mesh as a source to generate Masking ID texture. All it'd take is following:

A new "Use materials to generate" option which would give you two choices:
1, "Texture sets" which would work exactly as it does now. Imported polygon material IDs would be used to separate single object into multiple texture sets. Which mostly does not make sense, but someone may still need it.
2, "Masking IDs" which would use the imported polygon material IDs to bake ID mask texture, and then would import each object inside the file as a single texture set with already generated ID mask texture. The ID option in the Baking window would then be unchecked by default so that people do not fuck up their ID mask generated on mesh import when they bake other maps, such as curvature and AO.

The code is already there. SP is capable of doing all this on a technical level, but the way it is executed in the UI is really poor, throwing lots of unnecessary overhead on the artist :(

The main problem I see here is that everyone talks about merging texture sets at the end, that may indeed be difficult. But merging of texture sets is solving the problem too late. The problem is already crated at the point where a single mesh with a single 0-1 UV tile is broken to several different texture maps. That is the problem, and that one needs to be addressed.

When you are already using multiple texture sets to paint a single UV tile it is too late. The only valid reasons for multiple texture sets are following:
A: Multiple UV tiles
B: Multiple separate mesh objects

Substance Painter breaks object down to multiple texture sets even if either of the two valid reasons does not apply, and worse, it does by default. Solving the issue at the start, before the single object with single UV tile is broken into separate texture sets is much simpler and straightforward than solving it after the fact.

How to Use Material Id's With Substance Painter

Source: https://forum.substance3d.com/index.php?topic=27782.0