Author Topic: Re-merge Texture Sets?  (Read 57833 times)

Hi Wes,

I'm surprised there is no button that says "combine maps into one" in Substance Painter. Combining material maps is a crucial to good game performance and should be considered a default part of the process.

If this does not become a feature soon, I would like to see a tutorial video outlining the required steps to get a small models to be divided into multiple texture sets and then combined into a single texture set at export.

I do not want to paint every texture manually and your written explanation of the process is not working for me, your description is too advanced for me and this seems like a basic (missing) feature.

+1. Please allow us to merge the texture sets on export.

Hi guyz,

I would like to understand what is the goal of merging texture sets at export, and especially what is the workflow behind it:
- why do you need to create several texture sets, if you know that in the end you want to export a single one?
- why don't you make only one texture set from the beginning?

Please understand I am not criticizing anything, I just try to understand why it seems so crucial for some people :)

Thanks for your help!
Head of Product Management

When I'm using other software in my workflow I'll often have material groups on my model. These are great for easing cross-application material transfers but whenever I need to use Painter I have to copy the model to a new file, assign a solid color to each material group, bake out a color ID, and then delete all the material groups before export. There may be a better way of doing it but as it stands it would be far more convenient to be able to export the model with the material groups and use the texture sets as the equivalent of the color ID masks.

Hi guyz,

I would like to understand what is the goal of merging texture sets at export, and especially what is the workflow behind it:
- why do you need to create several texture sets, if you know that in the end you want to export a single one?
- why don't you make only one texture set from the beginning?

Please understand I am not criticizing anything, I just try to understand why it seems so crucial for some people :)

Thanks for your help!
I don't tend to do it often, but when I do, I only use multiple sets when I have very complex stuff that I need to toggle on / off. and since painter doesn't support any other way of hiding geometry, I need to create sets, but then re-merge them into 1 texture.  Unless there is a better solution?

Hi Nicolas,

1) You may be making a model targeted at end users, who want to be able to substitute their own textures.
e.g. by putting their favourite metal shader onto all the metal bits without having to worry that you've mixed metal and wood in the same texture set.

Or another example - if your human character has a separate material zone for the hands, then the end user can dump a procedural leather onto them to give the character gloves - can't do that if the hands are the same material as the result of the body.  Similarly the end user may want to swap out the texture on the fingernails or teeth without that changing the skin texture.

2) If your end application's shaders aren't the same as Painter uses, you may need to be able to treat different sorts of materials (wood, metal, glass) differently in then end application.  That's easiest if they are separate materials.

3) You may using a purchased model that already has multiple texture sets.  It's an extra step to create a stripped down version.

4) Since we can't hide geometry, we need to use separate material zones if we know one piece of geometry will get in the way of painting another.  Same goes for if having all the geometry visible at once slows the program down.

5) Painter can use an ID map as a mask to put multiple materials in one layer stack, but the easiest way to create the ID map is to assign coloured materials in your modeller.  Once you've created them, it's tempting to leave them in rather than maintain 2 versions of the model.

6) If you create stripped down versions of the model with fewer materials then this creates file clutter and creates a dilemma as to whether to keep the extra files, or throw them away and risk needing them again.

Epi

Last Edit: June 16, 2016, 09:24:58 am

zbrush can export to fbx setting polygroups as materials. its very easy then, import in painter and use the textureset as layers.
This is a faster workflow than exporting an ID map, plugging it in the right slot and so.
An alternative that would work for me is if painter have a option on import to automatically generate the ID map and merge the materials automatically


Hi guyz,

I would like to understand what is the goal of merging texture sets at export, and especially what is the workflow behind it:
- why do you need to create several texture sets, if you know that in the end you want to export a single one?
- why don't you make only one texture set from the beginning?

Please understand I am not criticizing anything, I just try to understand why it seems so crucial for some people :)

Thanks for your help!
Last Edit: June 16, 2016, 01:21:13 am

An alternative that would work for me is if painter have a option on import to automatically generate the ID map and merge the materials automatically

I agree.
Sometimes the easiest way would be, when setting up the project, to be able to tell Painter "this, this and this material are all the same layer stack".

Hi Nicolas,

I support this feature being added for a number of reasons:

1) as people described, setting different materials is the only way to conveniently hide geometry while painting, this is especially important for moving and intersecting parts that are otherwise not easy (or possible) to paint.

2) from a workflow flexibility perspective it is a "no brainer" - whatever makes you able to take a shortcut in your workflow from other applications will make SP in the flow so much stronger, especially if you get input in a supply chain that you do not have to "prep again" for the next step - here texturing

3) It cannot be hard for Allegorithmic to implement in the baking process as you have all the information in the stack to merge, alternatively a tutorial on how to do it might be worthwhile (either for the Photoshopping or the use of SD - although for some of us this is additional purchase for a simple feature, not sure if this matches value-for-money)

4) I think it was recognised by some of your colleagues 2 years ago (see 2014 post in this same thread) that this is a useful feature.

At least I went into texture exporting and said "Whut? Where is the bugger?" and then went into the forum to find that it is not even a feature yet. Luckily for you I bought the license two days ago  ;)

I have a workflow question if you guys don't mind (as this is not my way of working) :

