Author Topic: Creating Template, exposed parameters show no effect  (Read 3053 times)


I am creating a substance to be used with different models and maps within unity

My approach is to create a template by putting together a graph and replacing the bitmaps by "image input" nodes

the graph is simple (for testing purpose):
- 4 image inputs for diff, spec, normal, occlusion, that make up material 1
- a basic pseudo metal material 2
- a paintwear node, that masks material 2

I exposed all paintwear attributes and published the substance

when I import the substance to unity, everything looks fine (afaik), I am able to select the input maps, they show up on the material, but the paintwear attributes have no effect at all.

when I replace the image inputs in substance with the same bitmaps, that I use in unity, the substance works fine.

here is a screenshot of my substance:

and here is a link to my substance file:

thanks for your help!

I have added the sbsar file to the zip file, any help much appreciated!

one more note: the graph works in substance player as well; I have also created a pbr material (more or less same graph), that works in SD and SP...
only Unity won´t comply...

I do understand, that PBR currently doesn´t work in unity without dedicated shader; that´s why I have built the test graph posted above, for unity standard

plz help :(

I really would appreciate some help on this substance!

Hi michael,

If everything works fine in Substance Designer/Player, and not Unity (with the same textures in input) it can be due to a difference between rendering engines. In Unity, the integration use the CPU to generate the Substances (SSE2), in Substance Designer/Player you probably use the GPU (Direct3D).

Can you please try to switch the engine in Substance Player (click on the "gear" icon at the top, and select "SSE2" instead of Direct3D. If you get the same behavior you have in Unity the rendering engine is the source of the problem.
You can also use "Tools/Switch engine" (or F9 shortcut) in Substance Designer to use the CPU (SSE2) and be closer to the look you'll get in Unity. Once you've changed the rendering engine, use "F5" shortcut to "clear the cache".

Quick feedbacks regarding your substance (nothing very problematic, just feedbacks :) ):
- it seems the "Intensity" parameter of the curvature filter is low. I tried it on my side with some inputs I have, and the result of the "Paint Wear" filter was black because of the low value of the curvature input. Maybe you should expose it/set it to a higher value?
- in the "Paint Wear" filter, "Variation" parameter, you use a "Get Float" which is empty. I guess it should be set on "PW_variation".
Lead technical artist


thanks for your reply! I switched the engine in both SDesigner and SPlayer to SSEE2.
The paintwear is showing up now - I had one mistake in the graph: the image input size was not set to absolute (2k) - that´s why curvature didn´t detect much information; together with exposed and increased curvature intensity, the effect is showing up now.
So thanks for your advice!

I am having one constant issue with my normal map, though

I have posted this in another thread as well:,1100.msg4653.html#msg4653

the generated normal map looks different than the input normal map, but there shouldn´t be any change at all; it´s just an image input node

here you can see the difference:

Glad it helps! I just posted a reply on the other topic.
Lead technical artist

SOLVED, thanks a lot, here´s the link to the other thread:,