Author Topic: Keeping substance look consistent between different output sizes  (Read 1905 times)

Hi,

I'm working on a shader for a Tatami mat texture and it involves a pattern that creates sort of a fine mesh as the base texture. I want to keep my substances output size-independent and so I choose to set it to follow the parent size. The substance looks OK at 1024x1024 but if I for example switch to 2048x2048 the mat looks overly dirty, please see the first two attached images.

There's some weathering effect applied by using an AO map and the look of the AO map changes drastically when I increase the output resolution (see 3. and 4. screenshot). I'm looking how this difference can be fixed or at least be minimized but so far I have been unsuccessful so I was wondering if any experienced user has some tips to address the problem?

It seems to be due to the pattern (with 1024x1024 you don't have enough resolution to correctly display the pattern with a high tiling amount).
If you reduce the tiling you should be able to get the same look. You can for example expose the tiling as a graph parameter.

Another thing you can do is to specify a static resolution for your pattern:
- switch your pattern resolution to "Absolute" mode (in the "Output Size" parameter of your node) and select a high resolution (2k) for this node.
- then, on the node just after this one, switch the mode to "Relative to Parent". This way it will use your graph size.
Lead technical artist
gaetan.lassagne@allegorithmic.com

Thanks for hinting out to use different resolutions internally in the substance, Gaetan! That solved half of my issue. The other half was solved by using a different blend mode for the AO map generation.

Coming to think of it, it actually seems to be a great way of achieving high quality textures by using a high resolution internally in the substance and only switch it to the required resolution (Or follow parent res.) one step before the outputs. Is that a good practice?

In any case, after testing my tatami texture in Unity it turns out that it produces far too much moire. I have to rethink how to design this texture!  :/

Usually, we set different resolutions in Substances for optimization reasons (lower resolution where we don't need full size: before you make something tile several times for example).

If you set a node to absolute (to a higher graph resolution than the one selected) it will affect the performances (depending on the node).
It's more a workaround than a way to proceed, use it with caution :)

About the moire: you can try to set a different filtering in Unity to reduce it (by selecting the output, you'll have the possibility to change the "Filter mode/Aniso level").
You can also expose the pattern tiling to modify it in Unity depending on the resolution you use, more details here:
http://forum.allegorithmic.com/index.php/topic,1295.msg5694.html#msg5694

Cheers
Lead technical artist
gaetan.lassagne@allegorithmic.com