PIPE­LINE TECH­NIQUES: Per­fect lay­er­ing in Sub­stance De­signer

Eric Wi­ley’s guide to mak­ing beach de­bris ma­te­rial

3D Artist - - CONTENTS -

In this tu­to­rial we will be learn­ing var­i­ous meth­ods of lay­er­ing height maps in Sub­stance De­signer and the tech­niques I use for mask­ing lay­ers. While Sub­stance De­signer ex­cels at nat­u­ral ma­te­ri­als it can be very chal­leng­ing to cre­ate and layer com­plex man-made ob­jects con­vinc­ingly while also try­ing to keep any clip­ping and stretch­ing to a minimum.

I will show how I cre­ated this beach de­bris ma­te­rial en­tirely in Sub­stance De­signer. I will cover shape cre­ation, tile sam­pler lay­er­ing and how I use flood fill and masks to cre­ate or avoid over­lap. I will also dive into how I layer dif­fer­ent types of ob­jects and how I blend each layer. Although it is more time-con­sum­ing, com­bin­ing more sim­ple lay­ers one by one is the best way to avoid the in­ter­sect­ing height map is­sue that might turn most peo­ple away from at­tempt­ing a graph like this.

One of my main goals is to keep the place­ment as pro­ce­dural as pos­si­ble and only hand-place se­lect graphs when we need to. Un­like most nat­u­ral ma­te­ri­als we will have many more types of ob­jects and even some with mul­ti­ple ma­te­rial types per ob­ject, be­cause of this it will be es­pe­cially im­por­tant to keep our masks up­dated and or­gan­ised through­out the lay­er­ing process. This tu­to­rial will pri­mar­ily fo­cus on build­ing your height map and creat­ing masks which you can then use to cre­ate your Albedo, Rough­ness, Metal­lic and Nor­mal maps later on. For this tu­to­rial I am as­sum­ing that you have an in­ter­me­di­ate un­der­stand­ing of Sub­stance De­signer and are fa­mil­iar with blend­ing and the Tile Sam­pler node.


Cre­ate your ob­ject graphs Look­ing at ref­er­ence, I chose about 30 pieces of de­bris to build for this ma­te­rial, each within its own sub graph. This will al­low for more flex­i­bil­ity down the road if I want to go back and add de­tails to a spe­cific part. It also keeps our main graph cleaner. At this stage I am think­ing about how the height maps re­late to each other and also mak­ing sure I cre­ate a va­ri­ety of types and sizes. I’m not go­ing to go too deep into creat­ing shapes here, but my favourite tools are the Shape, Trans­form, Curve and Bevel nodes.


Ar­range­ment and scale Be­cause we will be dis­plac­ing a tex­ture based on a height map, it’s im­por­tant to ar­range your ob­jects in a way that won’t draw at­ten­tion to the lim­i­ta­tions of a dis­placed tex­ture. As a ba­sic rule I tend to have large, half-buried ob­jects on the bot­tom and work my way up to smaller, thin­ner ob­jects on top. At this stage I am de­cid­ing on the scale I want and think­ing about how I want my fi­nal com­po­si­tion to look. Re­mem­ber un­like nat­u­ral forms, man-made ob­jects have a spe­cific size so we can’t rely on Scale Ran­dom to add va­ri­ety.


Start at the bot­tom My work­flow in­volves us­ing Tile Sam­pler nodes to scat­ter my shapes and then blend­ing them to­gether layer by layer. Keep things sim­ple by plug­ging in one type of ob­ject per tile sam­pler and spac­ing them out. I tend to keep my Amount and Po­si­tion Ran­dom very low. This will keep ob­jects within a tile sam­pler from clip­ping into each other and also al­low us to use flood fill for dif­fer­ent an­gles and val­ues later on. For smaller shapes this level of con­trol isn’t nec­es­sary, but with big­ger ob­jects where clip­ping will be ob­vi­ous this is the best op­tion.


Cre­ate over­lap The most ba­sic way to cre­ate over­lap in De­signer is to con­trol the val­ues of two lay­ers and use a max (Lighten) blend or the height blend node. To achieve a more nat­u­ral look you want ob­jects to look like they are lean­ing on each other and slanted at var­i­ous an­gles. This way you might get a wooden board that has one end above an ob­ject and the other end un­der another. The flood Fill to Gra­di­ent Node is per­fect for this. You can ei­ther add or mul­ti­ply this gra­di­ent to your ob­jects de­pend­ing on what you are go­ing for. To make it even bet­ter, flood fill will ran­domise with every change so you can quickly find a look you like.


