Learning nodes - a lost weekend with the default brick node!

Hello community! I am at a point in my blending learning where I need to conquer UVs and nodes. The default brick shader seemed a good place to start, pretty sure I have not done things correctly but rather just plugging stuff in to see what happens! Got lost for a weekend, came out the other end almost having accomplished a weathered brick type thing but there were a couples of issues I really couldn’t figure out -

  1. I feel there should be a way to soften the brick edges as they are always razor sharp - perhaps a 'blur" node or some combo of noise distortion - but scratching my head so far,as I haven’t come across such a thing - I’m coming from C4D R16 which did not have nodes but did have a global blur setting for shaders which is why I wondered about a ‘blur’ node.

  2. I wanted to add the odd blackened brick but couldn’t figure out how to mix 2 brick nodes together that crisply and randomly selected bricks from each node rather than blending them together.

If anyone has an immediate thought on either of these points I’d be very grateful for the help. I should point out that I also just discovered Simon Thommes’ awsome brick shader https://www.youtube.com/watch?v=d5YByejuCXQ but this is still useful as a learning exercise anyway. I can upload the blend file if necessary once I’ve figured out how! :slight_smile:
Thanks for any help.
boxysav

Screenshot 2019-08-27 at 11.37.19.jpg
Screenshot 2019-08-27 at 11.37.43.jpg
b6.png

1 Like

I don’t know the contents of the group (or addon?) he is using in the video, but in order to achieve randomness (random brick width per row is impossible atm), you need to chain the brick texture; the random output of the first creates the randomness that you feed into the next. And then in the end, you’ll need two parallel brick textures; one for the mortar and one for the brick random color if you want to use it to randomize lay normal or texture lookup from an image texture. In the example below, I even have to use a third brick (mortar) texture for specific mixing task. As well as using some math lib node groups.

It can get really ugly really fast:


I’ve since updated my library so one of the node groups fails, so no point in sharing this mess.

But the result is kinda nice.

I’m not doing anything to do staggering effects or ensure continuity. I wasn’t going for a “really weathered” look, just randomize things up a bit rather than have it perfect. The tiled floor is using the same kind of idea, although it’s not displaced.

Thanks for the reply Carl. That randomness would help at least, looks good! Thanks also for posting the nodes screenshot, I’ll study it! :slight_smile:
Cheers

This is a lot less complex, and certainly is missing a lot of the layering you added in, but to answer respond to your #2 request: this is a way to directly map the base color of the bricks to one color ramp, masking out the mortar:

I find it is very easy to go hog-wild with nodes, and starting over with the least amount of nodes to accomplish a task is a very good practice after you’ve spent a couple hours knee deep in spaghetti.

Wow that’s great, nice and simple too. :slight_smile: Thanks for the tip Sterling, much appreciated! Back to the drawing board. :slight_smile:

1 Like

Hello again
It turns out playing with the humble brick shader has taught me quite a lot about making, using and organising material nodes! Anyway for what it’s worth, I kind of managed to make the brick edges more ragged but without some kind of ability to soften the transition between brick and mortar it’s never going to be exactly right for close up views. Also introduced an option to wiggle the brick rows a little just to help get rid of those razor sharp horizontal and verticles. For what it’s worth I’m uploading the blend file and since you’re bound to find areas where my hap hazard playing and inexperience have meant something was done wrong, please feel free to correct it. This was saved out from the Sept 3rd 2.81 build of Blender. Now I can happily move on to Simon’s brick shader which does have all these elements! Thanks for your help. :+1:

Link to blend file: Download File

Default-Bricks|690x430

Some observations:

  1. You can’t do “Brick Distortions” like that. You can wiggle the coordinates ever so slightly, either in full or per brick (more difficult) for some randomness (portion of noise-0.5 added to coords for a non shifting effect), but not to create a “blur”. The correct way would have been to add wiggleness to the coordinates and other noise to mortar size and/or smooth - the mortar smooth controls the “blur”.

  2. It’s difficult, but fully possible to do random row shift per row, and random brick widths per row. But impossible for varied brick widths within the same row. I’m not sure what the new voronoi will allow - it can do varied brick widths, but I’m not sure you can get mortar/gradient out of it making it less useful for bricks than I hoped for.

  3. Excessive noise detail. Noise is a fairly expensive generator as detail goes up. It maxes out at 16 (which in itself is excessive) but you go 100 and 200. Why? I start looking at alternatives if I have to go above 2, and I use 0-1 as much as I can. Not always possible, but try to get as much out of a generator as possible; you get 6 channels out of colored noise; RGB & HSV which can then be mangled.

  4. May be safe with these settings (I didn’t test), but using BrightContrast on color signal is dangerous when left unclamped as here. I don’t understand why this node is even present in its current form.

There are cases where you can ignore offset induced by added noise to coordinates, but bricks is not among them. Here you should subtract 0.5 to all channels before adding a factor of it, so that the features of the texture doesn’t shift if I you increase the adding factor.

Efflorescence is a thing. But is it something we’d want to have in our texture? Still, you can’t just add them together without risking >1 whites. I would also do brick and mortar as different shaders, mixed together, rather than doing everything in one shader.

Carl this is great, thanks for the feedback. Fully admit I wasn’t convinced at using that much noise detail but being right at the beginning of learning, couldn’t think what else to do to make those edges less razor sharp, but thanks for explaining that, I never thought to wiggle the coords. :slight_smile: In fact all the points you raise might be answered in the same way, because I was just playing without a clue as though I was trying to alter an image in Photoshop - although yes I definitely want the option of efflorescence and other degradation features for certain projects once I have actually learned how to use the software. :slight_smile: Back to the drawing board. :+1: Thanks again.

I have a set of bricks nodes on the blender market which offer softened/rounded edges and mortar profile options, as well as extra outputs for randomness. Have a look, you might find them useful.

This is the best porocedural for bricks that I know, it is free (or you can donate the amount you want), so you can study the nodes:

And this some examples based on previous Bricks nodes:

2 Likes

Thanks folks. :slight_smile:

You’re welcome!