Home Adobe Substance

Substance in UE4 Vertex Painting

Hey polycount.

I was wondering if anyone had any experience and/or knows if it is possible to blend substance textures within Unreal 4 engine. For example, if I created 3 separate substances, each with parameters exposed that I can manipulate within the Unreal engine, and then created a vertex blend material with RGB channels for a total of 3 substance materials painted on the same mesh, is this possible?

So far I have it set up like in this quick Epic tutorial https://docs.unrealengine.com/latest/INT/Engine/UI/LevelEditor/Modes/MeshPaintMode/VertexColor/MaterialSetup/3Way/index.html and I have the texture painting working fine. I also have 3 substance materials with parameters exposed that I can individually change. The problem I run into is being able to combine the 3 substance materials into one Unreal material, and then still be able to change all their parameters individually.

For example... I have a metal material that I want to be able to change the roughness of, a paint material that I want to be able to change the color of, and a water material that I want to be able to change the normal intensity of, and I hope to be able to paint all three of these different components on one mesh. Do you guys think this is possible? Right now I have the base substance metal working and I can change the roughness, and I've been able to vertex paint the paint layer and water over top, but the paint layer and water no longer have their parameters accessible...

I just had a thought, am I better just combining everything into one substance material? Pretty lost here... Thanks for any help or alternative ideas!

Replies

  • Froyok
    Offline / Send Message
    Froyok greentooth
    Once generated, Substance Textures are the same a regular Textures in UE4, so you can easily blend them in a Materials are you are describing.
  • vassili_zaytsev
    I guess my question is... when you import a substance material, it creates (in my case anyways) the four maps/outputs I have, a Substance Graph Instance, a Substance Instance factory, and a material.  I'm just a bit lost when it comes to whats connected to what... So the substance graph instance allows me to change the parameters of one instance of the material, but in order to set up the blend material, I'm not quite sure how to make sure the substance graph instance parameters come along with the second and third materials that I am blending.

    Another question is, for every unique variation of a substance designer texture, is it going to recreate all 6 of those items? (The 4 output textures, the material and the substance graph instance) And is that not expensive? 
  • Jerc
    Offline / Send Message
    Jerc interpolator
    You want to use the outputs directly in your blended material and discard the material automatically generated when importing the substance. You'll have to blend each and every channel in your material using the vertex color.

    If you create new instances of the substance, yes the a new batch of outputs will be generated and they will be added in video memory when used so make sure you only use multiple instances when needed.
  • vassili_zaytsev
    Awesome thanks so much i got it to work! So substance is pretty awesome but im assuming that making dozens of different minor variations of substance textures for individual floor tiles is kind of overkill and id be better of building  some macro variations into the ue4 material to break up tiling and using substance variations more sparingly?
  • Jerc
    Offline / Send Message
    Jerc interpolator
    Yes. What you could do is generate different variations everytime you load the level of that kind of stuff, if you want to keep the substances live at runtime.
Sign In or Register to comment.