Home Unity

Substance designer vs. Unity Shader Graph?

polycounter lvl 2
Offline / Send Message
bigdeku polycounter lvl 2
I've been working on a lot of animations in Maya and am now switching over to doing some more interactive stuff in Unity and I am at the stage where I want a bit more visual control over the content I create. I have to make a decision about what to learn next but I am bit confused about the overlap between Substance Designer and Unity's Shader Graph. 

How much overlap is there between these two tools? Can you essentially make the same animated and game ready materials in substance designer and then import them into Unity? Or are there Unity specific Shader graph modules that one needs to learn?

I suppose, in summary, as someone who is just getting into writing their own shaders and has some experience with substance painter, should I learn both of these tools or just one? and which one would be better to learn first?

(It's worth noting that I am also creating stuff in Maya also that's not real time/interactive so being to double up on one tool for two programs would certainly be useful.)

Any advice is greatly appreciated.

Replies

  • Obscura
    Offline / Send Message
    Obscura godlike master sticky
    Here are my 2 cents. Anything animated should be done in the shader graph. These shader graphs in the game engines works similar to how substance nodes works, with one exception. The substance ones bakes down to a texture(render target), and there is a good reason for this. Most of the operations you can do in Substance Designer, are very expensive to do in real time (however, not impossible, this is why you can have instantanous feedback inside Designer), ie. blur, texture bombing, etc. You could technically create similar materials to what comes out from substacnce, simply by using the proper shader graph nodes, and some custom ones where needed. But the shader graph is re-evaluated every frame, while a substance is static. Doing animated things in a substance is not impossible, but very inefficient, because of the baking down process that happens in the background. You would end up re calculating the substance graph (including the expensive operations)every frame. So I would say there is a good usage for both. Substance for static things, and anything dynamic should be in you shader graph, because that is already re-calculated every frame, no matter what.
Sign In or Register to comment.