After the launch of more than 200 procedural materials on November 15th 2016, we are happy to share with you the First Architecture Selection Update for Substance Source. It includes 12 full procedural materials dedicated to architects and archviz experts.
Let’s go into detail to see how I produced Substances for this first Substance Source – Architecture Selection update.
Here is the entire graph of the Pixel Patterned substance. This wooden block assembly is used in architecture, often to delimit spaces in a house or simply for interior decoration. This material is esthetic and gives a natural feel within the house.
First of all, we’ve defined the essential points of the substance, namely the choice of color, the visible wood veins and the number of blocks.
For the color, I used wood stain shades used in the industry, with the Gradient Map node to choose the hue. I also used the Glaze Selection parameter and varied the hue areas using the Noise Selection in order to have as many choices as possible.
The slope of the brick is essential for this substance. Basically, it is a linear gradient in the X-axis from black to white then from white to black. The problem is that when varying the position of the angle to one side the gray values are crushed and no longer render the linear gradient curve.
Next, simply plug it into the Tile Generator or Tile Sampler and expose the desired number of bricks in X and Y.
For realistic substances like terracottas, the base color is key to the realism of the substance. To achieve this, we needed to assemble several noises at different scales, which makes it possible to obtain information with varied details.
For the Bricks Bond Variations substance, every pattern was created in a subgraph. All subgraphs are composed as shown in the image (below). The information is then assembled in a different channel with the RGBA Merge node. We preferred to create them this way in order to make them reusable in other graphs.
Once created, we can find them in the brick substance. With the Grayscale Conversion node, we can retrieve information from each channel. This method also allows us to add new patterns in the future for all substances that use them.
For the bricks depth details I used a simple technique with safe transform and masking. With a Slope Blur node I created the rock aspect and the volume of the brick depth, with a safe transform I randomize the result x number of time.
I used the Blend node to merge them. To do so, I select the result of the pattern with the randomized colors as a mask input. For each blend I used a Histogram Shift node to change the choice of mask obtained. This saves me time by varying a single noise result.
Terrazzo Generator Substance:
The Terrazzo is commonly used in architecture. This material is easily recognizable due to its inserts. It is often composed of variable-sized inserts. To respond more easily to a wide choice of terrazzo, we have chosen to control them with layers of inserts. Thus we find in the graph the creation of the inserts.
The starting point for this substance is to be able to control all aspects of this material. I divided the inserts into 3 levels.
For each insert level, the user can handle density, size, color, color variation, intensity of normal / height, roughness, metallic.
In order to avoid too many parameters, we had to make some compromises – notably for color. Instead of exposing X colors for each level of insert, we have created a parameter Color share that allows us to pick colors in the other levels of insert thanks to a slider.
The creation of this Terrazzo generator has been made based on the feedback of Benoit Campo from Paris Picture Club.
For the Parquet substance, we worked so that we could reuse the filters for each type of wood. Thus we have in a subgraph the type of wood, a subgraph for the type of pattern and a final filter to split the wood material into boards.
Now you know more about how we designed this this first Substance Source – Architecture Selection update together with Gaëtan Lassagne. Now, it’s your turn to play!