Mask­ing and ma­te­rial ID each time I blend a layer with another I cre­ate a mask us­ing the height Mask out­put from the height Blend node. Many ob­jects will be partly ob­scured by the end and we will need these masks to dif­fer­en­ti­ate our ob­jects through­out our ma­te­rial. Be­cause I have so many ob­jects I de­cided to cre­ate a ma­te­rial id map with my masks as I went. This will al­low me to use the Colour to Mask node later to make quick selections and I can also in­clude small metal­lic de­tails in this map from com­plex ob­jects.


Think about value Since I’ve al­ready used flood fill on many of my lay­ers al­ready, a great way to get more va­ri­ety out of each layer is to use the Flood Fill to Ran­dom Grayscale node. On lay­ers that we’ve been us­ing the flood fill al­ready this is es­pe­cially easy to set up. Once I blend each layer’s ran­dom greyscale by each layer’s height Mask I should have a tex­ture where every sin­gle ob­ject is a ran­dom value and masked cor­rectly.

This plugged into a gra­di­ent map is a great start­ing point for our Albedo map later on.


Use the mask in­put For cer­tain ob­jects like in­tact bot­tles or cans you will want to im­ply that they are sunk in the sand and not clip­ping through the ob­ject be­low it. You can do this by adding to­gether the masks of the ex­ist­ing lay­ers and then in­vert­ing it and plug­ging it into the mask in­put of the Tile Sam­pler. Be­cause of the ran­dom­ness with tile sam­plers it’s a good idea to cre­ate an ex­tra buf­fer in the mask just to make it even less likely that an ob­ject will ap­pear where you don’t want. This can be achieved by us­ing the edge De­tect node on your mask.


Watch your heightmap As you work re­mem­ber to con­stantly check your height map in the 3D view with tes­sel­la­tion. Your tex­ture will al­ways look best from above so be sure to look at it from mul­ti­ple an­gles to check for bad clip­ping or stretch­ing. The down­side of man made ob­jects is that you of­ten have straight edges and harsh el­e­va­tion changes. You can min­imise stretch­ing by slightly blur­ring your height map af­ter the fact. If a blend is push­ing your val­ues to white, us­ing a his­togram Range node can get your height map back within a work­ing value range.

A great way to get more va­ri­ety out of each layer is to use the Flood Fill to Ran­dom Grayscale node


Lay­er­ing flex­i­ble ob­jects Say you have a flex­i­ble ob­ject like a rope or a cloth. Start by blur­ring your height map with a Blur hq Greyscale and blend­ing (copy) that on top of the un­blurred ver­sion. This blurred blend is masked by the sil­hou­ette of the ob­ject you are about to add. Your heightmap should now have blurred shapes in it. I then pipe that and the new layer into a blend (add) and ad­just the value to what looks good. The in­ten­sity slider in the Blur hq node will make your ob­jects ap­pear more or less flex­i­ble while the ob­ject un­der­neath main­tains its form.


Fin­ish­ing touches While the Tile Sam­pler node is ex­tremely pow­er­ful and will get you most of the way there, don’t be afraid to add the oc­ca­sional ob­ject by hand with the trans­for­ma­tion 2D node. This is es­pe­cially use­ful if there is an area of the tex­ture that you want to add in­ter­est to. Ro­ta­tion is best con­trolled out­side the trans­for­ma­tion 2D node as ro­tat­ing this node can break tiling.


Mak­ing ev­ery­thing work to­gether Once you’re happy with your height map you can make ev­ery­thing gel to­gether by mak­ing the sand or dirt creep up the ob­jects and gather in the crevices.

I re­ally like us­ing Dust node for this but you can also use the HBAO or Nor­mal to height hq nodes. Com­bine this mask with your orig­i­nal sand layer mask to cre­ate sand that is col­lect­ing in all the cracks and corners.


Fi­nal ren­der I chose to use Mar­moset for my fi­nal ren­der. I’d rec­om­mend ditch­ing the per­fectly flat plane and make one that has some height changes. This will cre­ate a much more nat­u­ral look and give you more shadow to play with in your beauty shots. To help sell the depth of this scene I went pretty heavy on the am­bi­ent oc­clu­sion and cav­ity maps. To add even more in­ter­est I thought it would be cool to go back to Sub­stance and make a wa­ter ma­te­rial to creep into the scene.

While the Tile Sam­pler node is pow­er­ful and will get you most of the way there, don’t be afraid to add the oc­ca­sional ob­ject by hand with the trans­for­ma­tion 2D node. This is es­pe­cially use­ful if there is an area of the tex­ture that you want to add in­ter­est to

Newspapers in English

Newspapers from UK

© PressReader. All rights reserved.