Real Bricks

by Baraa Khaled in Surfacing


Introducing Real Bricks

"Real Bricks" is a powerful node group designed to replace the traditional Brick texture node in Blender. With an array of advanced controls and outputs, it offers a vast range of possibilities for creating realistic brick textures. This node group goes beyond the basics, allowing you to customize rounded corners, adjust brick rotation, and even apply custom masks, among many other features. With "Real Bricks," you'll have unparalleled control over your brick textures, enabling you to achieve stunning and highly detailed results.

All Sockets

INPUTS:

● Vector: Controls the texture mapping, defaulting to UV coordinates.
● Scale: Adjusts the overall scale of the brick texture.
● Seed: Changes the random seed for color, rotation, and random mask variations. 
▶ BRICKS
● Brick Width: Modifies the width of the bricks.
● Brick Height: Modifies the height of the bricks.
● Offset: Adjusts the offset of the bricks. 
▶ MORTAR
● Size: Controls the thickness of the mortar lines.
● Smooth: Adjusts the falloff of the mortar lines.
● Rotation: Randomizes the rotation of each brick.
● X Size: Sets the thickness of only the vertical mortar lines.
● Y Size: Sets the thickness of only the horizontal mortar lines.
● Rounded Corners: Rounds the corners of each brick. 
▶ RANDOM MASK
● Threshold: Changes the percentage of selected bricks outputted by the random mask. 
▶ CUSTOM MASK
● Selection: Adjusts the amount of selected bricks outputted by the custom mask.
● Gap: Adjusts the amount of deselected bricks outputted by the custom mask. 
▶ TILING VECTOR
● Distance: Changes the distance from the original location in a random direction, which is outputted by the tiling vector.

OUTPUTS:

● Color: Provides a random color for each brick. 
▶ MORTAR
● Mortar: Outputs the mortar mask.
● Vertical Lines: Outputs only the vertical lines of the mortar mask.
● Horizontal Lines: Outputs only the horizontal lines of the mortar mask. 
▶ DISTANCE
● To Edge: Calculates the distance to the edge of each brick, resulting in a square gradient.
● To Vertical: Calculates the distance to the vertical lines, resulting in a vertical linear gradient.
● To Horizontal: Calculates the distance to the horizontal lines, resulting in a horizontal linear gradient. 
▶ MASKS
● Random: Selects random bricks.
● Diagonal: Selects a brick and the one on its top left, and so on, resulting in a diagonal selection (when the offset is set to 1).
● Alternating: Selects a brick and the one on its top left, then the one on its top right, and so on.
● Row: Selects one row and deselects the next, and so on. [NEW]
● Checker: Selects one brick and deselects the next, resulting in a checker texture (when the offset is set to 0).
● Custom: Selects bricks based on the inputs provided in the "custom mask." 
▶ VECTORS
● Mapping Vector: When connected to a texture, it fits the same texture into each and every brick.
● Brick Vector: When connected to a texture, it pixelates the texture so that each brick has only one color.
● Tiling Vector: When connected to a texture, each brick gets offset by a specified distance in a random direction.

See It In Action!





The Node Group

To use this node group, open the file menu and choose append. Then, browse to the location of the file and select it. Next, you need to go to “node tree” and pick "Real Bricks". This will add the node to your project.

You can also add the node to your asset browser for easy access. 


Time to start building!


This node group has a small limitation. If the input vector has a negative area, some outputs might not display bricks in that area. But don't worry, there's an easy fix! Just connect a mapping node before the vector and adjust the location until there are no more negative areas.