I've created a brick wall using Geo Nodes, with instances from separate brick object. I've also used proximity to remove a portion of the wall for damage.

Brick wall made with Geo Nodes

Unfortunately the corners come out rounded and not squared off like a normal brick wall would.

Odd brick wall corners

I'm currently using a curve to define the shape of the brick layers and having the instances rotation follow the curve tangent. This seems to be what is creating the issue.

One thing I would like to note is that I realize that the corners of the curves do not look square either. This seems to come from the Resample Curve node I have at the beginning, but it was necessary as that was the only way to space out the bricks so they didn't overlap.

Curve Layers

Ideally, I would like it to not only be restricted to 90 degree angles, but also be able to include the use a half bricks (which I have also modeled) as caps to end the row if it comes up short.

Bricks for the instances

Here is my node tree (minus the nodes for the proximity brick removal for clarity as they are not part of the issue):

Geo Nodes Node tree for brick wall

I've tried everything and I just can't seem to get the right combination of nodes and math to make this work. Any help would be greatly appreciated!

Thanks in advance!


1 Answer 1


With the technique you used, the corners would always appear strange, because by moving the curve points along the tangents, they would always protrude a bit.

In addition, you wouldn't be able to get a pattern together with these bricks where the bricks get alternating positions per row, because the dimensions aren't suitable for that.

To be exact, a stone would always have to be exactly half as wide as it is long, because at the corners the stones join at a $90°$ angle. The height is of course irrelevant.

I would therefore suggest the following solution:

enter image description here enter image description here

Here I divide the curve into individual segments, instead of processing the curve as one element. If I move the points along the tangents, the further processing and selection is easier.

Instead of instantiating the base curve along a Mesh Line, I also use the node Duplicate Elements. This node then also provides me with an incremental index per row, which I can use directly for further calculations.

Note, however, that the length of a side must always be exactly divisible by the length of the brick, otherwise there will be gaps in the wall.

(Blender 3.2)

  • $\begingroup$ Thank you!! This is exactly what I needed. I've got it working on my wall and it looks great! I'm still trying to reverse engineer it to make sure I understand how it works. I'm a little fuzzy on it but I think I get the gist of it. Geometry Nodes is still something I need a lot more practice at. $\endgroup$
    – Derek
    Aug 14, 2022 at 20:33
  • $\begingroup$ This is really great, thanks for providing the .blend too. I will try to improve this for 3d printing by adding more noisy positioning of bricks and also an internal mesh to ensure the wall is manifold. $\endgroup$
    – andli
    Jun 19, 2023 at 8:53

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .