Author Topic: Material Layering shader is very limited..  (Read 2402 times)

The material layering is quite limited at the moment, is there a chance to add Substance parameters support per material?

For example, I have made this Substance in Designer


But in Painter, using the layered materials, I can't access all of the exposed parameters, I'm stuck at the 'default' state of the Substance on export. So in order to visualize my materials properly, I need to go back to Designer, change parameters to a default state that I like, and export a new sbsar file.

Maybe add a system like the Mask Builder system, where for each material in the shader, you can expand and collapse and find all of the exposed parameters?

Something like the above.. kind of :]

Also, there is a bug where hotkey X doesn't invert the position of the color when working directly on the Opacity layer mask.
Last Edit: October 13, 2016, 04:38:04 am

I just saw that Wes has created a mask map exporter plugin and shared it on Share, which is essentially the same thing as using the Layered Shader, but with full support for Substance parameters, Fill layers and what not, which makes it much easier to visualize the end result you'd get in engine.  Sorry to say, but I fail to see the need for creating this shader :o

Thanks Wes for this awesome plugin :]

len


Good point.
I'm just digging into the layered shader and feel that it's unwieldy for the same reasons.
As a result, I'm writing a custom exporter for our studio now that should do what we need.
EDIT: Unless I can access the fill layer's properties (e.g. uv scale/offset) then I can't write what I was hoping too. Doesn't seem that I have access to them from script. If anyone knows how...please enlighten me.  :(
Last Edit: January 16, 2017, 08:37:34 pm

Unfortunately I can't help you with the scripting side, I'm not such tech savvy :D

Are you working on an automated tool that will read the UV coords data of the fill layers from painter and then apply it to your shaders in engine?  That's cool mate!  I had Painter open on my 2nd monitor and copy the values by hand if I needed 1:1 representation hahaha  ::)

len


Yes, that's pretty much what I'm doing.
Currently going the route of setting up the default Painter exporter dialog, letting the user interact with it, and then auto-running a post-process that parses the JSON file containing uv scale, etc.