Node value not correctly read by bump

Hey there, I got stuck trying to create missing tiles for a procedural tile texture.

I have a node masking out the spaces between the tiles(mortar size) from the brick texture and I have another brick texture for the missing tiles. They have been added with a math node and seem visibly correct as shown below.

The problem lies when I connect it to the bump node it seems not to read the missing tiles but only the mortar size and tile cracks.

The mask seems to work fine for the color data.

I think I may be going about this the wrong way, I’m trying to improve my procedural skills for nodevember so any tips, solutions and explanations will be appreciated.

Here is the blend file Tile1.blend (145.3 KB)

Thanks in advance.

Okay, looked at the your file.

The problem is not, that the bump node doesn’t ‘read’ the missing tiles. They appear just as a flat surface with normal in z-direction, just as the intact tiles (minus the scratches), which is shown in blue above.

Keep in mind that the bump node does nothing but tilt normals. It gives the illusion of displacement only by faking different surface angles where there is a slope, i.e. a gradient in the displacement. You would need to create a carefully tweaked slope at the mortar near beside the missing tile to get the effect. Actually the same applies to the mortar between the intact tiles also. There it should also look better when you make the profile of the mortar gap a smoothed groove.

1 Like

Yes, works for me as well - both “heights” are perfectly flat, thus blue. Switch to experimental and utilize adaptive subdivision and displacement instead of using bump and you’ll see what’s going on. You’ll see there are other issues that could be handled. I’d use some clamping here and there.

1 Like

You guys are right, I threw the missing tiles under displacement as quick fix and it had more clearer visual results. Thanks for the help guys.

@CarlG I know I could look this up but since you may have a ready answer how and when do you use clamping, i’m assuming you are talking about the check boxes on the math nodes and not the clamping in the render settings.

Correct. You’re doing stuff like adding 1 and 1 then doing invert, possibly ending with a -2 into the shader, at which point things can get unpredictable. And using offset/rotationally offset subtracted generators is generally something you don’t want to throw at bumps - a proper gradient looks much better but I’m not sure how to do it efficiently (try new voronoi options?).

1 Like

Hmm I see thanks for the explanation. I do agree the offset subtract method seems off in this situation, ill keep researching.