Substance Designer - Master Thread

13456749
polycounter lvl 7
Offline / Send Message
ZacD polycounter lvl 7
For those that do not know what Substance Designer is, it is a node based texturing package designed for next gen work flows. It's completely non destructive and non linear. It includes a real time texture preview and texture baking. It natively supports Unity, Unreal Engine 3 / UDK, 3ds Max, Maya, Modo, and Marmoset Toolbag 2.

[ame="image Designer 4 New features & Tutorial - YouTube[/ame]

Substance is starting to get popular, figured we need a place where we can share some nodes and help each other fully utilize the software. Feel free to ask questions & post and share tutorials and nodes.

Resources

Tutorials and features

- Official Allegorithmic Tutorials

- Official Youtube channel

Download shared nodes

- rogelio's substance tests

- almighty_gir's full specular map shader (physically based shader without metalness)

- Jerc's rock substance

- JedTheKrampus's 100% procedural stone brick substance

Related threads on Polycount

- Ddo or Substance Designer


If there is anything that you think should be added to the original post, please PM me and I'll update it.

Replies

  • Froyok
    Online / Send Message
    Froyok Polycount Sponsor
    Nice idea !

    The video from the youtube channel are a bit more organized on their website : http://www.allegorithmic.com/community/tutorials
  • ZacD
    Offline / Send Message
    ZacD polycounter lvl 7
  • almighty_gir
    Online / Send Message
    almighty_gir polycounter lvl 12
    ORIGINAL POST HERE: http://www.polycount.com/forum/showpost.php?p=1971970&postcount=87

    Have just created a modified version of the physically based shader for substance designer. This modified version allows you to work with a full specular map (like toolbag2, for example) instead of using the metalness workflow that the default physically based shader of SD4 uses.

    http://crazyferretstudios.com/public...nce_shader.zip

    place the contents of the zip file in: Substance Designer/resources/view3d/shaders

    Outputs you will need to use are: diffuse, roughness, specular, normal. i'll add support for cavity map later if people really want it. roughness has been left the way it is as default in SD4 (ie - black is shiny, white is rough).
  • Paradan
    so today I managed to make an fx-map that acts like an HSL node that you can feed a greyscale into. Currently it only modifies Hue, but adding Sat, and Lum is no biggie.

    I'm gonna have to dig around in the stock filters and figure out how to adjust the number of quadrant nodes according to the texture resolution. It's 2048 only for now, and its the slowest filter I've ever seen.

    Ill post it once it has some basic functionality.
  • rogelio
    Offline / Send Message
    rogelio greentooth
    Just a small tease of what is to come My thread is linked on the top :)

    sub_teaser.jpg
  • Froyok
    Online / Send Message
    Froyok Polycount Sponsor
    I'm very interested about your world-space dirt. This would also works for patterns right ?
  • AdrianST
    Does anyone know how I would go about making textures for say, yarn, fur, cloth? I feel like almost all of the tutorials I find are on hard surfaces like metal and such.

    I like stuff like the zebra skin in the substance database. Some of the cloth is nice too but I'd like to change the crease patterns.
  • rogelio
    Offline / Send Message
    rogelio greentooth
    Froyok wrote: »
    I'm very interested about your world-space dirt. This would also works for patterns right ?

    For Patterns? as in like link

    Than yes as long as you have a Normal map, AO, Cavity with it. Well you will only really need the normal for a flat texture like the brick walls etc since I was able to use the cavity node and AO node I made to get that information to use for the worldspace node.

    AdrianST- Yarn, fur, and cloth. Substance comes with some yarn/cloth Patterns but I have a feeling those are not what your looking for.

    Yarn and cloth would not be so hard since those use fiber like construction. Fur would be harder due to many different kinds of fur types but I can see both starting as an FX-node. I would open up the zebra skin one and see how it is made and try to reverse engineer it for your use. That is really how I learned substance opening up those substances and finding cool ideas.

    I would start with an Fx-node connected to several warp nodes and blur nodes with some blends and overlays.

    Fx-node- would be get the basic pattern I am looking for.

    Transformation node- for tiling properties

    warps or slope nodes- to get a more natural feel to the fur

    blend- to blend several layers of fur ontop of each other to get it more randomized look.

    Levels or histogram Scale - to get some contrast controls.

    Everything would be done in grayscale.
  • Froyok
    Online / Send Message
    Froyok Polycount Sponsor
    rogelio wrote: »
    For Patterns? as in like link

    Than yes as long as you have a Normal map, AO, Cavity with it. Well you will only really need the normal for a flat texture like the brick walls etc since I was able to use the cavity node and AO node I made to get that information to use for the worldspace node.

    Yep, this type of patterns. I was thinking about fabric tilling for character clothes.
  • Rick Stirling
    I was thinking it'd be good if we could share a few model assets and tutorials on how we go about things? Like a low+high poly model or 5, plus grabs of what we did with it and how we went about it.

    Edit - also how to recreate common surfaces, like old painted wood:

    stock-photo-light-blue-painted-wood-strips-filling-the-frame-56761519.jpg
  • almighty_gir
    Online / Send Message
    almighty_gir polycounter lvl 12
    i've had a good play around with SD, i'll be using it on my first personal project after the comicon contest is out of the way. it'll be a whole modular workflow with interchanging assets that all share the same substances for a consistent look.

    i'll be documenting as i go (kinda like i did with rogue) to show people how i did it. if people are interested.
  • Teessider
    Offline / Send Message
    Teessider polycounter lvl 5
    i've had a good play around with SD, i'll be using it on my first personal project after the comicon contest is out of the way. it'll be a whole modular workflow with interchanging assets that all share the same substances for a consistent look.

    i'll be documenting as i go (kinda like i did with rogue) to show people how i did it. if people are interested.


    I would certainly be interested Lee :)
  • Froyok
    Online / Send Message
    Froyok Polycount Sponsor
    if people are interested.
    Of course we are ! :)
  • unity2k
    i've had a good play around with SD, i'll be using it on my first personal project after the comicon contest is out of the way. it'll be a whole modular workflow with interchanging assets that all share the same substances for a consistent look.

    i'll be documenting as i go (kinda like i did with rogue) to show people how i did it. if people are interested.

    Count me in on the fun and games.
  • Computron
  • almighty_gir
    Online / Send Message
    almighty_gir polycounter lvl 12
    Cool, i look forward to doing it then. just be aware that i won't be starting until at least after comicon challenge =]
  • ultramedia
    Offline / Send Message
    ultramedia polycounter lvl 10
    I think you'll find there are a very lot of people who bought SD in the recent sales after seeing exciting videos like the gunformer template thinking that they'd be able to do that out of the box, only to discover that none of that comes with SD. There are a couple of good tutes out there, the cymourai one in particular, but there is a definite feeling of "where do I even begin with this software?" when you open up SD.

    I've managed to make a start with an old mech model of mine but still have the lingering feeling of having fallen for a bait and switch marketing pitch (ooh look at the pretty robot, buy software, ha ha no robot). Anyways, here's my old sabre mech model in SD (so far)

    20140105_090122.jpg

    And here's the (simple) substance for it:

    20140105_100106.jpg
  • Octo
    Offline / Send Message
    Octo polycounter lvl 10
    What blend mode did you use for that normalmap?
    There is a node called "normal combine" specifically for that..
  • AdrianST
    Thank you for the help Rogelio. I've gotten around to looking at the example substances for learning purposes.

    Also, I apologize if this is more of a unity question but I just got done making my first substance and when I import it into Unity it looks nothing like the expected result.

    VciGOuD.png

    The top left is what it looks like in SD's 3D view, while the bottom left is Unity. Does anyone know what the issue might be? Thanks.
  • Xazas
    Unity apparantly does not work with your normalmap being partly transparant. Blend you existing normal map over the standart normal map color and it should work as expected.
  • AdrianST
    Thanks for the reply. Unfortunately that solution didn't seem to work. I got a normal map without alphas, and even tried outputting as RGB instead of RGBA and still got the same results.
  • Xoliul
    Offline / Send Message
    Xoliul polycounter lvl 8
    Yeah the height to alpha in the default node is pretty annoying, i just strip it off with ab RGB-A split node.

    Also I just got back from a month off, I'll probably submit some stuff here too :)
  • luthyn
    Offline / Send Message
    luthyn polycounter lvl 5
    AdrianST wrote: »
    Does anyone know how I would go about making textures for say, yarn, fur, cloth? I feel like almost all of the tutorials I find are on hard surfaces like metal and such.

    I like stuff like the zebra skin in the substance database. Some of the cloth is nice too but I'd like to change the crease patterns.

    @ AdrianST,

    I've found that one way of creating fur or grass is to use a shape node, then run it though a scatter node, and adjust the pattern width and height.

    I don't have Substance in front of me right now, but when I get home I can make a mock up to show you the effect that I am talking about.

    You can also deconstruct any of the tutorial substances that come with the program. When you launch substance, go to the learn tab, and then click samples and say yes you want to install the substances.

    Just like @Rogelio said, many of these patterns that come with the program start with an FX node, however I'm also still working out how to make those efficient.

    @almighty_gir I'm really excited to see what you're going to make!!
  • luthyn
    Offline / Send Message
    luthyn polycounter lvl 5
    Ok so, this is really rough, but with time, blends, and gradients this could start looking something like fur or grass or what have you.

    So under Generators - Patterns - grab the Shape node and drag that out into your Substance editor. For this test I used the pyramid shape, but I've messed around with others and gotten interesting results.

    Then under Noises grab the Splatter node and run the Shape node through the Splatter.

    shapeDynamicsSubstance-01.JPG
    grassKindof.JPG
    weaveKindOf.JPG

    Changing the parameters of the splatter node ended up producing these two very different results. To change the length of the shape that you input into the Splatter node, adjust the Pattern Size Width and Height. You can also adjust Rotation, Rotation variation, etc.

    The node on the top tiles more than the node on the bottom which is caused by increasing the Grid Number. However as you can see, this also increases the time that it takes to render the node.

    SO you can do a lot with the splatter and shape nodes, its just getting them to work efficiently that is the trick.

    I hope that helped or was useful in some way :).
  • Rick Stirling
    OK, I've had several hours with this over the last week or so, and I'm loving it.

    I recommend running through all the Allegorithmic tutorials to get a basis on adding textures, baking models and creating AO/Curvature maps.

    Once you've got a curvature map, try the Edge Wear filter, and then open the source of that filter and study it.

    When you know what that does you should be able to figure out how to create a filter that does dirt build up in creases.


    Now, I'm going to go a bit different here and build up a peeling painted wood effect using a single diffuse texture.


    I'll start with something VERY simple - taking in diffuse wood texture and getting a basic diffuse, spec and normal set up.

    simple_network.png

    It's indeed very simple:

    * The diffuse input goes to the diffuse output
    * The initial normal map is done by using the Normal node to convert the diffuse to a normal map. It's not a great map, but it's a starting point.
    * The spec has had a little more work - I've used a few levels to separate the planks via the joins. I've kept the contrast as it'll be useful later, then levelled that to make it much darker for the spec.

    Oh, incidentally that grayscale conversion node lets you do some nice channel mixing to help the separation:

    finding_planks.png


    Anyway, there's a basic network, next we need to make the normal and spec maps better.



    I've found that a nice way to add extra detail to the normal maps is to use a blurred clouds or grunge generate, convert that to a normal map and blend it with the normal map that was created from the diffuse. I've also used the plank mask to give more definition:

    extra_normal_details.png

    extra_normal_details_object.png



    To get a little more interest in the spec I've overlaid a grayscale+levelled version of the original diffuse, and then blended in a little bit of noise to break up the surface a little (like the normal maps did):

    extra_spec_detail.png
  • luthyn
    Offline / Send Message
    luthyn polycounter lvl 5
    @rick stirling this is looking really cool so far!

    The only thing I would say would be to be careful how often you use the actual 'grunge' nodes because they are very heavy. The one you have going into your normal map takes 311ms to process, so you can imagine if you have a lot of those in your substance it can really slow things down.

    What I have found is that a lot of those 'grunge' nodes are made from the clouds 1-3 nodes. When you get a chance open up that grunge node and see how they went about making it.

    Keep up the awesome work!
  • rogelio
    Offline / Send Message
    rogelio greentooth
    Looks cool man I would try warping a little bit of the planks to give it a more organic feel using either warp or direction warp using the the heights or another noise. The fine detail looks nice. The roundish bumps are not working so well a little bit less or maybe masked.

    What looks odd is that the bump goes across all planks try using a some masks and shift the same noise with transformation 2d node. that way you can get the bumps offset on each plank before being put ontop of the height or normals.

    I agree with the grunge those are too expensive to be of any good. I think those grunges can be done cheaper, but I have not really looked into them I rarely use flat grunge overlays on my textures just looks flat.

    One huge important thing is start with grayscale if you do get a rgb information and your just using a grayscale information to create your masks or effects keep them as grayscale or quickly do a conversion so it is more optimized. It is also easier to figure out what could be going wrong.

    Also remember you have overlay and screen those are two node functions not in the blend node... Idk why substance guys did not include those in the blend node but those functions are in separate nodes and will help in blending height maps together.
  • Rick Stirling
    Cheers all!

    I do know that the grunge maps are heavy, I'd actually used clouds previously by the effect isn't as nice as the grunge. Still, there's a project for us - Cheap Grunge.

    Rogelio, yeah when it comes to the blend node I also wondered why they didn't have screen and overlay built into the blend node. You can see that I did use the blend node to mix the flat spec and the desaturated diffuse, and the result I got in this case was nicer than most of the other Blend node modes.

    Incidentally, open up that Overlay node and have a look at that network....

    Another thing that I've found is that I often get better resusable grayscale levels if I use two node in sequence. Node 1 is my ball park adjustments, Node 2 is my fine tuning. It's not so important if I expose the nodes and give them sensible labels, but in a network it works better for me.
  • Xoliul
    Offline / Send Message
    Xoliul polycounter lvl 8
    Grunge maps should almost always be rendered at half or quarter res and then tiled back to full res. They never really stress this in the tuts or videos, here's some screens on how i do it:

    First you need a good grasp of Absolute vs relative resolutions of a node. Each node can have its resolution controlled in 3 ways:
    • Absolute or fixed, never changes. You should only use this for a full documents, pretty much never on a node except in rare, rare cases
    • Relative to input. Simple, uses whatever resolution gets fed into it. Often works well, but can have a cascading effect. If you drop in a 2k bitmap in a graph intended for 1k , the 2k will cascade on until the end unless you interfere.
    • Relative to Parent. Relative to whatever is the parent graph. This will mirror the fixed resolution set when you click on an empty spot in the graph. Allows for one single, central global resolution control. Safest bet in most cases, it's too bad this isn't the default. Also this is your only choice when manufacturing nodes to share with other people.
    Both relative modes support multiplier on whatever they are relative to, such as "half of the parent res", "double the input res" etc...


    So here's what I do for noises, compared to the single, full res method:


    o2oXGUa.jpg

    Keep in mind, even though it's not identical (that's not the point of a noise though, to be "exact") you have much more control over the multi-blended version than the single node one. Single node has 1 single control, while there's about 12 things to expose in the other one (3 scales and rotation, blend mode and opacity). You'll get a lot more mileage out of it, at a lower cost. I tend to pack these things up in my own "cheaper" versions of their noises, since the standard ones don't nearly offer enough control for me.
  • punkvideo
  • Xoliul
    Offline / Send Message
    Xoliul polycounter lvl 8
    Rogelio, yeah when it comes to the blend node I also wondered why they didn't have screen and overlay built into the blend node. You can see that I did use the blend node to mix the flat spec and the desaturated diffuse, and the result I got in this case was nicer than most of the other Blend node modes.

    Incidentally, open up that Overlay node and have a look at that network....

    I think it's because they can't fit all blend modes into their "atomic" nodes as quick, simple, single tick instructions. Some blend modes actually have IF conditions in them (like overlay).

    That said, their overlay is pretty complex and slow. I made a cheaper one that looks 99% the same. I'll see if i can share it.
    punkvideo wrote: »
    my test:
    (cut)

    Nice! Here's a thought: do the bricks proecdurally as well (instead of bitmap based). There's some really good tiling brick generators in there, you can do some cool stuff with those.
  • Rick Stirling
    Xoliul wrote: »
    Nice! Here's a thought: do the bricks proecdurally as well (instead of bitmap based). There's some really good tiling brick generators in there, you can do some cool stuff with those.

    I'd love to see some examples, so far all the bricks I've done in it look like shitty procedural textures. I'll need to start with breaking up the uniformity of the hard edges.
  • Xoliul
    Offline / Send Message
    Xoliul polycounter lvl 8
    Here's a crop from a test I did:

    WEg6KQa.jpg
    It's some warping, blending, blurring and contrast adjustments on a grayscale mask of the edges. This was fully procedural (i wouldn't recommend trying to go full procedural for a marble pattern though)
  • DInusty
    Offline / Send Message
    DInusty polycounter lvl 10
    Some cool stuff im seeing here. im using substance to create some materials ill be able to use similar to base mats that were used on the car the team had demoed. with that said im not looking at making the materials cheap but i want them to look like since they would be baked down in the end anyways. but i thought you guys might like them.

    tintable Leather
    tumblr_my5d9dKS8k1qa0knlo2_1280.jpg

    Rust
    tumblr_my5dh0jteW1qa0knlo1_1280.jpg

    more to come
  • Octo
    Offline / Send Message
    Octo polycounter lvl 10
    Here's a tiling gold coins material, entirely procedural

    goldpile2.jpg
  • luthyn
    Offline / Send Message
    luthyn polycounter lvl 5
    @octo that looks pretty awesome.

    Did you overlay a clouds or some subtle big shapes into the height map to get the coins to look like they were piling up at different heights?
  • Octo
  • chrisavigni
    Offline / Send Message
    chrisavigni polycounter lvl 6
    Been playing around with SUBSTANCE and here is my attempt at some procedural bricks. It needs improvement, but seems a good start! What you guys think?
  • Rick Stirling
    Its a good start, but it still looks very procedural - the same issues I've been having.

    I'm trying to replicate something more like these:

    bricks-texture-design1.jpg


    preview.jpg


    brick-seamless-orange-backgrounds-wallpapers.jpg
  • Xazas
    It is so great to see that there is a community building up around SD. I love to see what people come up with.

    @Octo
    This looks awsome...I suddenly have to think about a movie I recently watched. Something about small people and a big dragon...

    Shooting in one of my attemps to far. I like the runtime manipulation of Substance, I am working on a horror level with a Silent Hill esque transformation of the textures. WIP so far:
    j9x4.jpg

    dr3.gif
  • chrisavigni
    Offline / Send Message
    chrisavigni polycounter lvl 6
    I agree Rick, too procedural. I need to play around more too see how far I can improve it!
  • Octo
    Offline / Send Message
    Octo polycounter lvl 10
    I tried to recreate the last example that Rick posted..
    A bit more tweaking and it could look quite close I think.

    Bricktest2.jpg

    Update

    Bricktest_update2.jpg
  • Rick Stirling
    Indeed, much closer!

    The bricks are too rough, and it's not got quite the amount of colour/saturation differences in the brick, but it's really close.
  • chrisavigni
    Offline / Send Message
    chrisavigni polycounter lvl 6
    Awesome!
  • Jerc
    Offline / Send Message
    Jerc polycounter lvl 10
    Cool stuff guys.
    I guess I'll share some of my filters and textures too.
    This one is some kind of rock texture generator, you can easily swap out the normal map and AO bakes for it to adapt to new geometry.

    The substance: https://dl.dropboxusercontent.com/u/9804576/RockSubstance.7z
    The mesh: https://www.dropbox.com/s/3bg0c4nneau266g/Rock.FBX

    jjfjyj7.png
  • ZacD
    Offline / Send Message
    ZacD polycounter lvl 7
    Added your substance to the orginal post. I'm hoping we get a large set together in a few months that we can zip up to make a large library. If anyone has any requests or suggestions for substances, feel free to post requests.
  • electricsauce
    Offline / Send Message
    electricsauce polycounter lvl 4
    Here's a mask separator from the pod tutorial.

    Also, an awful attempt at grass, complete with png. (I don't know how to include linked textures in an sbs)
  • Jerc
    Offline / Send Message
    Jerc polycounter lvl 10
    For those of you trying the grass thing, here is a method that works pretty well.
    I'm using the gradient pattern in the fxmap but you could replace it with a custom grass blade.
    The noise I used as an input acts as a flow map for the grass, you can replace it by anything else to create crop circles or what not :)
    It could use some more randomness on the bigger blades though now that I look at it again.

    https://dl.dropboxusercontent.com/u/9804576/Grass.sbs

    LvQ07uul.jpg
  • Jerc
    Offline / Send Message
    Jerc polycounter lvl 10
    Another filter from my dear colleague Nicolas Wirrmann.
    This one is an fxmap that acts like a multi purpose image processor. You can input any image and a mask, and put your custom function in the bottom quadrant node.

    Useful for creating mask driven effects such as hue shift, levels, etc.

    https://dl.dropboxusercontent.com/u/9804576/perpixel_function_template.sbs
    https://dl.dropboxusercontent.com/u/9804576/hue_from_input.sbs

    aRCi0lJ.png
  • ValN84
    Offline / Send Message
    ValN84 polycounter lvl 3
    I took advantage of the Steam sale during the holidays and got Substance Designer 4 and I LOVE it.
    Here are two muscle cars I did a couple of years ago. I had high resolution models for both and I used them to bake normal maps and ambient occlusion maps in Xnormal. Then I used these maps in Substance Designer to bake world space and curvature then used all of these bakes as inputs to generate the output textures (albedo, roughness, metallness) which were then used for the final render in Marmoset Toolbag 2. This was also my first time playing with Marmoset Toolbag 2 and PBR textures.
    Took me about two days to create the graph with little prior knowledge of Substance Designer mostly because I was testing all the nodes to see which looked better. Each texture set then took something like an hour as I only had to tweak some parameters to make the various details look ok on each car.
    I'm quite confident Substance Designer will change the way people texture... forever :)

    Here's the first car, a 69 Chevelle which seems to have been quite neglected but very much used.
    p2IVrHm.png

    For the Cuda, I saved two texture sets to exemplify how the same graph can bake both clean and used/dirty textures. Ignore the similar wheels, I forgot to also save a dirty version for those.
    4589xYl.png

    Finally here's a screenshot of the graph I made. On the right are the parameters I exposed to control the wear ad tear.
    A9ViLfG.png

    PS: I'm going to start my own thread as soon I get the number of posts required to get permission to do so. Watch out for the link in my signature as soon as it's available.
13456749
Sign In or Register to comment.