How many texture set do you want to merge ?
Is that all of them as one set of bitmap ?
Or do you guys merge multiple materials in multiple groups ?
Don't forget your log file. It can be exported from the Help menu of the software.
-----------
Fabrice Piquet aka Froyok. Product Manager, Technical Artist and Documentation at Adobe.

right - I am looking for such an option since a looong time...

Me, I´d like to have this option to merge all texture-sets into just on set. Like there is still no other way, than "hide by texture-set aka material" - but I do not want to have like 8 2k res texture sets for a game-asset (assume you have metal, rough, color, it is 8x3=24 textures), so I have to combine all sets into just 1 2k res texture (1 metal, 1 rough, 1 color) to assign to a model in game engine... when having like 20 props, that´s like combining a lot of textures by hand, which takes long time, doing dull stuff.

I was also looking for an option like a ''Merge maps'' button in the Export Textures window.

My asset has 2 distinct materials: concrete and rusted metal. I exported it to have 2 texture sets, because some parts needed to be worked seperatly. It's faster than creating an ID map,  easier to split the type of material, the only problem is that we need to merge them manually afterward.
Last Edit: June 22, 2016, 05:28:51 pm

@Froyok: My current project is about merging 6 texture sets. The initial reason for the workflow decision was convenient hiding of parts of the mesh for painting on hidden or overlapping surfaces that are otherwise hard to paint, but have the final texture arriving at one large asset for a joint UV atlas. If you would have the option to temporarily hide geometry, I could bring a mesh in with one material only and still conveniently paint.

I read that hiding by material is one such option - if you could cross link to an appropriate tutorial on how to do that, this would be great and a fix for future projects. Still, I think having a merge option available would be a no-brainer  8)

@all: For the others: as a work around without Substance Designer, this is a possible approach that worked for me (with caveats):
  • create an ID map for each texture set in SP as described earlier in this thread
  • export all texture sets pluis the ID map (you can add the ID map to a preset you are using in the configure tab, there is a YT video on how to do such things, if you do not know - make sure you define the ID map to also export an Alpha channel = RGB + Alpha
  • for each texture variant (eg. BaseColour, Height, Metal, Roughness) in Photoshop do the following
  • create double the amount of layers as you have texture sets (thus creating a double layer per texture set)
  • put the ID masks for each texture set on the bottom layer of each two-layer stack
  • put the texture variant per texture set on top of each of the ID mask layers (match them by name to make sure you do not mix it up)
  • on each top layer texture variant (not the ID) choose "create clipping mask" that is targeting the respective ID layer



This way you can isolate all the different textures by their ID and then export them for a texture variant. Downside: a lot of manual work; you have to do that for each texture variant (in PBR this means for at least Diffuse, Metallic, Roughness, potentially Height, but also for all other channels you created), you will not have any bleed in your atlas - this can lead to seams being visible. If you have that, I recommend to fix the diffuse layer manually in the atlas.

Biggest issue: you cannot easily make changes without repeating the whole thing. But at least you can fix the workflow in most cases and you can also use freeware such as GIMP if you do not own a CC license. There might be better ways. Best would be SP to give us this option  ;D[/list]

Hi guyz,

I would like to understand what is the goal of merging texture sets at export, and especially what is the workflow behind it:
- why do you need to create several texture sets, if you know that in the end you want to export a single one?
- why don't you make only one texture set from the beginning?

Please understand I am not criticizing anything, I just try to understand why it seems so crucial for some people :)

Thanks for your help!


Hey man! I've just started using Substance, and it sure seems to be a great program, but this issue was one that surprised me I gotta say :p
Anyways, here's a description, basically, I want to be able to work on geometry specifically and being able to hide all the other geometry when working. It exactly what texture sets give me. Imagine working on something that is behind something else and not having to do that work in the UV-view (which is my current work around)
The texture set divide is great for sorting stuff into layers, and being able to solo the sets etc is great. But it all becomes kinda worthless when in the end  Painter "forces" you to save all the sets out on separate textures, as I'm sure you guys are aware, in games we usually go with 1 texture per asset on say, environement stuff :)

So yeah, some kinda merge all texture sets into one texture but still being able to use the divided texture sets while working would be great for a future relase! ;D

Small note: My current work-around is exporting the mesh as one texture set, and when I need to paint behidn something, I use the UV-view, which is OK and works fine, but hey, when you have that fine 3D-painting ability, I wanna use it as much as possible xD
Last Edit: June 22, 2016, 02:00:00 pm

 :-\ It's a good feature to be able to split the object between UV, but as Sasha said, merging them manually is taking some time.

Maybe having some control over the "bleed" of the texture around it's own UVs. It can be turned on and off but being able to decide the number of pixel of padding would be sweet! It would make it easier to merge them manually afterward.

OR

Being able to sort UVs by a number or any variable.
Say you have 5 UVs sets, but you want to merge some of them.
UV set 1, 2 and 3 could be "grouped" together, at the export or before, so their texture takes priority over the bleed (if you want to keep it turned On) of the other textures' bleed in the UV set.
Then you can either leave the 4 and 5 alone or group them together.

Not sure if I was clear o.,o'