Blender 3D Modelling with Geometry Nodes Brick Walls Workshop | 3D Tudor | Skillshare
Search

Playback Speed


1.0x


  • 0.5x
  • 0.75x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Blender 3D Modelling with Geometry Nodes Brick Walls Workshop

teacher avatar 3D Tudor, The 3D Tutor

Watch this class and thousands more

Get unlimited access to every class
Taught by industry leaders & working professionals
Topics include illustration, design, photography, and more

Watch this class and thousands more

Get unlimited access to every class
Taught by industry leaders & working professionals
Topics include illustration, design, photography, and more

Lessons in This Class

    • 1.

      Blender Brick Geometry Node Workshop

      4:10

    • 2.

      Blender Viewport Basics

      7:09

    • 3.

      Introduction to Geometry Nodes

      9:43

    • 4.

      Creating Curve Line Layers

      12:31

    • 5.

      Creating Dynamic Spawn Point Count

      9:05

    • 6.

      Curve Placement Along Points

      12:27

    • 7.

      Locking Position for First and Last Points and Recovering Crashed Blender Files

      10:25

    • 8.

      Geometry Node Cleanup

      10:08

    • 9.

      Creating Brick Primitives Using Dynamic Width and Height Parameters

      10:21

    • 10.

      Aligning Brick Rotation to the Curves

      7:18

    • 11.

      Creating Even Row Offset

      11:58

    • 12.

      Working on Brick Gaps

      11:33

    • 13.

      Rotation and Transform Offset

      9:13

    • 14.

      Brick Surface Bevel and Displacement

      15:58

    • 15.

      Creating Cement Surface Grid with Index Selection Offset

      14:06

    • 16.

      Categorizing Parameters

      8:13

    • 17.

      Creating Extrusion Operation and Mesh Smoothing

      12:55

    • 18.

      Smoothing Out Normals and Displacement Cement Setup

      10:08

    • 19.

      Blender Material Shader Basics

      14:08

    • 20.

      Generating Cement Shader Material

      8:14

    • 21.

      Generating Normal and Roughness PBR Values

      8:40

    • 22.

      Mixing Noise for Brick Pattern Texture

      12:38

    • 23.

      Adding Material Detail for Cycles Renderer

      17:43

    • 24.

      Practical Use for Geometry Node

      22:28

  • --
  • Beginner level
  • Intermediate level
  • Advanced level
  • All levels

Community Generated

The level is determined by a majority opinion of students who have reviewed this class. The teacher's recommendation is shown until at least 5 student responses are collected.

111

Students

2

Projects

About This Class

Introducing: ‘Blender 3D Modelling with Geometry Nodes Brick Walls Workshop'!

Have you ever wanted to create detailed and realistic brick walls for your 3D projects? Or perhaps you're looking to master Blender and explore the powerful capabilities of Geometry Nodes? If so, this workshop is perfect for you!

Welcome to the 'Blender 3D Modelling with Geometry Nodes Brick Walls Workshop'! I'm Luke and I am here to sprinkle a bit of 3D magic to enhance your virtual environments. We also whip up Blender Geometry Nodes to turbocharge your workflow, making your projects smoother than a buttered pancake.

Today, I’m thrilled to guide you through the 'Blender 3D Modelling with Geometry Nodes Brick Walls Workshop', where you'll learn to create your own geometry nodes from scratch!

Why This Workshop?

In this spellbinding class, we'll start from square one, ensuring that even if your 3D skills are currently at zero, you’ll be a pro in no time. We’ll kick things off with some introductory videos that walk you through the Blender viewport and the arcane art of shading. This rock-solid foundation will prepare you for the wizardry to come as we delve deeper into the enchanting world of the 'Blender 3D Modelling with Geometry Nodes Brick Walls Workshop'.

Top 6 Points About 'Blender 3D Modelling with Geometry Nodes Brick Walls Workshop'

  • Beginner-Friendly Approach: Accessible to all experience levels with introductory videos on Blender navigation and shading.

  • Hands-On Geometry Node Learning: Engage in practical projects, starting with basic mesh lines and progressing to a complete brick wall generator.

  • Dynamic Parameter Techniques: Create dynamic spawn points and precise alignments for natural, professional 3D models.

  • Efficiency and Workflow Optimization: Learn to clean up and organize Geometry Nodes, enhancing readability and efficiency.

  • Advanced Texturing and Material Generation: Master aged effects, gaps, weathering, and realistic PBR materials for detailed brick walls.

  • Practical Castle Project: Apply skills in a miniature castle project, creating walls, towers, pathways, and decorations using Geometry Nodes.

Initial Setup

Using Mesh Lines: Our journey starts by using mesh lines from custom curvatures. We'll create duplicates of these lines vertically within Geometry Nodes, which will serve as the placement for our bricks. This will give you a solid grasp of setting up your project and preparing it for more intricate details.

Dynamic Elements

Creating Dynamic Spawn Points: Next, we'll move on to creating dynamic spawn points that adjust based on the scale of a curve. Using the curve length node, you’ll learn to control the spawn rate and ensure your bricks are placed accurately and dynamically.

Curve Placement and Alignment: Positioning is key in any 3D model. We’ll utilize the 'index' node to align our points along the curvature, creating an offset value for a randomized yet cohesive placement of bricks. This will help you achieve a natural look for your walls.

Maintaining Uniformity

Ensuring Uniform Columns: One of the challenges in creating brick walls is maintaining uniformity while allowing for variation. We’ll tackle this by learning how to keep the first and last columns straight, ensuring a clean and professional appearance.

Efficient Workflow: Efficiency is crucial in any workflow. We’ll dedicate a lesson to cleaning up our Geometry Nodes, setting up reroutes, and grouping nodes for better readability and usability. You’ll also learn to hide unused parameters, making your setup more compact and efficient.

Creating Bricks

Brick Formation: Creating the bricks themselves is a fun and rewarding process. You’ll learn to form brick shapes from primitive cubes, rescale them based on your curvature setup, and add random variations to their size. We’ll also align brick rotations to the curve using the 'align euler to vector' node, ensuring each brick fits perfectly in place.

Adding Character

Weathering Effects: To add character to your walls, we’ll explore how to create aged effects. You’ll learn to set up gaps, create individual rotation offsets, and apply weathering effects using noise textures. We’ll also cover dynamic resolution changes and bevel techniques to achieve that weathered, realistic look.

Cement Fillers: Cement fillers between bricks are essential for authenticity. We’ll create a cement layer using grid creation techniques, accurately positioning it along the curve shape. You’ll learn to offset the cement based on brick scale, ensuring it always fits perfectly.

Texturing and Shading

Texture Generation: Texture generation is where your wall comes to life. We’ll combine noise textures with PBR materials to create realistic brick textures. You’ll also learn to randomize brick colours based on the Cycles renderer and highlight brick edges for added detail.

Practical Application

Final Project: We’ll finish with a practical project where you can apply everything you’ve learned in the 'Blender 3D Modelling with Geometry Nodes Brick Walls Workshop'. You’ll create a castle wall and tower, complete with walkable pathways and detailed decorations. We’ll tweak parameters and shaders to fit different scenes, cut holes for windows, and create a slanted tower roof.

Class Duration and Benefits

Throughout the class, you’ll benefit from annotations that help visualize each step of the process, making it more intuitive and easier to follow. This 23-lesson, 4-hour and a half hour class is packed with valuable information and hands-on experience. By the end, you'll have a comprehensive understanding of Blender’s Geometry Nodes and the ability to create detailed and dynamic brick walls for any project.

Summing It All Up

The 'Blender 3D Modelling with Geometry Nodes Brick Walls Workshop' is like Hogwarts for Blender enthusiasts! Whether you're a muggle to 3D modeling or already have some magic up your sleeve, this class will enchant you into a Geometry Nodes wizard. You’ll transform from a novice into a master brick wall conjurer, understanding Blender’s mystical nodes, optimizing your workflow like a spell, and crafting stunning, professional-quality textures and details that even the most discerning sorcerer would admire.

Join me in this exciting 'Blender Basics Geometry Node Brick Walls Workshop' and let’s build something amazing together!

 

Until we build again, happy modeling everyone,

Luke

Meet Your Teacher

Teacher Profile Image

3D Tudor

The 3D Tutor

Top Teacher

Hello, I'm Neil, the creator behind 3D Tudor. As a one-man tutoring enterprise, I pride myself on delivering courses with clear, step-by-step instructions that will take your 3D modeling and animation skills to the next level.

At 3D Tudor, our mission is to provide accessible, hands-on learning experiences for both professionals and hobbyists in 3D modeling and game development. Our courses focus on practical, industry-standard techniques, empowering creators to enhance their skills and build impressive portfolios. From crafting detailed environments to mastering essential tools, we aim to help you streamline your workflow and achieve professional-quality results.

We're committed to fostering a supportive... See full profile

Level: All Levels

Class Ratings

Expectations Met?
    Exceeded!
  • 0%
  • Yes
  • 0%
  • Somewhat
  • 0%
  • Not really
  • 0%

Why Join Skillshare?

Take award-winning Skillshare Original Classes

Each class has short lessons, hands-on projects

Your membership supports Skillshare teachers

Learn From Anywhere

Take classes on the go with the Skillshare app. Stream or download to watch on the plane, the subway, or wherever you learn best.

Transcripts

1. Blender Brick Geometry Node Workshop: Developed over 25 unique nodes that range from cascading water poles, to blazing fires and beyond. Today, I'm thrilled to guide you for the fascinating world of blender and Geometry nodes. This workshop is designed to provide you with a thorough understanding of how to craft your very own omete node from the ground up. Whether you are eager to create detailed and realistic brick walls for your project, or you're looking to broaden your skills and harness the robust capabilities of omet nodes, you are in the right place. Join us as we embark on this exciting journey to elevate your freely modeling skills to new heights. Let's get started and unlock the full potential of omits nodes together. In this comprehensive course, we'll start from the very basics, ensuring that everyone, regardless of their experience level can follow along and master these techniques. We'll begin with some introductionary videos that will guide you through the navigation of Blender viewport and understanding the shading process. This foundation will set you up for success as we dive into more complex topics. We'll start geometry node creation by using mesh lines from custom curvatures. We'll create duplicates of these lines vertically within omet nodes, which will serve as a placement for our bricks. This will give you a solid grasp of setting up projects and preparing it for more indicative detail. Next, we'll move on to creating dynamic s pond points that are just based on the scale of a curvature. Using the curve length node, you learn how to control the spond rate and ensure your bricks are placed accurately and dynamically. Positioning is key in any F D model. We'll utilize indexed node to allig our points along the curvature, creating an offset value for randomized yet cohesive placement of bricks. This will help you achieve a natural look for your walls. One of the challenges in creating brick walls is maintaining uniformity whilst allowing for variation. We'll tackle this by learning how to keep the first and last column straight, ensuring a clean and professional appearance. Efficiency is crucial in any workflow. We'll dedicate a lesson to cleaning up organdomet nodes, setting up re routes, and grouping up nodes for better readability and usability. We'll also learn how to hide the unused parameters, making your setup more compact and efficient. Creating the bricks themselves is a fun and rewarding process. You'll learn how to form brick shapes from primitive cubes, rescale them based on your curvature setup, and add nomeration to that size to get a more organic load. We'll also line the brick rotation to the curvature using the aligned er to vector node, ensuring that each brick fits perfectly in the place. Afterwards, we'll create cement fillers between bricks that are essential for authenticity. We'll create a cement layer using grid creation techniques, accurately positioning it along the curve of the shape. You'll then learn how to offset the cement based on a brick scale, ensuring it always fits in perfectly within your setup. Texture generation is where your wall comes to live. We'll combine noise texture with PBR materials to create realistic brick textures. You'll also learn how to randomize brick colors based on cycles render and highlight brick edges for added detail. We'll finish with a practical project where you can apply everything you've learned. You'll create a castle wall and a tower, complete with walkable pathways and detailed decorations. Well tweak parameters and shades to fit the different scenes, cut holes for windows, and create slanted tower roof. Throughout the course, you'll benefit from annotations that will help you visualize each step of the process, making it more intuitive and easier to follow. This 23 lesson, four hour and a half course is packed with valuable information and hands on experience. By the end, you'll have comprehensive guide understanding of Blenders hom nodes, and the ability to create detailed and dynamic brick walls for any project. Join me in this exciting workshop, and let's build something amazing together. 2. Blender Viewport Basics: Hello and welcome everyone to Blender Basics Geometry node Brick Walls workshop. And we're going to start off with the basics of the viewport Controls. Although most of the work is going to be done within the Demetr Nodes graph, it's really important to know a little bit more in regards to controls over the blender itself. So I'm going to play a quick video that explains the basics of controls for it. And then in the next lesson, we're going to start off with the Geometry node itself. So I will be seeing you in the next lesson. Welcome everyone to the basics of blender navigation. Now, before we begin, it's important to understand how the axises work within blender. So we can see at the moment, we've got a green line going this way and a red line going this way. This is called the y axis, and this one is called the x axis. We also have one that is the Z axis, which we can't see right now. It doesn't actually come in with Blender viewport as default. But if you want to actually set it on, you just come up to the top right hand side, where these two interlocking balls are, and just click the Z axis, and now we can actually see that. So how do we actually move around the blended viewport? There's a number of ways of doing this. One of them is over on the right hand side here. You can see if ver over here, it's the zoom in and zoom out. I can actually left click and move these up and down then to zoom in and zoom out, or I can use the actual mouse to actually zoom in and zoom out using the actual scroll wheel. There's also another thing you can do with Zoom, which is holding control shift and pressing the middle mouse, and you'll see you have a lot more control over zooming in and zooming out. Now the next thing we want to discuss is actually rotating around an object. So how to do that. First of all, we'll bring in a cube, we shift A, bring in a cube. Now, if I press the middle mouse button and move my mouse left or right, you can see we can actually rotate around. Unfortunately though, we're not actually rotating around this cube. So to actually fix that, we need to center our view onto the actual cube. We basically want to focus our view onto this actual cube. So to do that, we're just going to press the little dot button on the actual number pad, and then you'll see that we actually zoom in to the cube. Now if I scroll my mouse wheel out, you will see now if I hold the middle mouse button and turn left and right, we're actually rotating then around the cube. And this is important because if you actually bring in another cube, If I duplicate this cube with shift D. Move it over, so bring in my move gizmo. And now you'll see if I rotate around this cube, I'm not rotating around this one. So that's fixed side, just press the dub button. Again, zoom out, and now I can actually rotate around this cube as well. Now let's look at something called panning, which means that we're actually going to move left and right, and we do this by holding the shift baron, holding the middle mouse, and then we can actually scroll left and right around our actual viewport. So now we've actually discovered how to zoom in and the different ways we can actually do that. How to rotate around an object and how to actually pan. We can also come up to the top right hand side here and use these buttons here. So again, remember, we're looking at the y axis, the x axis, and the Z axis. If we come to our y axis and click that on, you will see now that you've got a front view of the y axis. If you click the x axis, then we can change it to that red x axis, and finally, the Z axis as well. Now, there are other ways as well that we can actually look around the viewport, and these involve using the actual number pad. If I press one on the number pad, it's going to tap me into that y axis or front view. If I press two, it's going to actually rotate that slightly, and if I press two again, it's going to rotate it slightly more. Now, if I press the eight, it will rotate it the other way as well. Now, to go into the side view or the x axis, we can also press three on the number pad, and that will give us that effect. We can also press seven to go over the top as well. Now, what about if we actually want to go to the opposite? So instead of going from the bird side view, we want to come to the underside of our model. Well, that's actually quite easy as well. All you need to do is press Control seven, and that then will take you to the bottom view of our actual model. We can also do the same inside view and on the x axis and y axis. So for instance, if I press one, I'm going to be going into the y axis, if I press Control one, I'm going to be going into the opposite side on the actual y axis. Can also find these options just in case you forget at the top left hand side here under view. So if I go down to view and go across to viewport, you can see here that this actually tells me exactly what I need to press to get the viewpoint that I've just actually explained. Now, we also have the button on the number pad, which is number five. And number five button in blender toggles between perspective and orthographic views. Perspective view offers a more natural realistic viewpoint with objects appearing smaller as they get further away, mimicking human vision. Orthographic view removes perspective distortion, making all objects appear at their true size regardless of distance. Useful for precision modeling and technical work. The other thing that number five does, for instance, if I come to my cube, at the moment, I am able to actually zoom into the cube. However, if I press number five, I will not be able to actually zoom into this cube, no matter how far I zoom in. I'll still be able to move around it by pressing a little dot button, like so. But if I actually want to actually work on the inside of an object, I can quickly press number five, and then I can actually go in and work around the inside as well. If you're working on a laptop or something like that or a tablet, and it doesn't actually have a number pad, you can also use if I press five, the actual squiggle key, which is under the escape board on the left hand side of your keyboard, and that then will give you pretty much the same options as we had before, so we can click the right view. We can actually click the back view. And we can click the left view, for instance, the opposite to what we had before. So instead of pressing one and three, we just press the little squiggle line, and then we can actually view whichever side we need to. Now, we're nearly at the end of this short introduction, there are a couple more things that you can actually do. If you come over to the right hand side, and you see here where we've actually got the name of the actual parts within our scene, we can also grab them from here and then press the little dot on to zoom in. So I can grab this one, press a little dot dot on, and that then will zoom as in. The other great thing about this is, we can also come in. Shift select them both. Pressed the little dot boron, and then we're able to actually rotate around both of these cubes. Alright, everyone, so I hope you enjoyed the short introduction to the navigation within Blender, and I hope from now on, it won't be a struggle navigating around the viewport. Thanks a lot, everyone. Cheers. 3. Introduction to Geometry Nodes : No. Hello, welcome everyone to Blender Basics Geometry Node Bricks Wall Workshop. In the last lesson, we went over the basics of the viewport itself. We got a bit of introduction in regards to its controls. Now we're going to open ourselves up with the Geometry notes tab. So on the top section, we're going to see something called Geometry notes. If we were to click on this, we're going to get this type of a result. If you're not seeing this type of result, what you can do is you can click on this plus symbol over here, and then you can go on to the general, and there is something called Geometry Nodes, which will open you with this node. You can then click on it and select. Then afterwards, you're going to have some view in regards to the vertex position and some information in regards to that. I tend to keep it off to the side a little bit by dragging it this bar over here. We can click and hold our mouse button and then drag it off to the side, and we can just keep it as a small indicator on this edge just for a bit of additional information during the omet node process. Then we're going to have ourselves at the right handside, the view poort itself, which we have controls for it, like so. At the bottom, we have the graph for the geometry node. The graph itself is going to be empty because we don't have any type of the geometry node itself. So we need to actually start setting it up for us to work with the geometry node. For us to do that, we're firstly going to just delete everything actually from the scene. We can just click and hold and then drag our mass button across Lg so across the camera, the sunlight, and the cube itself. We can go ahead and click delete to just simply get a fresh and empty type of a project. Then we're going to be working with curvatures. So Geometry nodes allow you to create spawn points in regards to their different uses. So for example, you can create something based on the mesh itself. You can make use out of just random generator in an empty object, or in this case, we're going to create it in the curvature itself. So what I mean by that is if I was to click Shift and A, in the viewpoint itself. Make sure you're clicking it over here with the mouse hovering over. The position of the mouse is really important when you're doing a certain action. So for example, if I was to click Shift and A over here, we can see that we're getting complete different menu. The reason being is that we're actually trying to add something within the geometry node graph itself. But for now, we just want to add something within the viewpoint itself. So let's go ahead and click Shift A. We then going to just go on to the curvature tab, and we're going to select the Bezier. This, if we zoom in, is going to give us a simple, very basic type of a curvature. We can go click edit, and we can see that it's not just a mesh or anything of the sort. It actually has two points, and we can control those points between the points. So the middle point over here is going to control the main point itself while these ones on the side are going to basically control how it actually interacts with the other points. For example, right now, because this is straight, and this one is offset, is going to give us this kind of curvature, but if it was to just slightly shift this off back, it's going to give us a straight line. So, that's pretty much it. We're going to go more in regards to how to make use out of the curvature later down the line. But for now, those are the basics, and now we're going to go ahead and actually create ourselves to modify a photo geometry node. So I'm going to go ahead and just simply get the default type of the curvature, the one that we had when we spawned in. Then we can either create a geometry node through this button over here, or personally, I like to just add a modifier, which is going to already have a geometry node, and it's just going to straightaway apply it onto the curvature. So what I mean by that is, if we click if you click at a modifier, we can select a geometry node, and then it's going to prompt up with this type of a window. This window will allow us to either select one of the geometry nodes that already exists in the file in the blender file that is, which in this case, there's nothing there. Or we can click on this button over here, which is going to allow us to create a new geometry node. So right away, by default is just going to give us a nice graph at the bottom with a group input and group output. But before we actually talk a little bit in regards to that, we can change the name of the geometry node itself. We can either do it through this area over here, or we can just simply click on this section over here and just call it whichever way we want. So we can call this one brick generator, the name itself is not going to affect the geometry node itself, but it just keeps us a little bit more organized in regards to the overall setup. So you can see the name over here, it's also changed. So group input is what's going to basically give us the information, the parameters, and everything of the sort that we're going to input into the geometry node, and then what's going to come out out of it, what we're going to see within the blender file is going to be what's the group output. So if I was to break this node, And remove the link itself. We can do so by holding control and clicking and holding a left mouse button and then releasing it outside, we can see that it actually gives us nothing. On the top right hand side, you can see that the bezier curve is still there, but it's not visible to anymore. The reason being is that all the information that was inputted, which is, in this case, just the curvature node is actually just going to not be displayed anymore because we just removed everything. So it's going to give us empty piece of information. So keep in mind that this is also useful to know because if you over make a mistake whilst working with these kind of setups, you can click and hold control and then remove it. Alternatively, we can click our left most button and just simply drag it across like so, and that's going to give us the note back. So again, if you want to remove a link, if you made a mistake by accident or anything of the sort, you can click and hold your control, and then with our left most button, we can release it like so, and then it's going to simply take off the link. Go back to this, for the sake of better visuals, I'm going to make this a little bit smaller. I will make this bigger later down the line, but I'm just making this a little bit smaller. I'm going to click seven, and I'm going to explain what we're going to do. I'm going to grab annotate. You don't need to do this. This is just purely for the sake of explanation. What we're going to do is, we have ourselves a line. Curve line, we're going to basically spawn the points at the very start and make sure we have points going all the way through this line over here. So through this entire line, we're going to spawn points. We're going to make sure that they're set up as primitive shapes or stars as sort of bricks. So And then afterwards, we're going to get those bricks to be aligned with the curvature itself. So instead of just, like where this line is going downwards. It's not going to just be a simple brick like so, and instead, it's actually going to try to align to those curvatures. We also need to make sure that we get ourselves those kind of gaps in between the bricks, and also we need to decide how we're going to set up the height itself. So it's not going to be just one line going across. We also need to make sure that it's multiple lines going to make sure that it's actually setting up a brick layer, a brick wall basically. So we're going to go for all of that set up. In a bit by bit. But all we need to know now is that we just need to get a curvature that we already have over here, so the geometry curvature over here. We need to get the points for the wall, and then afterwards, we can make use out of them. So I think for now, this is going to be more than enough in regards to the setup. We're going to continue on with this in the next lesson. And before we actually do continue, I do recommend you saving out your project if you lose the file or if the program crashes at one point, which can happen. No program is perfect. As you recommend you basically saving it out, so you'd be able to actually recover the file or just come back to this project whenever you feel like. So you can click Control and S. The first time you're going to click Control and S when you make a new project file is you're going to get Save A option. You can just select whichever location you want. I'm going to just simply get a location over here. We can just call this brick. Generator. And then we can click Save Blender Pile, just like that. And now next time we're going to click Control and S, it's just going to save it over the same project. Alternatively you can use pile on a top left hand side. You can just click Save. Or if you want to make a new copy, just in case you're working on this and you want to experiment a little bit more, you can click Save S, and that's going to allow you to make a new file like so. So that's pretty much hit in the next lesson, we're actually going to start making Geomet node. Thank you so much for watching, and I will be seeing you in a bit. Okay. 4. Creating Curve Line Layers : Hello, and welcome everyone to Blend Basics Geometry note Brick Walls workshop. In the last lesson, we went over a bit of in regards to setting up the Geometry note, and we talked a little bit in regards to the feedback and information. We went over the group inputs, although the group inputs now only has one option. So we're going to start setting up the parameters and talk a little bit in regards to how to make use out of them. So, by default, you're not going to see this window, but on the right hand side of the Jump node tab, we're going to see this arrow over here. By clicking on it, we're going to get ourselves the interface. If you're not seeing this interface, make sure you are on a group section over here. And then the shortcut that you're going to be using it quite often is going to be letter N, which is going to basically disable and enable this section, the tab over here. So we basically have the geometry input and the geometry output, L so, then we want to create our own version, basically our own parameters that we are going to be able to play with. So I'm going to make this window quite a bit larger over here actually, while still seeing this line over here. And we can click on this plus symbol add new item, add input, and by default, it's going to give you a socket. Make sure that the socket is actually at the bottom. If it's in the middle, it's not going to work. It needs to be going after all the information of the geometry, notes, basically. So if you have it in the middle, just make sure you drag it and then drop it to be placed underneath it, like so. Then afterwards, we're going to start off with actually, something called Layer count. We can double click on the text itself, and we can just rename it so layer. Like so. And then if you notice on the right hand side, where we have the geometry node applied onto the curvature, we have now the name layer count. Right now, the layer count has a float value. This means that we can go from the value of zero, 0.1, negative values and all of the sorts like so. But for the layer count, we just want to make sure that it goes like one, two, three, and so four. We don't want the decimal places. So to change the type that we're using is going to be from float value. We're going to change it to A, was defined it, and integer. There you go. Going to click on an integer and now once we change to an integer, we can now click on these over here on these arrows, and you can see it's only going in numbers. It doesn't have no decimal places. The controls for parameter can either make use of the arrows, by the way, by clicking on left or right arrow. We can also click and hold in the middle and drag our mouse right or left, depending on what we want. We can also hold shift. And click our middle mouse to hold it, and then that's going to actually lower down the speed at which it's going. I'll show you actually in a bit in regards to the float value. Or alternatively, we can click on the value itself and then it will allow us to change the value. So for now, we can just keep it at one. Or actually, we're going to keep it at four because we're going to be setting up the layers soon. So let's go ahead and keep the layer count at four. And yeah, that's pretty much it in regards to that. So the upper parameters that we actually need is going to be if we were to click on a new item. Input, we're going to create something called Whip. So let's go ahead and call this Whip, like so. Now, as I said, previously, we can click and hold our left mouse button, but when doing it going right and left, going to get the value that's really, really hard to change. So while it's holding shift, a quick tip is that if we hold shift, we can have this value to be fine tuned easily, and that's going to be really useful for whenever we want to tweak the values and adjust them a little bit. The With by default, let's go ahead and keep this as one, and then the with randomness. We also going to need a parameter for that actually. So let's go ahead and create an input. So that's going to be wi randomness. Randomness. That can be kept at zero, and we can click new input as well to create a height. That's going to control how high up the bricks go basically in regards to the z values. So that's going to be something we're going to talk a little bit in a bit. The height value, we can just keep it as 0.25. And I am changing the parameters over op, but if it works to make a new v, new parameters, they're not going to be the same. So for example, if I was to create a new modifier with the same brick generator, which I can actually do that right now. And just for an example, I'm going to do it, so we can see that all of these values are still kept at zero. They're not inheriting those values. Reason being is that when we have those values created over here, if we want them to be actually always default value, when we create a new parameter, we can change them through this section over here, when it says default value. So when we select, for example, wi, we want the default value to be one, for example. We can click on this and just type in one. And that's going to then basically when we create a new parameter. Like, so it is going to set this whip as one. So that's a really important information. Another thing that we need to know is that if for example, play around with the values themselves, we can hover over the value itself, and we can click backspace. Backspace will basically the delete button above enter, basically. The backspace will allow you to just put the value back to the default values. For example, the height is still being kept at zero. If I was to click backspace, is just going to do a value back to zero, basically. So for now we don't need to worry about it too much because we're going to find tune values afterwards. But all we need to know is that this is how we control the default values. And that is how we can change the default parameters basically. Let's actually go ahead and make use of those parameters right away. So the first thing that we're going to do is actually we're going to create a mesh along the line, so we're going to get ourselves a nice height that gives us a brick layering going across this curvature. So the node that we're going to use is actually going to be quite a useful one. We're going to click Shift and A while severing over the geometry node, we're going to click Search, and we're going to search for something called mesh line. Mash line. We're going to select this one over here. Then we can do a quick trick to make sure we implement this right away. We can simply go over the line that that's between geometry and group output geometry, and you can see it being highlighted, whenever I get this node on, which means that whenever I click on this, it's going to automatically add it onto geometry node output. And in regards to this, it's not going to pick the geometry itself. The reason being is that we actually need to set this up with different values. So Right now in regards to the count, you can see that what it actually is doing, Right now, it's simply creating everything on one point over here and just creating a massive line. If I was to, for example, change the offset, zero, zero, zero, is going to give us a small point. If I was to actually move this off to the side, we can see that it actually is offsetting. It's basically creating a line along the offset values. We can make use out of this to basically create an offset that gives us the multiple layers, but we need to grab ourselves the original geometry of the curvature. For us to do that, we're going to get ourselves instance on points. We're going to hit shift at A. We're going to search for instance on points like so. Again, we're just going to hover over this line, make sure it's getting highlighted with a white line, so we can release it and then it's going to give us nothing because we actually need to specify where the instance is. We're going to make sure that we attach this geometry onto the instance over here. Instead of just grabbing it through this, I want to keep it on the left hand side because we are going to need some parameters over here onto the mesh line. We want to basically select this, we want to duplicate this. We can either do control, we can either do control C, Control B, or we can do Shift D. If we were to click Shift D, we can just grab this selection and basically copy it, and we're going to get ourselves a second group input. This second group input, we can just now attach it over here. Going to have the same exact setup as if it was to have this dragged across to the instance like so, but it's just going to not give us this line just dragging across this mesh line node. That's why I'm doing it like so. Oh, sorry. There we go. Let's put it back. Now we're going to get this type of a setup. The reason this is going to give us this setup is now basically we're grabbing this mesh line. Making use out of its offsets and rating the same geometry, basically, we're duplicating the same curvatures, what we're doing over here. So if I was to set this to zero and change the Z value, you can see that now we're getting these kind of layers. These layers are going to be useful for the setup. We can also change the count over here. For example, if I was to lower this down, you can see the count changing up So I'm just going to make this a little bit bigger so we can see the count changing. For that, we're going to change the lay account with this parameter over here. If I was to attach it, now that we have the parameter connected to the mash line, we can change the lay account for here. It's going to basically do the same exact setup as we had controls for here, except we have controls Geomet node itself through the modify it that is. And then afterwards, we just need to make sure that we have certain controls in regards to the offset. Right now we have the height over here, and we can control the height. We can hold shift, by the way, and just make a nicer control over so it's looking great. We can make use of the height, but we can't use the height by the fold as is. If we look at it, the height only has this one load parameter, but the offset that we want to make use out of is actually z value, but it's just going to give us a vector value basically. The input that it requires is vector. If I was to put this directly into the offset, it's going to do all of them x y and z, and it's just going to offset everything diagonally. So that's not what we want to do. We want to make sure that it's actually only affecting the Z value. For us to do that, we're going to grab ourselves IS node. We can just click and hold and drag this off the offset and search for something called combined X Y Z. It is a very useful node that basically turns normal folk values into a vector value which contains pre values. So now we can just connect this to the high Z value like so, and this will allow us now to control this setup in regards to only the Z value. Now, all we need to do is just make sure that this is actually set as a mesh setup instead of just instances. So each one of those lines would be treated as individual mesh pieces. F s to data, we got to use something called realize instances. If I was to click Shift and A, we can search for realized instances like so, we can click Enter, just to speed up the process, and we can just attach it over here. Realized realized instances will basically not change anything in regards to the visual, but it will treat each individual pieces as its own separate mesh, which is going to be useful because we're going to be adding the points for where the bricks are going to be spawning next. So we're running out of time, actually, we're going to continue on with this in the next lesson. Thank you so much for watching, and I will be seeing you in a bit. 5. Creating Dynamic Spawn Point Count: I. Hello, and welcome everyone to Blender basic Geometry node Brick Walls workshop. In a last lesson, we set ourselves up with curvature node, and we have the curves actually going upwards, giving us this nice pattern in the shape of what we want to brick walls to be. Now we're actually going to start setting up the points that we're going to spawn the bricks themselves. We're going to make sure we basically grab the information of the original curvature over here. And then we're going to work with the information to get the points layered across the first. A curvature basically. So let's go ahead and actually do that. We're actually going to grab ourselves the group input over here. We're going to click shittin D and start creating ourselves a brand new information at the very bottom. So we're going to start grabbing information from the geometry node to grab the curvature length information. So let's search for curve length. That's the one we're looking for. We're going to start adding this up. And basically, what this will do is, is going to grab the curvature, the original one that we had at the very bottom. Is going to actually, I'm going to click one. And show you this blue line over here. It's going to grab the original point. It's going to say that this is where the value of zero is going to be. And last point, where the curvature ends basically is going to be a value of one, and it's just going to go through this entire curvature and tell where the location of each part of the curvature is basically. That's the information we're getting. But before we actually make use out of it, we actually need to combine this with auber parameter that we have. We're going to grab ourselves by clicking Shift and A, we're going to search for maps. Node over here. We're going to just select this. We can click Enter and add it in like so. We're going to then change this math node within the math node. There are a bunch of options like so. We're going to basically change this one onto divide, just like that. This will allow us to get the curvature length and divide it by value. Reason we want to divide this by value is because we want to control the whip of the bricks that we're setting up. If we were not to do this, if we were not to actually divide a curvature length by whip, when we change the width of those bricks, it's actually going to start overlapping. We want to basically be able to adjust the information based on the width itself. So that's actually how we're going to do it. Then another thing that we need to consider is going to be how we're actually going to start setting it up. Right now it's going to give us those bricks as we talked in regards to overall setup. It's going to give us bricks across the line just by simply using this information. But before actually making use of of this information, we actually need to make sure we set a bit of a gap in between. So like this gap over here, we need to make sure that we slightly offset each one of the bricks. So for us to do that, we're going to add another maps no, like so. And this time we're going to just add a usual maps add node, and we're going to make sure that this is adding an extra one. So adding a bit of an extra one for the values. Is going to make sure that those gaps are being kept. And it'll give us those nice brick setup. So for example, right now, if we were to have this, we'd have bricks just being placed in regards to just, you know, having the bricks literally just touching one another. We want to make sure that they actually have the gap over here. That's what we're doing. And then afterwards, we need to make sure that this is not only being applied in regards to count. It's not only being applied to the original curve at the very bottom. We need to make sure that all the layers are actually getting the amount of count in regards to the setup. So it's going to be spread out nicely throughout this amount of count, basically, if we just to have one, it's going to be all right. But once we start adding additional count, it's not going to actually give us the same density of points. So we're going to basically multiply what we have over here. By the layer count. So let's go ahead and just simply search for multiply. We can just search, multiply instead of just maps node, and it's going to actually give us that same maps node, but with the multiply already selected. And then afterwards, we can just simply click and hold layer count and add it over here. And at this point, we can learn about a little bit in regards to how to clean up the setup. So whilst holding shift, we can hold right mouse button and drag it across the line. By doing so, again, shift and holding right mouse button and then dragon, we can create the line that goes across one of the Basically one of the links, and it's going to create this type of a point. This point over here, you can see that it doesn't actually do anything at this point. So if we were to try to moving it by clicking G, we can see that it actually helps us to get a nicer re route, basically. It's not going to be going across those lines over here, it's going to help us slightly clean up this overall setup, which is very nice already. Now, to help us visualize what we actually did is we're going to add points along the line. Now, if I was to make the points along what we created in regards to the values, we can go ahead and just drag it from the multiplier, search for points, like so, we're going to add points count, like so. And if I was to add the points directly onto the group output, it's actually not going to do much as it's just going to give us all of these points in one area. The reason being is that we haven't actually determined where those points are actually going to be placed. We're only basically setting up how many points we're having. So right now, because we added this as a count, we can actually select, see that the point count at the top left hand corner is saying nine. So if I was to change, for example, the layer count, it's actually going to increase. For example, by default, it's going to be one, it's going to give us free. If I was to change the layer count to two, it's going to give us now six. So it's basically changing based on how much layer count and hopefully how much width we're having. So the smaller the width, imagine the width being basically width of the bricks. So if we have those kind of bricks, we can have a lot of bricks like so, but if we have smaller bricks, we can include them basically into smaller area. Or instead of a smaller area, we can make use out of the same area and get ourselves more bricks within that same area like so. Basically, this will be small whip and this will be a large with. If we were to change this to a smaller with, it's going to start increasing the points point count over here, if I was to make the wi wi amount. Larger, it's going to start reducing the amount of points. We got to sells a nice setup for how many bricks, we want to spawn in regards to its density. Now we need to figure out how we're going to start actually placing those points, which we're going to be changing into bricks later down line, how we can change those points to be going actual actually in regards to those sections over here to the curvature. I'm going to actually real quick, use the Raser and just delete these parts over here to not get in a way. Like so. Now, in regards to this set up, We're now going to position these points to be going across the lines. For us to do that, we're going to make use out of something called sample curve. W to click Enter, and we can just add it in like so. And if I was to make use out of this, just going to be onto the points. So we're going to make use out of the position and just place it on the position of the points, and then put it onto the points. So we're going to see that it's actually placed over here. So what's happening? It's just being offset. So it doesn't actually look like it's doing much. The reason actually looks like that is if I was to plug in the geometry node, we can see that this is the starting point of the curvature. So it's actually doing something and it's just taking the point the original point of where the curvature starts, and it's placing all those points in one area. What we want to do is just we want to spread those points out to be going across all of those curvatures basically. So we're going to actually continue on with this in the next lesson. Thank you so much for watching, and I will be seeing you in a bit. 6. Curve Placement Along Points: Hello. Welcome back, everyone to Blender Basic Jome Brick Walls workshop. In the last lesson, we set ourselves up with the dynamic count for each one of the spam points. And now we're going to continue on with this setup and actually start making use out of the information for the curvature to to basically distribute it across the curvature that we have. So just a quick reminder, this is the curvature that we have. I'm going to increase the count just so we can visualize it a little bit better what we're doing. And I'm going to place the points back onto Jome. All right, so the thing that we're going to do is actually we're going to make use out of this value over here. So this is the value basically that's going to give us the amount of points along the curvature. We want to make use out of this. To distribute the points, and we can make use for now out of the curvature index. If I was to change this amount of points, I was to actually increase it, you can see that it's actually going up by one. These are areas where the layer count is, for example, if I was to change layer account to six, we can increase this and it's going to give us points like so. But it goes to six, it goes back to the original pose. The reason being is that it actually goes from value of zero. So the zero is going to be where the first curvature is actually going to start over here. Then when it goes to the next one, it's going to be actually one. Two, three, four and five. The last one is going to be five. So the six the six curvature is actually going to be five fifth on the index value over here. So that's what we're basically doing, and to actually distribute it along the line, we are going to actually just grab all of these points over here. We're going to click g, move it off to the side a little bit to get a little bit of an extra space to work with. I'm going to actually move this a little bit back as well. And we're going to basically in put it right after the adding. Over here. We're going to grab or sell something called Index, which will allow us to basically grab the data of the index, and we're going to divide it with the file value over here. So let's go ahead and do that. We're going to just search for divide, so we're going to divide it with the value for the curvature length. And we're going to actually make sure that it gives us a normal integer, not a decimal point. So we're going to use a value for floor like so and flooring the value if we now put it onto the sample curves. After flooring it, we're going to put it onto the sample curves. We're going to get this result. Now, once we start changing the layer, for example, it's going to basically keep up with this distribution. And speaking of flooring the value, I did realize something. This floor value will also need to be done after dividing the width randomness as well. The reason being is that we want to make sure that the count of bricks is actually just a single integer when we're adding the value up here. So we're going to basically duplicate this floor value and add it over here as well. This will make sure that basically the integer value is being kept the same. It's not going to do anything at this point, but when we are starting to work in regards to the set up, it's actually going to help us out to just make it proper layout basically. Now that we have this floored module, we can actually make use out of it right away. And the reason being is that we do need to distribute this across the curvature. So for that, we can actually make use out of the factor. If we start moving this factor, we can see that it's actually distributing this across the curvature that we created. So that's how it looks like if we were to just manually control it. But we can use index to distribute it along the line. So if I was to actually drag this across like so and search for floored module, Lord modular this time. There you go. This will basically basically floor it down in regards to the value that we're setting it up. In which case it's going to be after the adding value. So if we are doing it like so, if we just get the overall length for going across for the points, we can then add it onto the curvature of the factor and we can see how what it does, basically puts it on one and the other end. We just need to make sure we actually put it across the sections over here. I can actually lower down the width to increase the points at this point. So I'm at 24 points. We can see at the top left hand corner, and to actually spread it across this line over here. We can simply divide this value with the floored value over here. I'm going to quickly, actually, I'm going to click scape, and I'm going to drag it from floored modulo, search for divide, like so, put it down and grab the value from floor, add it in. Now once we add it to the factor, we can see I actually divides the value based on the curvature length information, and it gives us a nice set up. What is. I'm going to just move everything slightly to the left to the right, like so. I don't want them to be overlapping just like that. And that's quite right. So, basically, we've got to sell us the points. If we were to change the lay acount, I should increase the amount of points and keep them nicely spread out. The whip itself, we can lower it down even more to actually see how it looks like. That's again based on the curvature over here. I'm just making sure it checks out in regards to the amount of lines we have and everything of the sort. So now that we have the points, we can work on evenly offsetting them a little bit with some random values. So because of the way the curvature length works, it gives us the value 0-1, we only need to offset it slightly. If I was to, for example, add the value to the factor, over here, I would move everything all at once. What we need to do is basically we need to grab the value of one, which is going to be the curvature length basically and divide it. We're going to divide it by number of bricks per layer. For that, We can grab this floor value over here. We can drag it up, so we can just search for divide, click Enter, and we need to invert this value. Once we grab this value, we can see that we actually want to divide it one by the count, and it's not in a right order. We don't want the count to be divided by the value. So we can click Alton S while string over this node, and that's actually going to invert the set up. It's going to basically re route it onto this value. It's a nice little shock to make use of. Now grab this, drag it all the way up over here, right above the floor, right above the floor modulo, I'm going to move the index a little bit off to the side, we're going to keep this a little bit more in a mess. But later down the line, we're going to clean it up, so let's leave it for now as is. The divide value itself, we're going to divide it by one, like so. The value itself, if we were to use it by default, is going to be way too high. Although we're making use of the right density, we are still having too high of a value to control. What I'm going to do is, I'm going to drag this out from divide. To get the multiply, and we're going to multiply this by a quarter, so that's going to be 0.25. It's just going to lower down the overall value. After which, we can make use out of this to actually, if I was to just grab these, move them off to the side. After which, with this set up, we can. And now we can make use out of something called random value. I'm going to hit shift and A, search for something called random value, like so, I'm going to put it right in between those links over here. And we are running of space, so I'm just going to go ahead and grab these nodes, put them down ones like so a little bit, to open up a little bit more space over here. So random value, what it's going to do is basically it's going to grab the values between the set amount, in which case in this point is going to be 0-1. It's going to output a random value. In this case, we want to make sure that the value is going to be between minus one and one. And this way, we're going to allow ourselves to get a multiplying value from this from this output, so if I was to just now multiply this again. With the random valume. It's going to offset it in the negative space and positive space equally in regards to random distribution. So that's exactly what we want basically. Now, if I was to just put this by defold into the factor, we can see that this is what is going to give a slight offset in regards to the distribution. We want to make sure that we just basically add this to the value that we previously had. So that's going to give us a nice offset. So let's go ahead and do that. I'm going to search for ad. That's not going to find it. I'm just going to get a normal mass value over here and just add the values off. I'm going to hold Alton S and tap it like so, and there we go. We're going to basically add it onto the value and by simply adding each one of those values are going to be randomly offset with the values like so. If we want the value to be more extreme, we can just increase the multiplier, and that's going to basically multiply this value that we have over here with the random value and add it onto the already existing setup that we have. So that's how we're going to control the random offset basically. I is going to keep it as 0.25. So now we can actually add the value of the width randomness that we have over here that we already set up, and just add it to the multiplier. So for that, I'm going to just make a duplicate out of the group input, put it over here. And then add the width randomness to this value like so. Now, because it has the width randomness has a value of zero, it's not going to do anything. But what I'd like to make is, I'd like to just simply get a nicer control for this. So instead of just having a normal float, what we're going to do is we're going to change the subtype. Subtypes are really nice when we want to have a bit of an extra visual controls for the setup. For example, we can have angles, we can have percentages or factors. Factor is really good for this particular case because when we set this up with a factor, we get this nice graph over here. You can see that this is a blue highlight, and we can see it changing it. Going to get this kind of result. By default, it's actually really high values because we set it from infinity to infinity, and that's just not going to cut it. We need to make sure that the value, the minimum value is set as zero, and the maximum value is set to one. And now, if I was to click Backspace to delete it, we can see that we can now control 0-1, and it's going to offset those values with the multiplicative value of the random values basically. So we can keep this to somewhat of a low value, just to make sure that it works. So now if we're running out of time, we're going to end the lesson here, but in the next lesson, we're going to continue on and actually fix one thing that's quite crucial for this particular setup. The one that I want to fix is going to be, as you can see over here, it actually offsets the points to be going in all of the points to be offsetting a little bit. We want to make sure that all of the points at the corners are actually being kept constant. They're not actually being randomized, so we're going to work on that in the next lesson. Thank you so much for watching, and I will be seeing you in a bit. 7. Locking Position for First and Last Points and Recovering Crashed Blender Files: Hold on, welcome back to Blender Basics Geomet Node brick walls workshop. In a last lesson, we set ourselves up with a nice randomizer that's going to offset these points over here on our curvature. Now we actually need to make sure that the randomizer doesn't affect the first and the last points. The reason being is that if we're creating a wall, we don't really need the bricks to be actually offset on end points. We want them to be more straight to actually give us a nice set up for the wall to make use out of it, to make actually able type of geometry known. So for us to do that, we're going to make use of node called equal. I'm just going to find an area where we need to set this up with, and that's going to be over here, where we get all of the points, basically before we actually add the randomizer, we want to make sure that we grab those original points, which was giving us basically non randomized value like so, and we want to ask where the first point, which is value of zero going to be on the curvature and where the last point, which is the value of one is going to be. So we're going to grab it from after flow modular divide. We're going to grab this from here, and we're just going to search for equal. So we're going to make sure that this value original one is set to zero. Whenever it's at the very start, it's going to do nothing. Then whenever it's at the end, which is going to be one in regards to the curvature length, it's going to also do nothing. We need to go to go, there we go. We need to divide this equal value as well. We're going to hit chip D, we need to just divide it. Not divide it. We need to duplicate it and we need to set this value. If I want to set this two A, this one is going to be equals to one. Then we're going to get both A and both zero and one, the start and end points. Then we need to make use out of something called bul. Maps. So B in map needs to be set up to both of these values over here, but it shouldn't be, it should be. So either zero or one, if either what is true in regards to the placement of those points, then we're going to basically get the parameters, the values. I'm going to then, let me check real quick. Going to move everything actually even more to the side. I think that's all right. This one, I'm going to move it a little bit of the side. If it's zero or one, we're going to get the value with something called a switch. Let's go ahead and grab this ourselves a switch, and we're going to add the value over here. If it's either zero or one, if it's true, we're just going to use the value, that's before being added with the randomizer. If it's true, it's going to give us this. If it's false for all the upper points, basically, it's going to give us this value over here. And that's actually not going to work. The reason being is because it's not set with geometry, it needs to be set with a float value. There we go. Now it's actually going to give us the right value before you saw the red lines that meant it's not actually going to work. So we just need to change this up to be float value for a switch. And after we're done, we can just plug this into the factor, and you can see the starting points and the end points are not going to be affected. We're going to only be offsetting the values in the middle, which is exactly what we want. We want to have more control in between the bricks, but it's going to give us the same shape, the same form in regards to the setup over here. That is how we're getting this type of look. I'm just going to zoom out, show you because at this point it is turning into quite a squigly mess, which we're going to spend an entire lesson on in order to clean up. Think it's better to just have some time to just explain through certain points. All right. Now we need to actually instead of just having this visualizer setup with the points, we now need to turn these points into mesh lines. Mash lines will help you to get a first of all normal setup that goes for the curvature, and it will help us to just place those bricks in the proper position. What we're going to do is actually we're going to get a nice node called mesh lines. I'm going to place it at the bottom over here. Let's go ahead and search for mesh line. So if I was to just simply place this mesh line over at the very end, we can see that actually it's just giving us this one line. We don't want this to happen. We want to make sure that this mesh line is being used with well, the placement of the curvature basically. We already made use out of the mesh line, but in this particular case, we're going to make use out of it in regards to getting the count of bricks, which is going to be this value over here. So let's go ahead and just get as many as we need for the mesh line. So then in regards to well, we're only getting the mesh count mesh lines for the bottom piece. We also need to duplicate it with the amount that we have in regards to the count. So let's go ahead and grab one of the group inputs. We're going to just place this in to, we need to basically duplicate this mesh line with the lay account. We're going to actually search for something called duplicate elements. So we're going to just place in lay account to the amount. Once we have the mesh line, we need to actually set it up in regards to the account as well, and to make sure that we have it based on the lay account. We're going to grab the group output group input, and we're going to get ourselves the lay account to be used with points. That's going to be the easiest way, so we're going to drag it out. We're going to search for points, point count, there we go. Then we're going to basically get ourselves from the mesh line. We're going to get ourselves instance on points. And we're going to instance these Mash lines basically with the extra points, and that's actually not properly set up. We need to make sure that the points are set up with the points, and the mash line is set up with the instances. We want to make sure that mash line is being instance basically throughout the layer count. So that's what we're going to do. That's what we're going to get proper results out of. And now we can make sure that we realize instances. Last instances. So if I want to plug this right away into the outcome for the geometry output. It's not going to give us the right result just yet. The reason being is because we need to still set it up a little bit. And what we need to set up is basically just a position of it, which we already have actually. We already have the sample curve for the position. We're going to make use out of that. I'm going to actually drag this off a little bit more to the side. Move this like so a little bit, just to make sure that it's not overly wrangling. Again, we're going to clean up all of this in a short bit. Pado let's go ahead and attach this. We need to make sure that we grab ourselves the position, so we're going to from realized instances, we're going to set position, there we go for this geometry, and the position itself is going to be this position from the sample curves. If I was to put it over here, and place it in the output or the group output, we're going to get these lines back just like that. What's different about these lines is basically now we have the lines set up based on the width and the layer count. If I was to zoom in actually and change the whip, we can see that these actually think I lowered it too much. It's going to maybe crash the system. Yeah, that's exactly what happened. So I crashed blender. The reason being is that the small value was so small, it just added up multiplicative for the density and just caused this kind of an issue. So just make sure not to lower the value too much for the with wise, which is going to give you this. I'm going to try to recover my last session so we can go on to recover last session, and that's not going to work. Autosave, hopefully. Let me see if that's actually going to give us. There we go. All right. Ho. I almost lost the project. Let me just go ahead and make sure I saved this out. To not lose it. If you had the same issue, just make sure again to go to Auto Save. Hopefully, you'll find the project back if it ever happens to you. Hopefully not. Okay, so let's move on. In this particular case, what happened right now is that these mesh lines are set up with the density of the width. So if I was to increase this, you can see that the lines over here actually have less density, and if I was to make it smaller, you can see that these are basically increasing in regards to the width. And it also makes use at randomizer as well, changes that. And we're going to actually make use of this two set sts with the brick set up. And I think we can do that to continue on with that. We can do it in the next lesson. So thank you so much for watching, and I will be seeing you in a bit. 8. Geometry Node Cleanup: Hello, and welcome back everyone to Blender Basics. Jome Node Brick Walls workshop. In the last lesson, we set ourselves up with the lines actually make use out of the whip and randomizer. But let's go ahead and move on a little bit in regards to cleaning up this entire setup. At the moment, this entire brick generator is messy. So let's go ahead and actually make use out of the clean up tools that we have within Blender two make more sense out of what we have so far. So for saris. At the very start, we have over here, something that we created base curves with. Let's go ahead and grab all of these points over here. Like so, I'm going to click G, move it off to the side a little bit, just like that. With the selection, we can click Control J, too great to get this nice box around the seta. This box over here in regards to the seta is going to keep everything neatly organized. If we want to, we can just select a box, so click G, and everything within this box is going to be moved as well. So we just need to click on the side of the box like so to have it selected. If we want to move something out of the way of the box, and we can't because it's already in the box. You can see over here is being actually expanding the box automatically with it. We can click old P, and that's going to basically take the selection out of this box out of the group. If we want to place it inwards, we can just actually place it inside like so, and it's actually going to automatically place it into the box just by doing just by moving the object inside of the box like so. So that's something nice to know. Also select the box itself, we can click F two and that's going to allow us to label it. The label would just simply give us the extra text above it, so basically we can call this base curve base curve slick. That's going to be that. Now when we zoom out, we actually know what this specific functionality does. So we can just move it a little bit closer. In regards to this setup, well, actually, let's go ahead and get this renamed over here. We can just have it selected. We can click Control J to join them up, and we can click F two and call this Placeholder Placeholder mesh plans. So. And that's going to basically generate the mesh lines that we see in the setup. The other thing that we need to do is grab this entire setup over here. So this entire thing over here, I'm actually going to go ahead and delete these points over here. It's not really needed. So because we're using mesh lines, we don't need the points. And now we can go ahead and select this entire section just like that. So we can click Control J, join them all together. I'm going to move this a little bit downwards, like so. This entire section is actually creating the, if I was to click up two, actually creates the base curves or position sampling. That's what it's doing, and we can actually make use of it to clean up a little bit more. Yeah, I think that's going to be quite all right. Another thing that it's quite useful to know when we're cleaning something up is if I was to hold shift right most button we already did this, we can just drag it across and make this re route. But let's say that these re routes are actually not aligned. They're not looking quite nice. It doesn't help us to lines the entire set up, for example. We can click S and y and then zero, and that's actually going to straighten these two out. Once thes are straightened out, we can click S to actually scale them outwards like so and actually going to give us this nice straight line. So that's quite nice. The other thing that I would like to mention is, in regards to, for example, this equal over here, this is so many lines. It's way too many. So what we can do is we can hold shift, and we can just simply select those three lines by dragging across all three of them like so, and that's going to actually put everything into this one point. And it's just going to make sure that it's actually just collapsing them all basically. Then we can hold shift, drag this line over here and just set it up like so, and that's going to actually give us a much nicer setup overall, as you can see. So it's already looking much better. Something like this can also probably be used over here, for example. So if I want to, I can just move them like so. And here, I don't know if I should do that, actually. I think I'm going to actually move them a little bit off to the side, just like that. This line, can just move it off. So. There you go. It's going to be much better in order to visualize those overall seta. Then we also should know in the hiding of the nodes. There are two ways basically how we can hide the node set up. There is an arrow over here next to the nodes that will allow us to basically collapse the group set. Which is very useful for when we want to just shorten them down, for example, in areas, something like right the value over here, it doesn't need to be this long. We can just click on this R over here, and that's going to shorten it down, and it's just going to save up space, make it cleaner and easier to read in regards to the functionality. Then there is another way of doing it. If I was to, for example, select this group input over here, we can click Control and H, and that's going to basically hide all of the options except for the ones that we're using. So we're only using with randomness over here. That's going to basically hide everything else, except for that. And the difference between hiding it this and just click on arrow, sometimes it just is a bit cleaner. So I can click Control and H on this group and that's going to unhide everything. And if I was to click on this arrow over here, you can see that all of the points are still being shown, it's just being collapsed. So that's basically the difference. For this point, particular, I prefer to just collapse it because it's just showing the float. I just want to make sure that it just collapses completely. But for the group input, most of the time you'll see me just clicking Control and H and actually just hiding it out of the way. The downside of this, though, is that when we are creating the new parameters, which we are going to do in the next lessons, they do get extended in regards to the group input. So in the future, after we're done with the whole setup for the obt node, we do need to come back to those group inputs and actually click Control and H to just hide them out of the way again. So don't waste too much of your time hiding every single part like this, and instead at the end, just make sure to just collapse everything basically hide it. L so But other than that, we're pretty much done with the main setup for the placement of the bricks and we have it nicely cleaned up. Maybe for something like this, we want to move the group output a little bit downwards. And the rest seems to be all right. So for something like this, for example, I'd want to maybe have a nice clean line so I can shift, make a couple of lines, select both of these lines, click S and X, which is going to be horizontal, click zero, and that's going to give us nice arrow, click enter, and that's just going to make it vertical. So yeah, if you want it to be horizontal, you can click S y zero. If you want it to be vertically straight, you click S X zero. So that's the difference in regards to the setup. And then afterwards, once you have it like so you can click S, just move it upwards. So if you want. That's going to give us a real nice set up. The final thing that I would like to mention is if we want to, for example, have more of a label in regards to certain re routes for example over here. If I don't see where the position is coming from, I wouldn't be able to tell where it's getting this value from. I can just select this re route, for example, and click F two, then call it curve position, so now it's actually this re route is going to have its own name. It's really useful for and we want to make sure that certain values just have or formation around them prep. So we want to make use out of curve position again, we could now just simply drag it from here and we would know that this curve position is the right value basically. So other than that, that's pretty much it in regards to the setup. We can maybe reposition some parts. For example, this one, we can make them a little bit more equalized and whatnot. So, but honestly, it's all right. If we zoom out, we can see everything clearly and we can tell what part is doing what basically. So that's all we need to know. Maybe this part over here. We just going to offset it a little bit, like. So again, just selecting both of them. S y zero, L and just like that. All right. So now in the next lesson, we're going to continue on with the generator. We're going to make sure that we start working on the bricks themselves. So thank you so much for watching, and I will be seeing you in a bit. Okay. 9. Creating Brick Primitives Using Dynamic Width and Height Parameters: Hello and welcome back to Blender Basics Geometry node Brick Walls workshop. In the last lesson, we cleaned up some of the nodes, and now we're going to continue on with the setup. This time, we are going to create new instances, new points to create boxes to create cubes along the edges. Then we're going to sort out the rotation and angle for them to create a nice brick shapes. So for that, Firstly, need to figure out the middle point of those edges over here. So if we zoom in a little bit and increase the width, we can see that actually, they have basically edges for each edge, we want to make sure that we're spawning the cube right in the middle. So we need to make sure we find the centerpiece basically for each edge. So just like we did previously, we're going to get ourselves points to be helping us to visualize, we're going to be spawning those cubes basically. We're going to for that, we're going to hit Shift A. We're going to search for points, and we're going to place it in. I'm actually going to make this window a little bit bigger to make myself easier to work with this setup. And regards to the amount of points, we're actually going to make use out of the main size. The main size is a very nice type of a node that will allow us to get the edge count. That's exactly what we want. So if I was to just plug it in to the points, we can now place it into geometry, and of course, we need to set up the position for them. So for that, and we'll actually make it a little bit easier for ourselves. I'm going to drag it upwards. If we were to just simply set it up for the points, it's not going to have any position. So for that, we're going to get a position from here. We're going to grab it and sample index. Index, which will grab the value, which we need to make sure that we grabbing the vector index like so, and we need to make sure that it's actually an edge. This way we're grabbing the right parameters basically, and for the position, it's going to be just simple position like so. For the index, it's going to be index of the curvature that we have. So index, so if we were to now place this in a position, we should get ourselves to original place all the mesh line positions, like so. So everything is still going to work in the same way, so the height, the random width, and whatnot. Right now, if we look at it, starting point and the end point, is going to have the offsets, which the reason being is that it's not actually setting up the points at the end, it's actually going to go for the median points in the middle, basically, the edge points, but we're going to set up the cubes to be touching the edge basically. So We now want to make use out of cubes to get bricks. For that, we're going to make use out of something called instance points, Instance points. Really nice and set up. Is now not going to give us anything because we need to tell what instance we're getting. So we're going to search for cube. Primitive cube. There we go. If we were to just simply add this to the instance, it's going to give us this. The reason being is that the scale is actually quite too large. Let's go ahead and change the scale for now. We can simply click and hold a lot mask but then drag it downwards like this to grab all of them at once. We can set it to 0.1, and that's what we're going to get for now. We want to make sure that we're changing the scale for this. Set up this, we want to make sure that the cube default setup is set to one, one, one. Otherwise, it's going to offset everything. We want to make sure that the parameters that we're using is actually going to be based on the whip, on the height, and our parameters basically that we're going to be setting up in a bit. But for now though, the visualizations, that's what we're going to get. I'm just going to just increase the wi randomess just a little bit so we could actually see how this looks like. All right. So We want to start off by having control for the scale. We have X Y and Z for the vector. We want to make sure that we break this off, so combine x y z. This is going to basically go right in NF. Then this point is going to let's actually see, we're going to set this old 0.1. I'm going to check what x does. So it's going to give us the whip, which is what we're going to use and y and z is going to basically give us other scale parameters. Z is going to be going upwards. The y is going to go for the whip. I'm going to set both of them to one value. The reason being is that we want to make sure that it's actually set up with the height as we are increasing the height and offsetting the curvature lines, the rows. We're going to make sure that we are increasing the scale, the overall scale of those bricks as well. So we're going to grab our selves group input. Over here, we can just search for it and get the result. We're going to attach this to the height for x and y. So I'm going to attach it to the y value, and I'm going to also hold shift, cross, using right mast button, and just attach it to the eta value L. This way, We have ourselves very nice control for the setup of x and y, which is going to control the hg. The reason we don't want to just do it them separately is basically, we don't want to have too many micromanagement, too much control over the overall setup of the geometry. We want to make it as simple as possible whilst having the most control out of the geometry node usually. So Whenever I see a lot of micromanagement, a lot of options within the Geometry node, it gets too finicky. It's not really usable. It becomes sort of unusable as a geometry node. It's much easier and faster at that point to just manually create something, you know, with three D tools instead of just using the geometry node. So the point of geometry node is to get an access to a quick generation or the ability to generate the desired result out of the simple parameters, basically. And I think that's the best way of putting it. So this case, have a nice set up. We need to control now the x value. So the height is nicely set up. For the x value, we are now going to make use of, again, the set position outcome over here and sample the index itself. We're going to go ahead and duplicate this. This time instead of vector, we want this to be as a float value. But this is also going to be as edge. The reason being is that we want to just have value 0-1. So not zero to one, it just has to be a float value that goes into the x over here. But we need to make sure we tell what kind of information we need. So we are going to grab ourselves the set position outcome over here to geometry. Al Control. Reset it, like so. I'm going to actually just move this a little bit. So clicking Control z because I don't want this to be part of this. I'm going to click Alt and P. There we go. Right. So for the value itself, we want to make you something out of something called Edge vertices. Edge vertices will allow us to grab the position of the first vertice and the position of the second vertice. And basically remember the lines that we had previously, which is going to be over here. We can actually Yeah, we can actually preview this setup if I was to click Control and shift, click and hold Control Shift, and tap on in this, we can actually get ourselves a viewer node, which we've not talked about it, but it's a really nice type of a setup. So by clicking and holding control ship, tapping on any geometry node, we can attach geometry and the value. And that's going to allow us to set up the well, sort of a preview. So we want to make sure that we get the entire distance of, for example, this angle over here. So from vertice from the first vertice, if I was to go to edit mode real quick. And yeah, I don't think we can actually preview the vertices, unfortunately in this particular case. If I was to grab the vertice at the very start, and at the end, we want to get the entire distance and we want to make use out of that distance to get the with or the brick, basically, if that makes sense. So let's go ahead and just make use out of the edge vertices, which will allow us to get those positions of the vertices. We're then going to search for distance vector map distance. And by getting the position one and position two attached over here, we're going to get ourselves the distance outcome value like so, and the value allow us to get the sample. But we also need to make sure that index is set up with the index that we have over here. Thing Yeah, that's pretty much it. Let's go ahead and try this out by attaching this to the x value. We can now change the with, and it should there you go should increase the setup. So I'm going to lower down the height. Next so. And we are already getting a nice set up. You can see the bricks are being nicely set up. The only thing now is that if you look at it from the top, they're not actually positioned, they're not rotated properly. So we need to make sure we adjust the overall rotation based on the curvature itself. And I think we're going to leave this lesson for now, we're going to continue on with this in an next lesson. Thank you so much watching, and I will be seeing you in a bit. 10. Aligning Brick Rotation to the Curves: Hello, welcome back everyone to Blender Basics Geometry Node Brick Walls workshop. In the last lesson, we set ourselves up with a nice index that gives us a scale of the bricks, especially for the x value over here. So we got that going for us. Now we want to make sure we actually get ourselves in a nice setup for the bricks in regards to the setup of the rotation basically. So let's get that started. We're going to firstly duplicate the simple index from here. We're going to click ship D and make a duplicate from the first one. We want to make sure that it's set with vector and edge. And then in regards to the index, we're going to pretty much use the same one. I'm going to actually just duplicate this one to make it easier for us just so we wouldn't overcrowd this entire set up. And let's see, for the value. We'll set it up a bit differently, but for the geometry, we can actually just drag it from this reroute over here from the geometry node, so to get this type of result. Now, in regards to the value, we're going to also make use out of the edge vertex. I'm actually just going to select it all and move it off to the side a little bit. L so. I think we can just grab these two points as well. Move it off just like that. All right. That's a little bit better. So we're going to make use out of the vertex edge vertices that is, the position of the first and the second point similar to distance. This time, we're going to make use out of the subtract. So what I mean by that is, if I want to click shift in A, we can search for subtract subtract. We're going to actually just search for vector math this time. Vector math will allow us to get x y and z coordinates and just subtract it from one position to another. We want to make use out of it. So we want to Yeah, we want to subtract the second position. We want to take away the value from the last point, we want to take away the value of the first point basically to get the nice value. So if we put this into the vector value over here, we're going to basically at this point sample. Actually, I just want to move this a little bit off to the side. There you go, something like that. All right. So we're basically getting each of the individual lines, and we're getting some information from that. So this will give us basically the information of each individual lines, which we now want to align two vectors. So if we search for align, er two vector. That's the one we're looking for. And this will give us simply the position, the normal position of each individual setup. If we now just simply add this to the rotation, like so, we're going to get this result, which is not what we want. Let me just have a look on what's happening and I just realize the issue. Instead of subtracting it, I added it, which gave me this type of result. I forgot to subtract it. So by subtracting it, basically, as we said previously, we're getting each individual locations of the lines, which we then are able to get the normal position out of them, and we're able to rotate or each individual bricks based on that. So now we can even test this if we get this set up, we can rotate it and whatnot. And get ourselves a nice set up. We can even click E. And I'm just going to extend it just a little bit. This is for the sake of demonstration just to get more of a curvature just to see what's going on with these bricks. So this is what we're going to get, and it's already looking pretty nice for us. And yeah, that's pretty much it in regards to the rotation. Now we're going to continue on with just getting better design out of these bricks, let's say, Before doing anything actually. At this point, it might be a good idea just to make sure everything is working properly. So I'm going to go onto modeling mode, and I'm going to test this entire set up. So first of all, brick count, does it work as a tended? It seems to. Once you've set it up to lay account a reasonable amount, it seems everything working. With is going to give us different scale in regards to the width of the bricks, which seems to be working right. And again, I went a little bit too low. It seemed to have crashed my blender. All right. I seem to have been able to recover it. So With is going to give me a lot of issues if I keep on messing around and keep on lowering. So to fix that, what we're going to do is we're going to go onto the width itself, and if I was to lower this to something like value of 0.1, I don't think I will ever go to a value lower than 0.1. So what I will do in this case is for the width, I'm going to set the minimum value to 0.1. Now whenever I'm going to go lower, try to go lower, it's never going to do that. Let's say at some point, if let's say at some point you do want to go a little bit lower, you can do it manually. You can click on the value itself and you can just type in 0.08, something like that, and you can see that it's actually going to give you value that's actually going to be smaller than that. But again, once you reach past that line, it's going to not want to go lower. So that's probably a good idea to set up in order to prevent any crashes for the future, and that's going to be it for now. The other thing that we should test out is how it's going to behave with randomizer. So let's have a look. For now, we have bricks like these. If I was to change the randomizer. I'll go back on to modeling mode. Actually just to see it a little bit better. We're going to see that actually behaves in the right way offsetting the scale of the bricks. We do still need to make sure we are offsetting the bricks themselves to make sure that it's not just completely going straight. If we were to just take off the with brandness, it's actually just going to be going straight. So we're going to be working in regards to that. The height itself, it's going to just increase the scale of the bricks in regards to the height as well as the wi itself. So that's pretty good. And yeah, in the next lesson, we're going to start working in regards to just making sure that every other brick is offset, and end gaps are not just even evenly set up. So we're going to work on all of that starting with the next lesson. And for now, I think we're going to end it short with in regards to this son. Thank you so much for watching. And I'll see in a bit. 11. Creating Even Row Offset: Oh. Hello, and welcome back. I've going to Blender Basics Geometry note, Brick Walls workshop. In the last lesson, we set ourselves up with a nice curvature rotation. Now we're going to make sure that we do have some bricks that are actually offset a little bit. Bile doing that, though, we need to make sure we select every other line. And we're actually going to start off by going to basically delete the edge. So let's go on to the placeholder mesh lines over here. I'm going to click Control shift and just tap on set position just to see those lines again. And this way, it's going to be a little bit easier for us to work with. What we want to do first is we want to capture the point of formation before actually doing the manipulation. Let's go onto. Let me just check real quick. Mesh line. At the very start, we're going to add something called capture attribute, capture attribute, there we go, and we're going to add it over here. This is going to make sure that before turning this into instant points, we're actually grabbing the value from it. And the value that we need to grab is we need to determine what we're grabbing basically. For this value over here, we're going to make sure that we're setting it up as index. There we go. The index itself needs to be an integer. So let's go ahead and set this up. L so, There we go. Then another value that we're also going to need to capture is going to be after the instance points as to well. This one, so basically we're going to get the rows afterwards as well before we actually realize it into the instances. Let's go ahead and capture another set of values. This one is going to be set as instance. We just go ahead and check integer instance. There we go, and we're going to get index value, just like we did previously. So we got the information for the for the first line basically, and we also got the information for the rows. And now we're just going to actually make use out of it to delete it. So the node that we're going to use is going to be called the leap. The tree. If we were to just right away put this in. We actually make it a little bit easier for us, and I'm just going to hold shift and just do this real quick to get myself a single line, and I'm just going to put it right over here. We actually just want to move it inside of the box like. So if we were to just set it up with this normally, it's going to delete everything. We need to make sure that we set it up with a selection. I'm going to drag it upwards. I don't think it's actually will affect it a little bit. I'm just going to lower it down there we go, just to make sure that it's not getting in our way. So we need to make sure that we tell which geometry to delete and we want to make sure that we're only deleting the first first ones basically. So we're going to grab this from the first capture point. We're going to grab this search for equal. We're going to make sure that it set a zero. So every first that we're going to grab is going to be zero, so that's what we're looking for. And this has to be with a bulion. Boolean math set to end. So if this is equal to zero, if it's the first one that's equal to zero, and if it's also every second row, we're going to go ahead and delete it. Right now, if I was to just put this into here, it's going to, I believe, it's going to delete the first ones like so. Actually, it's not going to be quite visible. If I was to change this to r, then we can see that it actually just deletes the first one like so. We can even move it across and T which one is deleting. Basically, we just want to make sure that it's deleting the very first one. And I'm just making sure that Yeah, because basically we're just deleting the first point is deleting the edge at the start, which is what we want. But in this case, we want to make sure that this is set to boolean end. So when the first one is being selected, and it's also every second one, which the way we're going to do it for every second row is going to be by making use out of this attribute, we're going to make use out of floored modulo, which we already used. Modulo basically calculates the remainder of a division, and it ensures that the result is always non negative. So in this case, if we are having the value of two, and if we're checking that this outcome is equal to one, We're going to basically getting ourselves every other one, so a value of two, four, six, et cetera. If we then set the sub to be end for the bulion, you can see that every other one now is going to be partially taken off. So that's exactly what we want. Now, if we remove the viewer, I think here I have the viewer. I'm just going to go ahead and delete it. We can see that these breaks have been partially removed, and if I was to increase the layer count, that's actually starting to look pretty nice. All right. Now that we have ourselves a nice offset for deleting each one of the starting brakes, we're going to move on and actually offset it a little bit as well to make sure that each one of those gaps, even without a randomizer are not going to be straight lines. So for a sa, we're going to go all the way back onto the base curve positioning sampling. And after the switch, if we were to just simply add a map node to start with. So let's go ahead and search for map node. We're going to add it over here. We're going to notice that when we start adding, that's a little bit too much. Let's go ahead and add zero and then hold shift. When we start adding it, it's just going to start offsetting all the points. We only want to make sure that we offset it onto every other one. For us to do that, we're going to find ourselves the rows, and that's going to be if we were to find it there we go, it's going to be under the floor value over here. Let's go ahead and grab this value. We're going to then get floored module. Floor module, there we go. We're going to set this the value of two just like we did previously. Now we're going to basically say if this is equal to one. If this is true, then we're going to use a switch basically for a float. There we go. If this is true, we can go ahead and add this value over here. If it's false, we can just add it like so. The original value, not offset. Now we can add this in. Once we start moving this out, we can see that this is actually, I'm going to hold shift. This is actually just offsetting each one of the bricks. We can actually move them closer and have those smaller gaps, for example, like so, and we can also make use out of it to just slightly offset each one of them. I'm going for now just keep it as 0.04. That's going to give us a nice value, but once we start working with whip, let's see if it actually stays in regards to the whip, we might need to want to, for example, offset. I thing that we do need to do is create the parameter for it. We'd basically be able to control this value within the settings. For us to do that, we're going to get ourselves a new parameter. I'm going to just create a new socket. We can keep it as a float. A subtype set two factor. Minimum can be zero, maximum can be one, so we can have a nice control over it. And one thing that we do need to consider is, yeah, we're going to make sure that we are actually having a nice dynamic change when the width is changing. So for example, if I am to increase this with, over here, you can see that now it's being offset off to the side, it's not in the middle anymore, but once I get closer to the smaller width, it's actually going to the up side. So we don't want to make sure that it's actually being kept in the same position. And that's going to be within the width within this value over here, within the divide. So yeah, we're just getting ourselves the set up. So after width, we're flooring it, and we're just dividing it by one. Sorry, we're dividing one by this value to get the right result within the curvate length. So with that, we're going to just actually just bring it with a multiply value. I'm going to get ourselves a new group input over here. I'm going to then grab this divide with multiply math node. We can change this to be multiply like so, and we're going to Oh, I forgot to change the name of the sock. Let me just go ahead and do that real quick. We can call this odd even offset, like so, and now this is going to give us the right result. We're going to go ahead and just combine this with the wide section over here. We're going to make sure that we have a couple of these lines over here. That will help us to just get the link normally set up, and we can just attach this value over here, which is if I was to actually, yeah, we'll just keep it over here. There we go. We're just going to give us this result. So now, once we start moving this, we're going to get ourselves a nice value. So the only thing though is that I do want it to be going the opposite way actually. So what I will do is, I will just multiply this by one. Yeah, that's what I will do. So Maps know it again. Add it over here, set it to multiply. Think this minus one. This will just invert value, basically. The reason I'm doing it is because I do want to be going this way. Now when we are moving it like so, we're actually going and filling in these gaps over here. Otherwise, as you saw before, it was just going the other way and making the offset go to get to get these bricks to have two lines two types of bricks while the ones that are odd numbered. Would only start way later down the line. So by having this, we can now have ourselves a nice, evenly spaced setup. And as you can see over here now, we have ourselves a nice setup on the other side as well. So that's actually really, really useful for us. All right. We're going to end this lesson here, and next lesson, we're going to continue on with the shapes of the bricks. So thank you so much for watching, and I will be seeing you in a bit. 12. Working on Brick Gaps: Hello. Welcome back ever to blend the basics Geometry node brickwall workshop. And in the last lesson, we set ourselves up with a nice width offset or even an odds. Let's go ahead and test it out real quick. I do want to test out when it has more of extreme values. For example, something like this. And if we set this 2.5, it's still going to be more or less in the middle. Based on the rotation, we can see a little bit differently, but yeah, it's going to be quite all right. We also would like to ideally set up. For example, if we want to have straight type of brick wall edges, we should totally be able to do that. And we can actually do it by a simple setup if I was to set this to zero. We can see that we're deleting the first one over here. And I think in this particular case, I'd like to have an option, basically, bulion option that will allow us to take off or odd and even type of deletion. Real quick. I'm just going to actually lower down the width just to get more bricks over here, L. We're going to find the delete geometry over here. We're going to set it up with a bleion. So let's go ahead and actually get ourselves a socket or a bleion We can call this one offset delete or something of the sort. I think that's going to be quite all right. Like so, and we are going to get ourselves a bleion over here. We need to get ourselves a switch. Like so. If it's true, we're going to actually have it over here. If it's true, we're going to have like so. If it's false, we're just going to get a normal setup, and then we're just going to plug this outcome over here. Just like that. Then for the bully itself for the switch, we can just take it on and off, and that's going to give us a nice control overall. So. That's quite nice. So we can even offset it like so. We need to make sure that we have the group input set up. I'm just going to go ahead and attach this to the delete switch and click Control and H. Put this underneath, so, and there we go. Now we can either have this to be completely straight L so, or we can turn this on and just offset it. By default, we are going to have this turned on. Before actually moving on, let's actually set ourselves up with all the values required for the default setup. So For layer count, let's go on to the default one and get the default value to something like eight, that's going to be more than enough for the width. We can change this to a value of 0.3, so that's going to give us this default type of a result, and yeah 0.3. Then with randomness can be set to something like 0.1. Why not? Let's go ahead and put this down a 0.11. The height can be just kept as 0.15. So. This is if we were to hover over, we can hit backspace. That's what we're going to get. That's quite all right. Then we have even this can be as set as a default 0.5. That's going to quite all. I just going to check these values over here. While we're at it, we're going to set ourselves up with a couple of extra parameters as well. We're going to click on the plus symbol. We're going to create our cells something called layer gaps. Layer gaps. We want to control basically the spacing in between those bricks. Then the next one is we want to create something for controlling of brick gaps. Brick gaps, like so, and we're going to add a number one, the final one brick gap randomness. Just like that. Now let's go ahead and quickly change the setup for it. Later gaps, we can set the minimum to be something like 0.1. Minimum can be zero, maximum doesn't matter for us because it can be up to a person. Then for the break gaps and the pre gap rindess, all we need to change is the minimum to be just a minimum value of zero, so it wouldn't go into negative values and the rest are okay. So for the gaps, let's go ahead and check real quick. The layer gaps. This is actually going to be quite easy if we go back, the base curves are basically what created these lines over here. All we need to do is offset these ones, and that's was with the offset of combined X Y. So all we need to do for this particular case is grab ourselves a map node added over here. And change this to be adding, and there we go right away, we can see the difference that we're going to get. So we're going to just attach this to the layer gaps like so, and I'm going to hit backspace for the layer gaps. And let me just go ahead and delete the viewer. There we go. We're going to get this result. The default value maybe a little bit too much. Let me just hold shift and see what value I'm happy for the default set up. So there we go. 0.01, it's going to be giving us those nice bit of gaps. All right. Let's go ahead and go to layer gaps real quick. Change to 0.01. There we go. Nice setup. Mm. For the gaps themselves to actually have those gaps in between bricks. Let's go on to the section where we created the primitive boxes. Actually, I'm just going to move the oh, my goodness. This has moved quite a bit to the side let me just go ahead and fix this up real quick. There we go. We're going to need to clean up a bit. But yeah, there we go. I think that's a cube that we're creating. I'm not sure what happened here. I think I just moved it all, and I left this off a little bit off the side. Let me just grab this up real quick. L so and move this a little bit to the side like so. All right, we're creating a cube, and we're scaling it based on X Y and Z. The X Y and Z was over here. Let me just go ahead and actually move this off like so. And for the x value, it's basically already set up for us. All we need to do is just subtract the scale from the x to control its gaps. If I was to grab a math node, add it in on before the x is being applied, set us up to subtract and there we go. We can now control the values easily. So we can attach this with a group input. Input brick gaps. The only other thing that we need to do is going to be simply some randomizer. I'm actually just going to hit backspace or going to hold shift and just increase this by a little bit just to have some visual representation or the gaps. The thing that we need to do now is the randomness. We have brick randomness over here, and we're going to set it up quite easily actually. We're going to L et me think for a second. Yeah. We're going to make use out of the same group node over here. Going to clear control in H. We're going to grab ourselves random value over here. Just like we did previously, we're going to make use of minus one and one, and we're going to have this multiplied. Let's grab a map node. We're going to multiply this with the random value. There we go. I'm going to just move this off onto the side, and there we go. Now we just simply need to put this over here. Um yeah, I'm going to just simply clean the subj a little bit. There we go. All right. Yeah, these ones can go over here. And once we actually multiply this value, so we can just subtract it from a No subtract sorry. We can just simply make use out of this value over here by making use out of another map node, and we're just going to add it. There we go. We're going to make it nice and simple for us. I think I've just moved it all a little bit off to the side. Just go ahead and fix it there we go. All right. So yeah, we basically let me check it one more time. We add this random value that's been multiplied. And there we go. All right. So yeah. In short, basically, we're getting this brick gap value, and we're adding a multiplicative for the random value of brick gap randomness. So once we start increasing this, we should get ourselves some randomness in regards to the gaps. Even if the gaps are set to zero, It should still work nicely. We can either increase the randomness, or we can just have a normal type of brick gaps route the setup. Yeah, that's pretty much it in regards to the set of the gaps. Now we need to work in regards to more of randomness of the bricks. All of them are still looking to formal in regards to the setup. And we still need to work in regards to having some offset and whatnot. So I'm just checking, making sure that everything works quite nicely in the setup, which it seems to do. All right. So, in the next lesson, we're going to work in regards to more of domes, more szation of the bricks. Thank you so much for watching, and I will be seeing you in a bit. 13. Rotation and Transform Offset: Hello and welcome back on to Blender Basics geometry node brick walls workshop. In the last lesson, we set ourselves up with a nice gap eration, and now we need to make sure we add a bit more of a stylized look to the overall setup. So right now, if we have a look at it, no matter which way we're going to set up this brick wall, it's going to be very rigid. It's going to be very orderly, and the pattern itself is going to look nice. But in certain cases where we want the brick wall to be more jaggered, we want to make it look like it's maybe about to fall off or maybe it's been wvered, we need to have certain controls over the setup. So first things first that we need to consider is, well, let me just go ahead and actually fix this up real quick. I was going to straighten this up. First things first that we need to consider is the rotation of the brick walls individually. So each one of those because we set it up with the pereic cubes, As instances, we can just grab we can grab the rotation, the original rotation of each one of the individual cubes and just simply randomize it, so they'll be slightly offset basically. And speaking of offset well also want to make sure that basically each and every single one of those breaks have the ability to be slightly going. Let me just go ahead and show you real quick what I mean. We want to make sure that each one of those breaks out the ability to either go one way or another way, just to slightly offset it in regards to the position. So we're going to make sure we do that as well. Go back to the geometry node, let's go ahead and see what we can do. For Ss, we'll need to get ourselves a couple of values. We're going to create a couple of options within the interface. Let's go ahead and create an input for rotation randomness. As well as the offset randomness. Like so. In regards to rotation randomness, we're going to go ahead and pine ourselves the rotation instance on points there we go. This is going to allow us to basically, instead of just doing it for each and every single one of the cubes all at once, we want them to be done after all of the instances are being placed over here, and this will give us the control over each and one of them separately. We can make use out of something called a rotation instance. We can make use out of something called rotate instances. This one over here. Let's go ahead and just simply add it right right before the group output. And now let's go ahead and see what the rotations do basically. So we have x y and z, we need to determine which actual value we need to make use out of. X is going to give us rotation back and forth, so we don't want a We might actually want this. Let's go ahead and see the y axis. This one would be perhaps nice if you want them to be slightly angled in one way or the other, and Z is going to give us this sort of rotation. All right. We don't need to do all of them at once, actually, I think just having a bit of a control over the again, offset is going to be more than enough for us. All we need to do for this is actually grab or already set up type of randomizer. So let's go ahead and see where it is. Actually just going to move all these bits a little bit off to the side. So. We already done the randomizer over here. I'm just going to grab these basically the group input, multiply and random value for it. Going to shift in D, make it off to the side, like so. Going to click control and H to make sure that the values are okay for this, and it's being plugged into the multiply. This on the other hand needs to be different ones. So let's go ahead and actually just hold control, set it up with random rotation randomness. For the rotation itself, we only want to turn one of them, so I think we're going to use the Z value. The reason being is that if it's slightly offset like so or this way, it's going to look very nice. Let's go ahead and actually try it out. We need to just go off from the rotation and search for combined x y n to get the vector values, and we're going to plug this into the Z value just like that. Now we can go ahead and test it out, so let's go ahead and see what it looks like. So Yeah, I think that's actually pretty good. We've got to selve some random rotation, which is looking very nice. The thing that we can also do is we can go onto the rotation randomness parameter and we can change the value from the subtype to be an angle. This will give us a nice angle representation. That's actually going to be really good for us, how much we want to add basically. To get the offset, we're going to actually do basically a very similar operation to rotate instances. Instead of rotating, though, we need to translate it. So let's go ahead and search for translate instances over here. And what we're going to do is we're going to put it right before the rotate instances. The reason being is if we try to offset it afterwards, I'm actually going to show you real quick by adding it here. It's going to let me just go actually and add rotation random rotation. Going to basically do it based on the local rotation that it has, and that's going to make it chaotic, way too chaotic for us to control. For example, if I start moving this over here, and once we start rotating the setup, you can see that the bricks are actually moving from their locations, we don't want this to happen. We want to make sure that we're actually offsetting the values of the shape of individual bricks basically off the wall before we actually rotate them. So I'm just going to real quick, just unplug this like so. And I'm just going to put the translate over here. So now when we're actually doing it, we can see, even though we rotated the bricks, they're actually keeping that conformity in regards to the setup. So if I was to offset it like so, we can then afterwards rotate these bricks, whichever way we want, and that's going to be totally okay with the overall setup. What we need to do is, of course, we need to make sure we set it up with the random transformation. We want to make sure that each individual brick has a bit more of an offset, and we're going to make use out of the same actual setup as we have over here. I'm just going to a it's a little bit smaller like so. I'm going to grab all of those four nodes. Actual just going to move it a little bit more to the side, like so to get more space for us. Going to grab all of those four nodes, put it off to the side. And in this case, let's actually check which transformation we want to do. So, as we talked before, we want to make sure that it goes in those directions. So if we try it with the x, that doesn't give us the right setup. It seems like y is the right yeah. Definitely is the y that we want to do. So for the combined x y z, we want to change this up to be two y. So it's only going to be affecting y and. Once we plug it in, we're going to get ourselves a random offset. Which I just realized that we didn't set up the rotation randomness to be set up with a different value for this. Offset randomness. Once we plug it in to translate instances, we're going to get ourselves this type of a result, which is looking pretty nice. We can, of course, shift, slightly offset them and see what we're going to get. Yeah, it's already looking pretty good for us. The next step that we're going to do is actually work on shape of the bricks. Each one of those bricks, although look like bricks, they still don't have an artistic shape. They're still just, you know, gated cubes. So we need to work on that in regards to the surface. And we're going to continue on with the bricks themselves in the next lesson. Thank you so much for watching, and I will be seeing you in a bit. 14. Brick Surface Bevel and Displacement: And Hello and welcome back everyone to Blender Basics Geometry Node Brick Walls workshop. In the last lesson, we worked on some of the offset for rotation and transformation of the bricks. Now we're going to continue on and actually start working on the surfaces themselves for individual bricks, basically. Let's go ahead and find where we spawn those bricks. So I is going to be this one over here the cube. That's what's spawning it for us. I'm just going to actually move it off to the side, so just to make it a little bit nicer for us and get ourselves some nice space to work with. So, what we have right here is if we go onto the y frame mode within the viewport shading, we can see that this is the type of geometry that we're going to get. By default, the vertices is going to give us two by two by two. So basically in each corner, there's going to be a vertice. If we increase it for vertex x, you can see that it actually creates sort of an edge loop that goes right in the middle of the brick. So we can actually increase this to help us with a displacement for the bricks to make sure that we're actually getting just a nice overall geometry to work with. But the thing is, if we are just manually keeping this amount of vertice. Once we start changing this, for example, for the whip, I'm going to just change it, and you can see that it is actually just basically squishing this overall density. We want to make sure that this overall density for the bricks is actually going to be somewhat constant when either we change the whip or we actually change the height as well if we are increasing it. We want to make sure that we're keeping all density basically off this brick wall in regards to the mesh constant. So what we're going to do is, we're going to grab ourselves a group input. Let's go ahead and grab group input like so. And we're going to basically divide the width by the height. That's going to give us nice consistency in regards to when we're changing the width or the height. And let's go ahead and do that. We're going to search for divide or ser maps. Divide. There we go. We're going to just divide one by another. If we were to just attach this directly, we're going to get this. But what we want to do is because this is just the vertices, we want to actually We want to make sure that it's actually for the edges, amount of edges, so we are going to multiply this by two to offset that. Let's go ahead and actually just get multiply. Actually just maps. Multiply. One more thing, by the way. The main ones have a shortcut. If we have the nodes for maps, we can open this up we can click, and that's going to instantly give us the multiply. And that way, we can just quickly go between the functions, subtract will be S, add will be A, and so on. And these are just for the main functions at the top left basically. So that's a really quick and easy way. Now that we basically multiply this by two, we are constantly going to have this type of density. If we have a look at over here, I'm actually just going to zoom out a little bit, and we can change, for example, the whip. We can see that it's still being kept the same like so, changing the height. We'll also make sure that the overall density is being kept the same. Let me just go ahead and click control in ZD and change back the width to a reasonable brake size. Let's see. That's a little bit too much. L so. Now that we have a proper resolution to work with. We're going to go ahead and actually set ourselves up with a bit of a beveling to crease off the edges basically to soften them up. The thing is, with the jump to node, there's no currently no node that actually gives us beveling option. The only way for us to do that is realistically to just make use out of subdivision surface, which there is a node of let's go ahead and actually make use out of it. We can click **** that A for subdivision mesh sorry, not subdivision mesh, subdivision surface. Subdivision surface. There we go. Now, if we add it right away, we can see the type of result we're going to get. It's just going to smooth in this entire mesh off. If we were to increase the level, we can see what we're getting, and it looks like some sort of pills or something of the sort, but we also just need to increase the edge crease and by just changing the edge crease, we can see the type of a difference we're going to get. Don't worry about the topology itself. We're going to moving it off later in regards to the visibility. We're just looking at the geometry it cell. So I'm not doing it at this point. I usually just keep it until the very end. The reason being is that it helps me to visualize how much topology is being worked with, and for that reason, we're just going to leave it again for the end of it. So we need a couple of controls for this overall setup. We need control of levels, so how much topology it's actually wanting to make use of. This is not visible. So this is what we're going to get basically with each level, increases the resolution. So We can, maybe do something like this. But ultimately, we want to leave the control for basically the geometry itself or the parameters. Let's go ahead and actually create some settings for that. We're going to start off by creating ourselves something called resolution. So that's going to basically control the levels. The resolution itself should not be a float value. It's going to be an integer. Let's go ahead and change it to an integer, like so. And here's the thing we don't want the system to crash. If we look at the wire frame itself, once we start increasing it, it's going to be exponential in regards to how much topology is being used. We really don't want to make use anything past the level five, because, as you can see over here, it's going to be a very, very dense type of MS. We really don't want to go past that. Once we start going past that, maybe the system will start hugging in, we even might crash. We want to basically prevent that. We want to make sure we have nice controls that a player, sorry, a person creator would be able to make use out of. And for that reason, the maximum we're going to set up is 0-5 basically. So Now we can go ahead and just grab ourselves can just grab a new one group input. We can add this to a resolution, like so, so we can now go ahead and set the default value to something like two, going to hit tax base on the resolution over here by hovering over the value itself, and that's going to give me this as default resolution, which I think is going to work great for us. Now, all the actual edge creasing, we need to actually add ourselves parameter for that. We're going to create a new parameter called this Bevel leg. Have the thing we can keep the Let me just go ahead and actually see. This goes 0-1. Let's go ahead and actually just recreate this same type of results. F Bevel, minimum, zero to one, and subtype is going to be a factor. This is going to give us a nice control 0-1, exactly what we want. Let's go ahead now actually connect this basically to here. To hit control and age to hide it out and just simply simplify this result. The only thing that I would say is that logistically speaking, it makes no sense that when bevel is at zero, it's actually giving us the most of the bevel. When it's at one, it has no bevel. So we actually need to invert this value, and the fastest way to do that is by just using multiply math node, set this to multiply, and we're just going to pass this through a minus one and just added them onto the edge crease. Now when it's one, it's actually going to be be when it's zero, it shouldn't be bbbled. What's going on over here. So or actually this isn't going to work. The reason being is that it just keeps the value at a negative. We don't want this. We actually want to just invert the value. Instead of multiplying, we need to subtract it, and we're just going to switch this up. We're going to basically get the bevel to be the second value, and the first value is going to be one. Basically, we're doing one minus bevel, which is going to give us the right result. I'm just going to put it over here. Like so, There we go. That seems to be better. Now we can just go ahead and have it either as zero or as a value that's going to be one for beverly. Okay now just take it down a little bit, like so increase the resolution a little bit, and we're going to get ourselves some smoo looking breaks. The thing that we need to do now is actually get ourselves a bit of displacement. We don't want them to be looking perfect. We want to have the ability to actually control how wherever they look. So for that, we're going to go on to where the setup is over here. After rotate instances, we can probably just set it over here. We're going to basically make use out of Set position. Let's go ahead and add set position over here at the very end. So the position is going to be for the offset, but we don't want them to be just offsetting everything in regards to all the bricks. We actually want to make use out of normal. It's basically going to be based on normal. Each one of those meshes has a normal, so we have a look at the brick over here. Basically have a surface at the top, that's going to be facing more upwards on the side, it's going to be facing to the side, and this is going to just be basically pacing this direction over here. It's basically going to pace outwards from the over all surface of the mesh. By making use of something called, if I was to just quickly go ahead and search for normals, me to read normal, we can actually get ourselves some nice control in regards to offsetting and making use out of it as a displacement, or again, wa bricks. We're going to basically make use out of something called noise texture. Noise texture is a great way for us to just get ourselves a random noise or an offset. If we were to just use a map vector, here since we're using three D type of space for normals. We can see the output for normals is actually vector. That's what we need to do. That's what we need to use. We can connect this to here, and this noise is already set as three D, so that's going to be nicely multiplying it for us or actually instead of adding it or multiplying it, we're going to use a scale. There we go, like so. This way, if we were to attach it right away, we should see some results. And we're not seeing any results. My guess is that P. They're not actually yeah, they're still kept us instances. We're rotating instances, we're translating instances, but we actually need to actually turn this into mesh to be able to manipulate the normals for them. So for that, we're going to realize instances. We're going to just attach it right before. And there we go. We're going to get ourselves a massive blob. Obviously, this is not what we want to be able to just scale it down just a little bit less. So let's go ahead and actually duplicate this scale over here and turn it down to a smaller value. A value of 0.01 maybe that's to little 0.1. There we go. Maybe maybe still a little bit too big. Let's go ahead and just play around with values. 0.03 is a good start. I'll just put it back to 0.05, so we could actually see the result that we're having. So we have the scale, and we have the have a lot of control with the noise texture itself, but the only one that we actually realistically need to make use out of is going to be scale. If we were to change the scale, you can see the bricks actually changing basically in regards to the setup. If we were to increase it, you can see the type of result that we're getting. Once we set it to seven, we can see that we're getting a nice offset or actually eight, there we go. We're going to get ourselves a nice offset. So now I'm going to actually lower down the scale. And we need to just finally set it up as parameters. We're going to quickly create parameters, so we're going to click new item input. We can call this displacement. Scale. We can actually just duplicate this value since we already have the naming for it. I'm going to go up, going to just simply duplicate item. It's going to give us exactly the same result. Simply just for the names so now we can just call this one as strength. We're then going to get ourselves a group input. We're going to find the displacement scale to put it onto the scale. Displacement strength. I'm actually going to make another one and just put it onto the strength over here. Now, of course, we need to make sure that we have the parameters set up. The default one for scale was I believe five and the strength was 0.3, or was it 0.03? I think it was 0.03. There we go. Five and 0.3, just going to real quick, check these up. To make sure we don't go into negative values. If we were to do that, for example, we would start getting some artifacts onto the mesh over here as you can see, so we're just going to real quick, prevent that to have the minimum values of zero on both ends, and that's going to give us a nice result. So I'm going to increase the resolution real quick just to see how it looks like. Yeah, that looks real nice for us, actually. All that we need to do is we basically created ourselves the nice shape for the bricks. All we need to do is create the cement, a sort of a pillar, which we're going to do next. And then afterwards, we need to work in regards to the shaders and the materials to get ourselves the overall nice visuals. So that's going to be it for this lesson. Thank you so much for watching, and I will be seeing you in a bed. 15. Creating Cement Surface Grid with Index Selection Offset: Hello. Welcome back, everyone to Blender Basics Geometry node Brick Walls workshop. In last lesson, we set ourselves up with a nice surface displacement and a bit of beveling as well. Now we're going to continue on with the setup, and in this case, we need to work on in regards to making sure that we have a sort of a filler in between the bricks. Once we get the layer gaps, higher up example and the width example maybe smaller. Or actually the brick gaps. There we go. Once we get this kind of a setup, it's not going to be just normal type of bricks, it's just going to be floating randomly, and that's not what we want to have. So for that, we're actually going to go all the way back to where we had sample curves over here. And we're going to create ourselves a new setup just for the filler, let's call it the cement, basically. And we can go ahead and click Shift and A. We're going to make use out of something called grid. And the reason we're doing it next to the sample curves by the base curves position sampling is because from this, we can actually get ourselves a position for this type of a setup. So If I was to actually grab this grid and set a position, set position so I can just simply grab the position from the sample curves, just like that, and we should get ourselves something nice already. Although clearly we need to set it up with how it looks like. I'm going to actually just click Control shift and just tap on the screen, and I'm going to increase the vertex amount. So we can see what's happening basically. Right now, it is a bit messy. The reason being is actually it's not right just yet. We need to have control over the vertices themselves to make sure that we're getting the right result and actually, let me just go ahead and increase this vertice count like so. We are getting the position like this, but it's not giving us the right setup. It's quite a bit messy. So, we need to make sure we fix that. For that, we'll need to make sure we tell the model vertices we need to make use of in regards to the height and in regards to the wave itself. For the height, actually, yeah, for the height, it's going to be the layer vertices of x. That's what's going to be controlling it. So we can just simply make use out of the layer count value that we had. Let's go ahead and grab ourselves a group input and take the vertex x or the layer count. So that's going to be that. Then the next one that we need is going to be the number of points per layer. This is going to be if we go all the way down. Yeah, this is the value that we're going to make use out of the one that comes from onto the mesh line over here. I'm just thinking what's the best way of actually putting this out? For this section, I might just grab just put it off a little bit to the side, just like that. Now I could just make a new line over here. And simply use it to attach it to the vertices y. There we go. We're going to get this type of result right away. I think, let me check before. It was it was just giving us quite a bit of a mess. But if we use the right amount of vertice account, We're going to get the right result. There we go. All right. This is actually looking perfect for us exactly as we wanted. Let's go ahead and just clean it up a little bit like so I'm just going to move this upwards just like that. It's going to be quite all right. Cleaning up a little bit, making sure that we're having nice clean edges, especially for such long lines. We want to make sure that it doesn't overlap any nodes. And Just before moving on, I would like to explain why exactly this is working so well for us. And the reason being is why even if we are increasing the vertices y count and x count if we were to increase it to quite a large amount, it's not going to just fill in the shape because basically, this vertice count matches the index of the position for the sample curve. So if I was to actually show the grid itself, this is what we're going to have. And, we're going to get identical index for how the shape needs to be filled out basically. I'm going to real quick just make sure that this works also with the offset deletion. Yeah, just making sure because the offset delete is going to be later downline. Let's actually go ahead and now see how it looks like with the bricks themselves. So the easiest way for us to do that is if we were to y, if we were to find a set position, I'm just going to go ahead and delete the view mode, we can add the set position. Directly onto the outliner onto the output over here, and actually the easiest way to grab the both of the nodes is if we were to hold the control and shift and then use right mouth button, we can drag it across so to the last node like this and releasing it. We'll basically combine these two automatically. So Control shift and right mouth button with the grid as well as the final brick node, will automatically combine us with the joint geometry. It's a real nice type of a shortcut to make so Now let's go ahead and see how it looks like. We're just going to click one. And the top might be looking quite all right, but the bottom, if we have a look at it, it's actually offset. It's right in the middle of the break, so we need to go ahead and fix that. We need to make sure that it starts with the base. We're going to need to make sure we select the bottom index. So for us to do that, we're going to go back onto this selection over here. We're going to hit ship D, we're just going to put this over here, so we can control the offset basically, and we just want to drag the bottom vertices for this for this grid basically. So for us to do that, we're going to grab ourselves an index, like so going to say that if index is less than a specific amount, which is going to be y vertices over here actually. I'm just going to go ahead and grab it from here. Just move everything up like this a little bit. And put this with, let's just grab less than. We try to just do it from the index. There we go. Less than. And basically the index is less than the row that we have that goes across basically the first row for the vertices y, which is this one over here in this case. Usually y would represent the vertical value, but in this case, we're just using it as a horizontal value. Now if we plug this over here, we should be able to, there we go. We're just basically able to control just the bottom piece. So this is perfect for us. Because this should be controlled by the height itself, let me just go ahead and see, we should be able to basically offset it with the height parameter. Let's go ahead and do that. We're going to grab ourselves from the offset firstly, combine x y z, like we usually do, put it off to the side. Then for the Z value to control this. We're going to grab group input, find ourselves to height, and from there, we're going to actually multiply. So, we're just going to put it off to the Z value, and if we set this to two, actually minus two. Or just actually, no, this will need to be divide, just to make it easier for us if we set this to a value of two minus two. There we go. That's going to give us exact place at the bottom now if we change up to height. Doesn't seem to want to work with the height. So I'm trying to figure out why that's the case, and I just realized it's not set with the height, it's set with the with randomness. We need to make sure it's set with the height. There we go now, it's always going to be attached to the bottom. There we go. This could have been also multiply set or minus two. Today we go. Now we fixed it. As for the upper section, although personally, it looks pretty cool. If we have it like this, we still need to have certain control, perhaps, we need to make sure that it actually touches the top. In case, we want to, for example, have more of a modern look. We don't want to just have these fillers for the grid to be kept as this. Yeah. To actually grab this top section, we basically are going to select every single point that is not it and say if it's greater than this value over here, these parts the top will be selected, and then we can just do the offset upwards, just like we did with the bottom ones, but this one is going to be a little bit more complex looking, but it's actually overall rather simple. So let's go ahead and do that. We're going to grab ourselves the position, just like we did previously. We're going to grab ourselves the index. Let's go ahead and make sure that the position upset is actually set the proper just neutral value. And so to grab the index for all of these parts over here. We'll start off by grabbing in the bottom row, just like we did previously, we're going to find it where it is, so we can just grab it from here. And I'm going to just quickly grab our cells the map node. Going to change this map node to multiply. So multiply. So we're going to basically now multiply this value over here, which is again the the row, we're going to set it up with the lay count, which is the column. If we were to just multiply it by default, we're basically selecting this entire grid like so. But we just want to remove this upper layer. So what we're going to do is basically we're going to just take one row off the top. And for that, we're going to just get ourselves a map node. We're going to get ourselves this map node. We're going to subtract it to subtract by one, subtract this layer basically. Then we're going to multiply it two, get this entire selection as we talked previously. And that's pretty much it. Now, we need to just get ourselves the index. We need to say that everything that's greater than this selected section is going to be affected. This is going to be if I drag from the index greater than this value over here, then if you make a selection for it, you're going to be able to control the upper section just like that. Hopefully that makes sense. The only thing though is that the part at the top Yeah, these vertices over here are not being controlled. We need to make sure that these vertices are being controlled to make sure that we having a nice offset. That's an easy pix, actually. All we need to do is get instead of greater than, we're going to get greater than or equal. By changing it like so, we can see that this vertice is going upwards as well. That's exactly what we want in this. I think this is the Jagger dag one, which is all right. Okay, that's pretty much it in regards to the control. We just need to make sure we set it up with a nice offset. Let's go back to the offset. We can make use out of the same offset actually and just invert the value so we can scale in the negative one and offset it. It's going to give us the identical looks at the bottom. All right. That's going to be it from this lesson. Thank you so much watching. And I will be seeing you in a minute. 16. Categorizing Parameters: Hello and welcome back everyone to Blender Basics Geometry node Brick Walls workshop. In the last lesson, we less ourselves off by setting up this nice tiller grid that goes in between the bricks. But we're still not quite done in regard to the overall setup. The reason being is that we need to make sure that we start setting up additional parameters for it. And for that, I would recommend you to start off actually breaking down these parameters basically in the geometry node. Mean by that is, if we have a look at the right hand corner, we have all of these values over here, and they're really helpful. But when we start working with multiple factors, in this case, bricks and the cement, the filler, grid that goes within the bricks themselves. It's going to be complicated. It's going to just be over too hard to actually make use out of this. So instead of just having everything in one type of a group, what I recommend you doing is go to the top and let's go ahead and write underneath the geometry, we can go click plus. We can input something, and for the input, we're going to basically set it up as a string. Now, this string will allow us to, as you can see at the top, it says a socket, This string will allow us to basically get us a sort of a label. If we were to just delete this completely, it's going to give us an empty label entirely, and if we were to go down and set the default value for this to be called bricks, so we can now go ahead and click backspace on here and by default is going to have this nice label. Although it can be easily changed, it doesn't really matter. It doesn't affect us at all within the parameters. Anyone can personalize it if you wish to, but honestly, by default, just having it called as bricks is going to be quite right. We can do the same thing for the cement as well. We can just simply select this. We can click duplicate item and we can drag this all the way down until we reach the very end. At the very bottom, we have a node called bricks. Of course, we need to change this to call it cement or a fiddler. Anything of that sort will do. It doesn't really affect the code itself. I'm going to hit backspace on hovering over the name itself and that's going to hit the default setup. So we will firstly want to make sure we can enable and disable this cement layer. We can do so by clicking on a plus symbol and getting ourselves a socket. That's going to be a bully. I basically a switch, but we're going to use. This can be set default attribute. Let me just have a look. Yeah, we can just change the socket over here to call it enable. So or enablement. There we go. The other option that we'll need is a thickness. Thickness for this wall over here. We'll also need the displacement scale and displacement strength. We'll basically do the exact same noise displacement setup that we have for the brakes. What we can do is we can reduplicate the values and put them off at the bottom. Let me just go ahead and do that. I'm just going to move the second one. Like this. To the bottom, make sure you don't actually grab the first ones because these are the ones that would be controlling the actual displacement of the breaks. I I was to actually try that. In regards to strength, it's still affecting the right values for me, which I'm quite happy about. These ones are not going to do anything at the moment because we still have not attached them. The final thing that we'll need is going to be a resolution. I'm going to select the enable because I want the resolution to be right underneath it, and I'm going to call it resolution. So we can set this up to be an integer, and I think we're ready to go. I will also actually real quick, set the default value for this to be two, minimum zero, maximum, we can set it to a little bit of a higher value. The reason being is that it's only just one mesh. It's not like every single individual brick. So it's going to be all right if we have it a little bit larger. Then for the thickness, let's go ahead and set this to zero and the default value to 0.1. That's going to be quite a right. This one should have the same result. I'm going to also just drag it placement downwards so we could actually have it right underneath the thickness. Thickness, I'm going to hit back space there we go to get the default value, going to hit default value for the resolution as well. Now, let's go ahead and actually go onto the cement where we finished it off. Over here, I will actually make this a little bit larger so we could see. After the set position, we are going to just get ourselves a simple subdivide mesh. L instead of using the one that we have previously for the bricks, which was called, If I was just to find a digo subdivision surface. This one was to get to get help decreases and stuff, but we don't really need this. What this partical case. If we were to actually increase this, we can actually see what it's doing and if I was to turn on the wire frame. You should be able to see that it's actually literally just subdividing the match. So that's good for us. That's exactly what we're looking for. Let me just go ahead and go out of the ghost mode. So we are going to get a group input. We're going to find the value for resolution at the bottom. Let's make sure we use the one at the bottom, since that's the one for the cement. Go to hide out of the way, clicking Control H. And let me just check if it works. Real quick. It seems to work. That's great for us. We can also have a look how we're at it in regards to the order of the bricks as well. For example, offset the let. We can just move it upwards a little bit over here. I want to check if the offset itself is actually going to work with what we have. Offset it is going to affect bricks, which is exactly what we want. It's going to affect the cement that is, and let's see. I think all in all, that's pretty much it. We just switched up the offset, and for the gaps, everything seems to be in order. Resolution and debl could be maybe a separate. We could make even a separate string, for example. We could duplicate this, put it downwards right right on top of the resolution, and that would give us bit of an extra way to break off and categorize the parameters. But in that, it's going to be it. We just need to make sure that we now set ourselves up with the thickness for the cement. So what we're going to do is, we're going to make use out of extrusion, but in geometry, the extrusion works a little bit differently. We're going to cover that in the next lesson though. So thank you so much for watching, and I will be seeing you in a ban. 17. Creating Extrusion Operation and Mesh Smoothing: Hello and welcome back everyone to Blender Basics Geometry node Brick walls workshop. In the last lesson, we set ourselves up with some additional parameters, but now we need to actually get this wall to have some icknes. And we're going to make use out of a nice little node called extrude mesh. Let's go ahead and click Shift and A, third for extrude mesh. This is what we're going to use. The thing is though that this mesh actually works a little bit differently to what you'd expect normally in free day modeling. So what I mean by that is, if I'll going to show you as an example real quick, within just a simple modeling mode. So, normally, if we have something like a plane and we want to extrude this plane, we can click E extrude it like so, and it's going to create an extrusion. It's going to basically create the edges on the side, move this face to the top, and it's going to make sure that there's a base underneath as well. And in this particular case, however, the extruion works a little bit different in regards to the setup. So what I mean by that is, if I have, for example, something like a hole, if I wanted to extrude here, I could do so by clicking E, extruding, and now if we look at it, we basically have the face over here. We extrude the size, however, if we select this and actually click Shift and H, we can see that underneath there's nothing there. So what happens is basically Because there are fas it's extruding basically next to the selected pass. It's not going to produce that duplicate of the face underneath. It's just a basic type of extrusion that's going to make and going to leave the gap underneath. In that same principle, it's going to create the extrusion over here. We can go to geometry node, we can have it selected, and let's go ahead and actually make use out of it. The way, if I was to just attach it to the mesh over here and see the extrusion, I'm going to actually make it to a small value like so we can see what it's doing. Actually right now it's extruding individual pases. We want to make sure that this is ticked off, so it's giving us that. I am going to show you by clicking control and shift, just tapping on a screen. There we go. It's going to basically leave the backside on its own. The easiest way to fix it is if we were to before the extrusion, over here. If we were to actually get the original mesh. We're then going to offset it to the up side basically. Basically, we're pushing it to the up side. Then we're going from that side. We're then going to start extruding it like so. We're going to grab the original pace and just reattach it back. So we're going to grab the thickness value. We're then going to make use out of the normals to offset it with inflation. So let's go ahead and get ourselves normal, read, so we're going to get ourselves set position. So, and we're going to put it onto geometry with the offset. Let's go ahead and see which offset we're looking at. We're going to click control and shift, just tap it over here. So we want it to be going in y direction. So for the wide direction, let's go ahead and grab ourselves the thickness. Actually, we're not going to use this because we're going to be offsetting it with the normal map. Let's go ahead and with the normal data that is. Let's go ahead and get ourselves a vector map. Leg, let's attach the normal, and we're going to, of course, select the scale. This will allow us to offset it based on the normals. There we go. This way, we can just offset it inwards, and it's going to just slightly offset it in giving us the right value. We want to make sure that we don't overdo it Owss going to give us some artifacts. It's going to be a very small type of an offset based on the thickness itself. So, the thickness itself, if we were to use a group input for that, we already have the thickness over here. Let's go ahead and actually attach it. But before attaching it, if we were to just do it normally, ideally, I prefer to have a bit of a control when it comes to thickness, for example, if we set the thickness for this to be as one, it should give us the thickness of a one for a unit. So If I was to just offset this to thickness of just a normal value, it's actually going to give us the entire value like so. What I want to do ideally is when we have a line, we offset it by a half of the value of the thickness to one side, and then we push it all the way. By a value of one for the extrusion. This way, the center point, even if we have a bit of a larger, for example, piece or a smaller piece, it's going to be kept in the middle, which is exactly what we want. Let's go ahead and do that. We're going to fs offset it off by normal with the value of 0.5, let's go ahead and get sells a math value or multiply by a 0.5. So we're halving it, then we're going to extrude this with the value for the thickness. The thickness, we can just actually just duplicate it over here and extrude the mesh with this offset value, like so. Now we can clear control and shift, we can see out looks like, and this is what we're going to get basically. We're going to extrude it and it's going to if we have a look at it from the top, should give us a value. It's going to be more or less kept the same. To get the value from before, to get the face from before before actual extrusion, we're going to grab it over here, and we're going to actually flip the face. Right now the face is facing this way. We can actually look at the normals, by the way, if we were to go onto this upper right hand corner, and we can select face orientation, whichever the blue is facing is going to be facing outwards, basically, as you can see this way, it's facing inwards. This in particular setup in blender doesn't really matter. But when it comes to video games, for example, when it comes to real time rendering, it's often, most of the cases will use a single phase. What it means is basically that this side is going to be completely invisible. And this up side is the only one that's going to be visible. So we're going to cover the face with a blue blue math basically on the overside. And if I was to just simply join geometry over here. So I'm going to actually put it over here and join it before the extrusion. We should get ourselves. I'm going to delete the viewer and just use it with control and shift again at the end. We should get ourselves this, but again, as I said, it's not going to be set properly with the pace orientation. This is going to be red. We don't want this. It's not going to be visible on real time renderers. So for that, we're going to simply get ourselves flip pass. We're going to put it over here. Right before we join in, man, we're going to get ourselves a clean mesh. That's exactly what we want. I will actually switch up. Yeah. One thing I will definitely switch up is resolution realistically, is going to make us a mess. The reason being is that the resolution we add when before we actually make use of this, the more of a normal phase offset mess is going to cause. It's going to start overlapping and whatnot. We don't want this to happen. So the quickest fix would be to just simply grab this subdivided mesh and just put it off after we join the geometry. Actually, let me just go ahead and reconnect this over here. This is going to be separate, and I can just add it after we join this geometry per here. Just like that. This way, we're going to get ourselves a nice little set up. I'm just wondering about the thickness if it's actually properly set up in regards to the multiply. Yeah, I think the mistake I made is the fact that I multiplied it by a positive value. We need to actually bring it to a positive negative value. And this way, the thickness is actually there we go. Now, it's actually saying in the middle. Sorry about that. I didn't notice that. The only thing that's left to do for this is to actually get ourselves moving. By default, it's going to be even if we add topology, it's just going to be a square. We need to make sure we set it up with a nice blur. For that, we're going to actually set the position, and I completely forgot one thing. Is that after we join the geometry, we need to merge. So let's go ahead and merge by distance. It's a very useful type of node that will allow you to merge the vertices based on the distance, joining them together. Otherwise, the face on one side is not going to be attached to the cement that's on the other side basically. And just having this node, we'll just keep it merged, then we can subdivide it and it's going to give us everything nicely set up. Yeah, that's pretty good. What I mean after that is, we're going to now relax the vertices. We're going to grab ourselves the position, the original position of the cement, we're going to then a grab set position like so, attach it to the geometry, and we're going to before attaching it directly onto the position, which is going to give us the same exact results, we're going to get a blur attribute. Blur attribute will basically just blur the result. If I was to set this value of zero, It's not going to work, and the reason being is that we're blurring only a float. We need to blur the entire vector. All the vector values. There we go. Now when we set this up to a higher value, it starts to actually getting itself to look more blobby. There we go. That's exactly what we want. It's going to make it look like it's actually a sustenance that was more of a liquid beforehand, and then it got harden up. Of course, we need to set up some controls for that. I prefer to keep the iterations to free and then it'll be stronger type of appliance. We don't want to go more than that realistically. We can create the smooth input. Let's go ahead and call this smooth. So let's go ahead and get the default value to zero. Minimum can be zero, and we're going to get our cells this to be smoothing as a weight. Now we can go ahead and control this and smooth in and out whenever we want to. So that's pretty much it with the setup. We're going to get our cells A n pipe over here. We're still not quite finished in regards to the aorld cement. We still have displacement, and we also need to work in regards to all of its materials. So Pando, let's go ahead and keep this as is, thank you so much for watching, and I will be seeing you in a bit. 18. Smoothing Out Normals and Displacement Cement Setup: Hello, and welcome e to Blender Basics Geometry node Brick Walls workshop. In a last lesson, we set ourselves up with a nice suoving setup. We still have displacement scale and displacement strength to do, which we're going to do right away as we can just zoom out and go all the way down to the area over here, which we had the displacement set up for the bricks themselves. We can simply go ahead and just copy this setup, so everything form a couple of these group inputs. Norma noise texture, and those two scale nodes. We can now go ahead and click Control C to copy it, go up higher above, so click Control D over in this section like so. And I totally forgot the fact that we need the set position as well. So, yeah, we do need that. Let's go ahead and actually grab this over here. I'm going to hit ship D. Just put it off to the side, so. In this way, we can just place this into the offset, just like that. Of course, we need to fix the group inputs what we have over here. So instead of displacement scale from the bricks, we're going to hold control and just place it from the one that's right at the very end. And we're going to do the same thing for the strength. This one, I'm just going to make sure you have displacement strength. I'm going to hold control. Put it over here like so. Of course, we need to go ahead and fix it first before anything else. I'm just going to actually minimize this real quick, like so. Now we can actually work on the displacement setup, the preset that we'd like to see. So Let's go ahead and firstly take off the scale. That's going to be this one over here. I'm going to low its value down to quite a small amount. It's going to be diversion. That's going to be diversion of 0.1, I think that's going to be quite all right. If we now increase, sorry, that's going to be actually larger. I mixed up the values. We need to make this displacement scale. I might actually help if we were to just drag this out to actually see the names. This placement scale needs to be something like ten. This placement strength has to be quite small, something like 0.01, and that's going to be quite all right, and we're going to get ourselves a very nice small type of detail. This might even be a little bit larger, like so. We might even increase the resolution by a couple of times just to see all the necessary detail and the strength. We can now increase it a little bit. To see that we actually do have a nice setup. So I'm going to increase it to 0.03. There we go, we're going to get this type of a look. So just by manipulating the noise a little bit in regards to the setup, we're going to get ourselves completely different and unique results. We just need to make sure that we have the same results in the default values. So displacement scale. I'm going to make sure we set this up to be a default of 11 and displacement strength can be 0.03. And the only thing that I want to make sure is that the minimum is set to zero like we did before. Y, that's looking pretty good. Now, all we need to do is actually make sure that we have ourselves set up with maybe a little bit actually, I'm going to decrease the height just to see if it's looking all right. I'm going to lower where is it the thickness? Holding shift. I'm going to lower this down so we could actually see the bricks coming out like so, and this is going to be quite right. All the bricks are looking nice. Now, we also need to make sure we smooth it out the shader itself, we still are seeing the polygons that apology. Let's go ahead and do that right away. If we look for set shades smooth, there we go. That's what we're looking for. We're going to just attach it to the cement itself. Right away, we're going to see this type of result. It's going to basically smooth every topology, which is exactly what we want. If we want to get more detail, for example, once we shades s move it out, we can see that a lot of detail is lost. Maybe we want to increase the resolution a little bit, that's going to bring everything back. And honestly, by default, Shades move, keeping it on the cement by default is going to be great for us. We really need to keep that on. The thing for the bricks though is if we want to have that level off, it might not look quite as great with a low resolution. I'm actually just going to show you as an example. I'm going to duplicate it, bring it all the way to the bottom to our bricks, today we go. We're now shades moving out the bricks. And honestly, it's going to look quite right with just this tick tone. But again, once we start playing around with the bricks itself, as in where is it? For example, taking down a resolution and lowering down the bevel. We can see that it's not actually going to look in the right of way. So we need a different type of approach. There is something called shade smooth by angle, a group type. There we go. This is quite nice. I'm going to show you what it does actually real quick. If I was to set this up, I can now increase this and hopefully. It's going to work. Yeah, I'm going to ignore the sharpness over here. Now we can see that actually once we lowered that down to the right angle, we're going to get this type of result. This gives us a bit more of a control overall for the angle of the smoothness. I'm just going to check real quick if it's actually going to look all right with increased resolution. There we go and increase bevel. There we go. Honestly, it's a really nice type of function. All we need to do is just make sure that angle is going to allow us to control the sharpness of the bricks. By default, we wanted to, we wanted to be a parameter. We're going to add a new item and input. B call this brick smooth. Angle. We can call it like this and bring it all the way to the top right underneath the displacement. I think that's going to be quatro right. We're now going to go ahead and get our cels group input. The list is getting pretty big, so let's just go all the way to where we say brick smooth angle. We're going to attach it over here. Actually before that, we need to change the subtype to be an angle there we go. Now it's actually going to work properly. The one that we wanted before was 65 sounds. Let's go ahead and just plug this back in. Default, we can set it to 65. We can click back space, to reset it to default, and that doesn't seem to want to reset it to default. What's happening here. I'm not sure why that happened. Brick angle default is set to 65. Minimum should be zero maximum for 60, and I'm just going to plug this off. And I'm not sure why that's happening actually. This one by default should be 65. But when I click back space, it doesn't go back to the default value. I'm just wondering if I made a mistake in regards to that, just go off. Now, it seems to be all right. Yeah, I'm not really sure why that's the case. But just doesn't want to work for some reason, there we go. Now it's working, I think no reason, again, using a back space for this one, in particular it doesn't seem to want to work. I wonder if it might have something to do with needing to restart the engine, but I'm not going to worry about that at the moment. What we need to do extra is real quick. We need to make sure we set up the ability to enable and dtable the cement. For example, in some case, when we want the brick layer set up to actually have no gaps, we don't really need the bricks to have that pillar set up. What we're going to do is, we're going to go all with the top over here. We're going to create a nice switch. We're just going to add this switch over here. And the switch itself, we'll need a bulion for us to unable to get the switch on and off, which we already have over here. All we need to do is just grab our cells group input. I'm going to click control on H to unhide it, and attach this to the switch. If this is true, it should give us the setup. Just going to make sure that by default, it's sticked on, and if it's false, it's not going to give us anything, and it's going to give us an empty pin to join to geometry. Let's go ahead and check that out. Yeah. That's exactly how it works. All right. Good stuff. So now the only thing that's left to do realistically is set ourselves up with a material. But it's actually going to be quite an interesting topic. We're going to go over the basics first to make sure we understand how the shades work, and then we're going to go ahead and touch it, how we can generate certain material setups for our generators. Yeah, that's going to be it from this video. Thank you so much for watching. And I will be seeing you in a bit. 19. Blender Material Shader Basics: Hello. Welcome everyone to Blender Basics Geometry Node, Brick Walls workshop. In the last lesson, we finished up with I regards to the geometry node itself, and now we need to make sure we actually texture it because if you go on to the modeling tab, and if we were to just click on the material viewpoint chaining, we'll see that it's actually just completely wide. The reason being is that we don't have any any material set up on this. So to start off, I'm actually going to play a quick introductory video to the blender shading and that's going to explain you the overall information for what shading does, and then we can move on in the next lesson with the overall setup for the materials. Thank you so much for watching and I will be seeing you in a bit. Welcome everyone to the blender shading and texturing introduction. And you can see here within my scene, I've actually brought in a few shaders just to kind of explain how they actually work. So first of all, what is an actual shader? A blender shader is a type of material that can be applied to three D models within blender. Shaders define the way surface of objects appear under various lighting conditions, simulating a wide range of materials and effects such as metals, glass, plastics, wood, and more. Essentially, shaders tell blender how to render the surface of an object based on its properties like color, transparency, shyness, texture, and reflection. So, within Blender, we use actually a no based system for creating and customizing shaders, particularly within its powerful rendering engines like cycles and the newer EV render engine. Now, it's important to note that the actual shaders within Blender react differently to each of those shaders. So at the moment, you can see that I've actually got this on EV, but the moment I put this to cycles, these actual shaders, some of them, at least, will react differently. So now you can see that our emission here that we had that was glowing, doesn't glow anymore, and that's what happens in typically in blender cycles. Also, the glass now, we can actually see through the glass and see this is actually a glass shader. So it's important to know straight off the get go that some shades will work in EV and some in cycles. Now, next of all, we need to look at the different types of shades within blender. So some are created entirely in blender through node systems, which we're going to look at in just 1 minute, and the others are created through textures. Generally, these will be PBR textures. Now, a PBR texture is a physically based rendered texture. And it's a texture map designed to mimic the way light interacts with surfaces in the real world, based on physically accurate models. These textures ensure that materials reect to lighting conditions in a realistic manner, making them essential for creating lifelike three D models and environments within blender. So now, north of all the back story on textures, let's actually go up then, and first of all, we want to bring in an add on. Now, this add on is in bill within blender, in other words, it comes with blender. I wish they would actually turn this on a standard, but So far, you have to actually enable it, but trust me want to say it's one of the best add ons that blender ever produced. Let's go up to edit. What we're going to do is come to preferences. We're going to go over to add ons, and the add on we want is called the node wrangler. Type in node, make sure the node wrangler is turned on, and then all you need to do is just close this down. Next of all, we're going to go over to our shading panel, which is this one over here. And then what we're going to do, we're going to click on this cube, which at the moment, doesn't actually have a shader on it or any material. We know that because if we come over to the right hand side, where our material panel is here, you can see this is completely empty. Also in the shader panel, you can also see if I zoom out, this is also completely empty. If you do happen to have a shader in here, and then there's nothing in here, just zoom out as far as you can, and then you'll find all of the notes. Now, what I'm going to do, first of all, is adding a new shader, and what we'll do is we'll double click it and we'll call it wood. Like so. And now you can see here is actually set something up within Blender, just a basic principle BSDF. Now, this basically is the super node. It's where all of the texture maps will plug into. This is the main node that you will be using. All right. So now what I want to do is, I just want to click on this node. And what I'm going to do is I'm going to press control, shift, and T. And what then that will enable me to do is open up my actual computer file. And from there, I just want to find my textures. So here are my textures that I'm going to use as an example. You can see here we've got wood grain, and you can also check out what these actually look like by coming over to the right hand side here and clicking this on, and now you have a good idea of what these are actually going to look like. We can also make them larger as well if we need to. So you can see here at the moment, the side is 128, and we can just bring that up to actually make them bigger and see exactly what textures they are. Now, to bring them in, all I need to do is select the first one. Shift select the last one, so we've got all selected and click principal texture. And what Blender is going to do from there is is actually going to bring them all in and set them up for us like so. So you can see now because of the node wrangler, everything is set up for us. Now, within our actual shading panel, you will see over the left hand side, we actually have a UV map here, and it's not actually showing anything at the moment. If we come on over and we select one of these actual textures like so, you will see if I zoomo we've actually selected this actual metallic shader. I can also come down and select the roughness, for instance, I can select normal, or I can select the actual image texture like so. Just remember, if it's on the wrong one, it's probably because you've got one of the textures or the wrong texture actually selected, and I generally want to have it on the base color. Now with blender four, comes a new principled BSDF, and now a lot of the options are actually hidden behind these little tabs here. Emission, for instance, is now hidden behind here, so I can turn this up, as you can see, bring it down and change the color of it if I sell one. Just remember that some of them might actually be hidden. Because this is a basic video, we're just going to go through a few of the actual options that we normally get within our actual textures. So PBR setup normally consists of a base color, known as the Albedo, or cut just a color map, a metallic map, a roughness map, and the normal map. There are more maps, but they take a little bit of work to actually set them up within blender, and this is a basics video, so we won't be going into those, but we will be going into those later on in the course. The first one, which is the albedo map, it just defines the basic color of the material without any lighting or shading effects. It represents how the material looks under natural lighting. If we go to the next one, we've got metallic, and this map defines which parts of the texture are metallic and which are not influencing how the material reflects light. Metals have a high reflectivity and distinct coloration in their reflections. Now you will notice if I click on this one, it's completely black because this wood has absolutely no metallic. If this was completely white, all of this wood would be completely metallic. If it has kind of graze in there, that then is defined the roughness of the actual metallic. In other words, those little spots that you see when you shine light on something. The next one is roughness, and this isn't to be confused with metallic because roughness is how shiny something is, and metallic is obviously how metallic something is. Generally, as well with metallic, either something's metallic or it isn't. You don't really get in the real world half and half. Roughness map controls how rough or smooth the surface of the material appears, affecting how sharp or blurred the reflections are. A lower value results in a smoother surface with sharp reflections. Why a higher value leads to rough surface with diffused reflections. Now, when I'm talking about values, I'm talking about these values here. So the more sharp this is, or the more blurred this is, or the more darker these little spots are, that will give you the result that you're actually looking for. And finally, we're going to go now to the normal map, perhaps, one of the most important maps, and the normal map simulates small surface details and textures without actually changing the geometry over the three D model. It affects the way light bounces off the surface, creating the illusion of depth and detail. And this is used a lot in games to actually look as though there's more geometry than what there is. Now, let me show you how that works then. So if I come down to this strength at the moment, you can see that we've got our wood here, and it's kind of defined. So if we look from here, it kind of looks like it's three D and these little grooves are going in. But if we turn this all the way up now, you can see that's the effect we actually get. You can see now it looks as though it's much more ripply along the edges. We can see big grooves going down there, and this is what the normal map actually does. Now at the moment, with our actual cup, you can see we've only got one actual material on there. And what about if you want to put multiple materials onto an actual object? I'm going to do is, I'm just going to click the plus button. I'm going to click the down arrow. And I'm just going to choose one like glass. I want to click the plus button again. Click the down arrow, and this time, I'll choose one that says stone. Now, if I go into my cube and press the tab button in actual edit mode, come over, select one of these faces. It only works on faces. By the way, you can't select an edge and apply a material on there. You have to select a face or multiple faces. So what I'm going to do then is come down to glass. And finally, then I'll click a sign like soap. Then I'll come round to the other side. I'll click this face and this face. And what I'll do is, I'll come down, click the Stone and click a sign. And there we go. Now we've actually got stone, we've got wood, and we've got blast. And if we put this on our render view now, you can see exactly how that's going to look, and you can see how the lie is interacting with all of these surfaces. I come over just to the right and side quickly and turn around my sun rotation, we can get a clearer view of what we're talking about. If I come even further aun and bring it to the front light, so you can actually see that glass then is actually starting to be seed through, and you can also see that actual normal map working on the inside of this cube. Now, let's quickly go back to our wood. So to do that, what I'm going to do at the moment, you can see that we're probably on the stone in this shade of view here. It says actually stone here. Actually come down and click on my wood, for instance, and then it will take me and put the wood on there as well. So that's another way to actually apply them. Instead of the stone, it's actually just put on wood instead, as you can see. Now, what I do want to do is, I want to come in to my actual wood. So that's the one that we actually brought in this one here, and just show you, for instance, we can actually interact with all of these texture maps. Now, there's thousands of nodes available in blender, and the way that you put them all together, it can become extremely complex with huge hundred node maps and shaders. So I'm just going to show you something of the basics just to get you started, and that will be an RGB curve. So an RGB curve, as those of you may know who use Photoshop, changes basically how the actual image is actually lit, darker spots, lighter spots, things like this. So if I come in and press shift Day, search RGB, and you can see, I've got an RGB curve here. Now, just before we do that, if you do press shift day, you can come down, you can just see get a flavor of how many nodes there are actually within blender, and you can see also how many shaders there are within blender. Let's discuss that after, but first of all, we're going to go with RGB curves, bring that in and drop that down like. So from here now, you can see that I can actually affect the color of this actual wood on the fly in real time, like so. We can also put this onto the metallic onto the roughness and even onto the normal to get different effects and different ways that the metallic or roughness actually work. Now the next thing is we want to discuss is just shaders. So as I said, this is the main shader within blender. This is like the one ring of shaders, and basically this will be the main one that you actually use. But of course, there's plenty of shaders. So depending on what you want to do, if you come down, you can see, we've got diffuse, we've got emission shaders, we've got glass glossy, and a whole range of other shaders that you can actually try out and use. Now that we've discussed that, let's actually come out over. Two our actual shaders that have got to set up here. Now you can see with this glass one, it's just a very simple shader of glass and got some roughness on, and of course, an IOR value. Next of all, then, we've got an emission shader, and you can see now this is using texture maps, and it's slightly more complex, and you can see how all of these things plug in. In other words, what I'm showing you is that shaders can be very, very simple or get to be very complex. So the next one is the metal, and you can see this gets even more complex. The next 1 stone, and you can see again, this is slightly more complex, and the final one is wood. And you can see things like this. So we can see that we've actually got some edgeware on this wood, and all of this is actually done within blender, again, with a quite a big setup for the nodes. But it's unbelievable really what you can actually do with these shaders. Once you've actually got your head around how to set up the node systems. Really are just scratching the surface in this blender shaders and texturing introduction. And even on the right hand side here, you can see you've got all of these options, as well to play around with, as well as the fact that you can actually put these into your asset manager as well. But this is just a basic introduction just to get you started. Alright, everyone, so I hope you learned a lot from that, and I'll see you on the next one. Thanks a lot. Cheers. 20. Generating Cement Shader Material: H. Hello. Welcome back on to Blend the basic geometry node, Brick Walls workshop. In the last lesson, we set ourselves up with a nice brick geometry, and now we actually need to add some color, certain amount of color to it. So if we go to the viewport shading, sorry, out of the viewport shading to the material viewpoint, we'll see that it's actually plain white type of material. And we can't actually add a material in the same way that we do on objects. So for example, we can't just add it over here. We'll need to add it in a bit different type of way. So we'll need to go actually real quick onto geometry nodes back onto the setup, and we'll need to get ourselves something called set material. Over here. So I'm going to right now just add it onto the cement. Let's go ahead and just add it right before the switch. So this is going to give us the right setup. If we were to just make use out of this, we'll be able to grab ourselves the right material. By default, we don't have any material setup. So let's go ahead and actually make ourselves the material. Before doing that, though, I'd like to ideally make certain controls over when we can, basically switch over the materials when we want to make certain variations out of the brick wall. So right now, if I was to just simply create an input for the new material. Let's go ahead and change this to a material socket. We can call this one just material. L so, and we're going to, actually, we can just make use out of this group input over here. Let's go ahead and do that, like so. We're going to get ourselves a material over here. Now, all we need to do is just create ourselves a new material. So I'm going to real quick to make it easier for me. I'm going to create a new sphere. The reason being is that we ideally want to work with certain previews, and we want to make sure that we can also just select the object basically and work with it from the shading panel. So what I mean by that is, now we can select this sphere, for example. We can create a new material for it. We can call this one cement over here. And yeah, just making sure that we have created it from this panel, basically. Now if we were to go back onto geometry node, you'll see that it's not actually there from within the tab. The reason being is that we have not actually applied it or directly onto the object. So it's actually not going to be existing here. However, within the modifier tab, we can actually just select this material so we can select the cement over here. And even though we selected within the modifiers it's still not going to be here. So that's why just in case also, I'm going to change the default to be a cement as well. So now it's just going to be by default being just using this. So now we can go on to the shading panel. And what I meant by just creating a new object is the fact that when we work with the shading panel, we have the selection over here. And if you have a selection that has no material, it's just not going to show anything, but once we select this sphere over here, we'll see that this peers basically it's based on the selection what we have in the viewpoard. So that's quite a handy, but at the same time, it might be quite a nuisance when we're working with something like geometry nodes, where by default, the selection itself is not going to have materials. So going back to the materials. Let's go ahead and real quick, make this this sphere smooth just so we wouldn't see the apology, so just right click Shade Smoop like so. Let's actually start working with this principle BSD app, which is the default Shader for blender. So previously in the previous lesson, there was some basics in regards to the material set up, but it is a different type of material setup. The reason being is that the UVs are already there on an object. If you have just a simple model object, can UBN wrap it, but with things like a wall over here, we don't exactly have UV coordinates. There are ways to make UV coordinates, but there's also ways to just texture the entire object without any UBM wrapping. How do we do that? Well, there is quite a nice functionality with the noise textures. So for Sars let's go ahead and grab ourselves a noise texture over here. By the way, the controls for this tab over here at the bottom of the graph that we have over here is actually quite similar to what we have with the geometry node, so you'll be able to get used right away. We can click Shift and A and search for noise texture, L, so, and we're going to get ourselves this. By default is going to be set as free D, which is exactly what if we want to actually color down this type of a setup for the brick wall. We're going to now right away just apply this to the base color. There are a couple of options. There's an option for color and there's an option for factorial. So this is basically going to give us the black and white version. If we directly apply this, we're going to see, hopefully, there we go. That's what we're going to see. We're going to see a sphere that's going to have some noise basically. So that's what we're going to use to texture out the setup for the cement. So you can already see that it's going to give us this type of result. And it's giving us a nice shade. But the thing is, we need a certain control over it. So we have control for the scale, which we're going to use, and we're just going to increase it by quite a bit. I'm looking at the sphere, but simultaneously, the main priority is going to be the brick wall obviously. So I'm just going to increase it until we get a nice type of noise texture there you go like this. It's going to be looking quite nice. We also have certain controls over here. We're not going to touch them actually at the moment because we already getting nice results. The only thing that we need to do is actually set ourselves up with a nice color. And we can change color. There is a way to change color, especially for black and white with something called color ramp. If we were to click Shift and A, and then search for color ramp, we're going to get ourselves this type of a node. Attaching the step of node, nothing is going to change because what this does, basically, it allows us to control the darkest areas, which is represented by this black arrow over here. It's also allowing us to control the widest areas. For example, if I was to drag this arrow like so, you're going to see that the darkest areas are actually being increased, and we're getting a much darker result, for example, for areas where it's supposed to be gray, it's turning now black. So that's how it works. The other thing is that we can also change the color of it. For example, we can select this black arrow over here, we can click on this box over here at the bottom, and we can change it to be a little bit more gray. By changing this to be a little bit more gray, we can see that it's actually turning gray. We can actually increase it just to see a little bit more in regards to that, but that's how it basically looks. And we can even actually add a bit more of a gray tone, for example, if we want the cement to have a bit more of a shift, for example, a more of a gravel look. That's quite nice. Alito, I'm going to keep it a bit more of a dark type of set up, now we need to fix the other side as well. We're going to click on this up arrow over here, and we're going to lower down the brightness to quite a bit to basically get this type of a result. I'm just wondering perhaps I did it a little bit too much because it washes out the darkest areas. I'm just going to bring it back just a little bit. And there we go. We are already getting a nice color. Now, the thing is, though, it's not just the color of material. We also need to think about in regards to the setup or the PBR values. So that's going to be mainly the roughness value and the normal map value. We're going to go ahead and actually touch that Icon in the next lesson because we are riting out of time, and I would like to go a little bit more in depth in regards to its setup. So let's go ahead and leave this lesson as is. Thank you so much for watching, and I will be seeing you in a bit. 21. Generating Normal and Roughness PBR Values: Hello. Welcome back, everyone to Blend the Basics Geometry note Brick Walls workshop. In the last lesson, we set ourselves up with the color for the cement, and now we're going to continue on with the setup. This time, we're going to work on the normal map. So the normal map is actually going to help us out in regards to the detail. It's going to instead of just getting us the color, like we did with the base color, it is actually going to make the wall bump out a little bit. What I mean by that is it's actually similar to what we have with the displacement setting. So if we look at the displacement, going back to the displacement over here, We had the scale and scale and strength, help us out to bump it out basically, and if we were to set it to something like 50, we're going to get some extreme values just like that. But this isn't actually going to quite work out for smaller detail. If we were to for example, increase the resolution, we could get that exact detail, what we're going to be doing right now. But the issue is that it's actually going to be quite performance heavy if we were to actually do that. So instead, I'm just going to click Control is that a couple of times to go back to the regional setup. Instead, what we're going to do is we're going to make use out of the normal map. This is basically instead of adding additional topology. It's going to trick the lighting to give us additional offset to the geometry, especially to the noise, is really good for that. So when we're creating something like cement in this case, it's going to help us out really quite a bit. We're going to make sure we start by using the noise texture. So let's go ahead and just grab ourselves the noise texture like so. And before we actually apply it onto the normal map, we need to make sure we convert it to the normal values. By default, the normal value is actually a of a purplish color. Because we're using it to basically tell which way, which direction the lighting is coming from. And so for that. We'll need to grab our cells from Pacor to something called bump. If we were to look for bump strength, we can go ahead and just find it like so. And instead of actually just from strength, we need to actually hold control and just connect it to the height value. So this is what's basically converting this black and white texture like so from here. Going to convert this to bump value, which is going to look something like this. Ready we can see the type of setup. I'm using control and shift like we did in the geometry no, by the way, to get ourselves the material output over here. Sorry. So if we want to go back, we need to click control shift and just click on the principle BSF. Then we can basically convert this after we convert it, we can connect this to normal to get this type of A result. We can already see what it's giving us. We can actually increase the value past the strength to something like four, and we can see it's actually giving us even more of an offset. But it's looking a little bit too reflective. We're going to be working with the roughness in a bit. But now though let's go ahead and actually set ourselves up with the actual look, how it's going to behave, how it's going to look in regards to the noise itself. I increase the strength for now to make sure that we're actually seeing visibly how it's going to look like on the cement itself over here. And let's go back on to the noise texture. We're going to start off by increasing the scale to quite a large amount, let's say, something like this. You can see the tiny micro detail that we can get out of this noise is actually quite astonishing. I'm going to get something like scale of 94. That's going to be giving us a real nice type of result. We now need to make sure that we set ourselves up with additional stuff. In regards to the parameters for the noise texture. So the detail is actually quite interesting. If we start increasing it, we can see that it actually gives us additional noise. We might actually lower this strength down to actually start seeing a little bit better, like so. Detail is going to basically help us out to get that additional noise even further, so we can set this something to a value of four, that's going to give us a real nice result. The roughness is going to basically flatten out the texture in a way. If we take this off, we can see that it's actually kind of smoothing everything out, but if we increase the roughness, it's actually just flatting out the noise and giving the noise throughout the entire set up. So increasing this to the value of eight is actually quite a smart idea to do. And the rest, I think we can leave it as is distortion, we might play around with it. This distortion is going to give us some variation, for example, over here, if we look at it, they have a sort of a pattern. I'm sure on the video, it's quite hard to see, but basically, if we increase it to quite a large amount, we can see that it starts giving us those wavy patterns. Which might not be exact type of a setup in regards to the cement, but adding it just a little bit, I find it that by just adding something like two, It's say, even if it looks a little interesting when we zoom in, when we actually zoom out, it's going to give that unique type of a look, exactly what we're looking for, actually. So those kind of a small noise type of setup, again, they're not going to be done within the displacement. So that's why we're using the normal maps. And now we just need to make sure we control the strength to get ourselves a nice result. So I'm going to increase it to value of four. Yeah, 0.4, like so. I think that's going to give us a real nice type of a result. The only thing now is that we need to make sure we get ourselves a more of a roughness value. So let's go ahead and do that. I'm going to make some space for that. But the roughness itself, I'd like to ideally make use out of the noise value texture. The reason being is that we wouldn't need to control multiple noise textures. We could just make use out of the same one basically and click in control and shift tapping on a noise texture. We can see that it's actually giving us some nice variation overall, and that's actually going to be more than enough for us to make use out of. But the thing is, the brighter the texture is, the more of a rough value is going to give us. If we were to just plug this into the setup as is, you can have a look how it looks like, it's actually going to be a little bit too glossy. It's actually going to be too shiny because it's just not enough of a value. I think it's going to be more visible on the sphere over here. You can see it like so. It's it doesn't look like a cement, which needs to be more of a rough setup. For us to fix that, we're going to just make use out of the polram like we did before. We're going to attach it to the setup. Let's go ahead and now play around with the values. So by just simply clicking and holding and dragging the arrow at the front. We're going to be able to lower this down. Personally, I can just click control, shift, and tap on the color ramp itself to actually see what it does, and you can see it just brightens everything up like so, which is exactly what we want. We're going to get it right above the POS, letters like so, think actually afterwards, just drag it a bit more to the right. L so we get nice type of a variation in regards to the setup. If we were to click control shift and tap on the principle BDSF, we can see the type of result we're going to get. Already, I think it's looking quite nice. And it might be a little bit too. Now that we have the bump map it might be a little bit too much in regards to the brightness and darkness variation for the color. I'm going to actually go back onto the color ramp, going to change this up a little bit, and I'm going to lower the saturation. So we'd get closer value to gray and I'm going to increase the value like that to get this of a result. I think that's actually looking pretty nice. All right. So now the only thing that's left is actually setting up for the brakes ttxture. We're going to move on with that in the next lesson. So thank you so much for watching. So thank you so much for watching, and I will be seeing you in a bit. 22. Mixing Noise for Brick Pattern Texture: Hello, welcome back everyone to blend the Basics. Jome Node Brick Walls workshop. In the last lesson, we set ourselves up with a nice material for the cement. Now we're going to continue on and actually get ourselves a nice set up for the bricks themselves. And real quick, I'm noticing that some of the bricks are actually inside the walls, so I am going to make the width of the cement a little bit less. Overall, just so we could actually see those bricks popping out like so. Right. So now we should go ahead and create ourselves a brand new material. But personally, I prefer to just make a duplicate of what we have from the cement and instead of just doing it from scratch, we can actually reuse some of those material setups. Let's go ahead and do that. We're going to select this material. We're actually going to select this sphere over here for sars, we're going to click Ship D duplicate over here L. And we're going to go onto its material tab. We're going to make a duplicate over here for the material itself this time. The reason we're doing it like this, so we could actually preview the material of the brick whilst also having it separate from the cement itself. Right now, once we have the duplicate of this, we can actually just call this brick like so, and this is going to give us a complete different setup. So now let's go ahead and actually see that this is in fact a different material altogether. I'm going to hold control and just remove the base control, and I can see that if I were to turn this around. We should get ourselves. There we go. A completely different set up. I'm going to right away actually apply this onto our set up for the geometry node. We already have a cement. Let's go back onto Geometry node stab. We're going to find ourselves this section over here within joint geometry at the bottom. We should have ourselves the break setup. So let's go ahead and set it with a material node. We're going to just simply attach it over here. Me as we did put the cement. We're going to now make sure that we, we're going to create a cell as a new group input. Let's go ahead and do that. Group input. Let's see where it's at, and over here. I'm going to drag it all the way to the top to where we have it above the bricks. All the way over here, we can call this material like this. Change the type to material, and we're going to set the de fold to be the brick. Let's go ahead and actually change this material over here as well. Now we're going to be able to see the material hopefully, unless Could you change it over here as well, I'm not sure why it wasn't. Oh, of course, that's why. The reason being is that we need to make sure that the group input actually has it set up with the set material. Go to go ahead and just simply find from the group input, attach it to the material like so, and we're going to get ourselves a nice setup. So I think I could just use that same group input from the previous set up. All right. Now we can actually see the material. Let's go back on to the shading and let's start working with it. We have a couple of things to work on. We're going to go ahead and select the sphere, that's going to give us a brick set up. Now, for the color, we're going to actually work in regards to making it a little bit different to the setup. Yeah, we're going to start off with what we had previously, which was the noise texture. Although in this particular case, we don't necessarily need the setup for the color ramp just yet. Going to click control and shift and see how the setup is for the scale. What we're looking for right away is going to be a much larger type of variation. I'm going to drop down the scale quite significantly up to a value of six. We just want to have some grunge, some smug rot overall section of the bricks. We're not using this for variation of the bricks individually, but we're just getting ourselves some more variation in regards to the noise itself. So that's going to be quite all right. The color ramp, we're going to keep it off to the side just for now. And I'm going to just move everything to the side just so it would be a little bit more clear what I'm doing. The main thing that we're looking for now is actually, we need to make sure that we generate some variation mixture between the noise. So for us to do that, we can just simply duplicate this what we have over here. Actually, before doing that, I'd like to make sure that this has, this has less detail. It's not going to be just grandi. This one is just going to be a more softened up type of look and for the roughness, we can even lower down a little bit as well. I think that's going to be quite all right, let me check L lunar as well. Lukin option. Yeah, for this, we're going to increase it. Basically, we have softened up grung but increasing this, we'll also make it a little bit more noisy overall as a setup, which is going to give us that brick type of color. That's going to look very nice overall. The only thing is though that this overall setup is not there in regards to the overall looks. We need to make sure we overlay the noise texture. We're going to hit shifty, we're going to move it upwards, and we're going to actually make use out of something called color mix. Mix is really good when we want to just set up some nice detail between the mix of textures. We can just take both of these in, and plock them in. By default, it's not going to do anything. The reason being is that firstly, we need to fix up the noise texture. I'm going to click control ship, tap on this noise sture over here and see what we can do with it. F this texture, I want to, I'm going to lower this down. I'm going to increase basically the setup. Although I'm going to the negative value, is going to just basically invert the mass of positive 15 and negative 15, they're going to look. Quite similar, actually doesn't really matter for this particular case. The detail, let's go ahead and increase it if we have a look at it closely. We want to have that nice grudge leg so the roughness, We can keep it to a value of 0.7. I think that's quite all right. This can increase the noise. Let's go ahead and actually do that. We are really getting some real nice noise. Actually, let's go ahead and increase a bit of distortion just a little bit like so. This way, we could actually get more variables variation out of this entire setup. Now we can actually have a look at what the mix does. Let's go ahead and click Control shift and tap on the mix to see what we're going to be working with. By the ful, this is what we're getting. Basically, we're mixing up this noise and this noise with a factor of 0.5. If we were to set this to a factor of one, we're going to get the noise at the bottom. If we're going to set it to a factor of zero, we're going to get the noise at the top. So setting this to a value of 0.5 is actually really great for us to get the right result. But I think I'm going to want to increase it a little bit to a factor of 0.7 just to get that original noise texture that we had previously set up. That's going to look really good for us. All right, so now we can actually make use out of the color ramp. This can do quite nicely. We can just reuse it. It doesn't really matter. I'm going to set up one at the bottom to a darker value. The one on top is going to be more of a brownish value, and there we go right away, we're going to get this type of a result. It's already giving us a nice brick layout. We can even add another color ramp over here and get ourselves even more variation actually out of this. I want it to be a little bit more orange, maybe a little bit brighter. I'm going to go onto the review just to see what it looks like. And I'm just thinking whether or not we actually, we've not set up the rende Vu just yet. We're going to go into that in a little bit, though. Let's go ahead and continue on with the overall setup for the color though. So We actually do have the color properly set up. I just want to make sure that we have the roughness value properly set up as well. The normal. I'd like to use a different one. There is a very nice alternative to the noise texture. Let's go ahead and do that. But before doing that, I'd like to actually click control shift to see how this roughness looks like. And we're definitely going to make sure we increase the roughness value quite a bit. I'm going to just simply drag this upwards like so. It's almost going to be just completely non glossy type of a result. We can even see how it looks like. This is what we're getting. The normal map. Again, we're not going to use it just yet. Let's go ahead and hold control to just take it off and see how the roughness value looks like. Honestly, it's quite all right. We might need to increase the scale a little bit or lower down a little bit, there you go, something like this. I think that's going to be quite all right. And roughness, as well as Lucina. Let's go ahead and increase this to just get it a bit more noisy and y, that's going to be great for a default roughness value. The normal itself, let's go ahead and actually make use of something that's similar to noise texture, but a little bit different. There is something called texture. There you go. Texture is real nice. Let's go ahead and click Control shift and just tap on the texture itself just to see how it looks like. This is what we're going to get. It looks a little bit weird if we have a look at at first glance, but once we start scaling it up, we can see that actually gives us very nice type of detail that's more catered towards dot splatting, I would say, if we were to increase it even more, we can see that it actually creates a whole type of mesh, which is really good for bricks because they need to have that really rough type of a design, and I'm going to increase it to 220 for a value. The detail, we can increase it as well. That's going to basically break down those dots, those splatters even more, which I think is going to be quite nice. Let's go ahead and keep it to a value of 0.0. The roughness is well, We can increase the roughness to a value of 0.5. It's going to be quite all right. I think to rest, we can leave it as it is. Now, let's go ahead and actually attach this to the bump node that we had previously, and attach this to a normal map. Let's see, clicking Control Shift, principal BDSF. Let's see how it looks like. By default, hits a little bit too much. It looks like sponge. Let's go ahead and lower it down by quite a bit. Something like this. So, we're getting a nice texture for the bricks, but we're still not quite done with in regards to the color. It's, as you can see, only a default type of a color. We need to make sure that we actually have ourselves set with a proper type of look. So we're going to continue on with texturing for the bricks in the next lesson. Thank you so much for watching, and I will be seeing you in a bit. 23. Adding Material Detail for Cycles Renderer: Hello, welcome back everyone to blended basics Geometry node, Brick Walls workshop. In the last lesson, we set ourselves up with a nice base for the bricks. And I just realize that we've not connected actual color for it. So let's go ahead and actually do that right away. There we go, to get this. Let's just give it a moment to get this sort of a result. But of course, it looks a little too flat. So we need to actually work in regards to getting a nice material or the renders as well. So, by default, there is no way of just making the material look unique for each individual bricks, unless we make use out of the post processing effects. So what I mean by that is if we were to go onto the tool settings, not onto the tool settings onto the render settings and change the render engine from E to cycles, this will give us basically the setup for the render view that's rate tracing instead of real time rendering. So now if we were to go to render view, we're going to get ourselves this result, which once we start rolling around, we can see that it's actually blurring out and whatnot to help us with the overall setup. We're also going to enable the noser. So this one over here, let's go ahead and enable it. The noiser will help us to basically get a nicer detail, and I just realized that we're not seeing anything. So real quick, let's go ahead and fix that. Within the shading parameters, if we were to go on to the world setting, over here, we're going to get ourselves the shading basically for the world lighting for the sky box. And we can make use of this if we were to click Shift and A. Search for sky. There is a very nice texture sky texture. We're not going to go too much in depth in regards to the set up, but all we need to know now is that if we were to connect this to the background, like, so we're going to get ourselves a nice basic type of a sky. So that's all we're going to need for now. Let's go back from the world to object shader type. And within here, quickly talk about what we had. The noser is basically going to help us out to make sure that we don't see all of that noise constantly rendering the stuff. I would also recommend you to just change Max sample count to something like 20. Otherwise, it's going to be constantly consuming your GPU power. That's not really good. And the other thing that I need to tell you is that we need to change the device. So from CPU, change it to GPU. If you're not seeing this, which will actually, by the way, speed up your work your rendering. If you're not seeing this, just go to edit preferences, and this should be within the systems cycles render devices. Make sure you set it to Kuta or Opt X. If you have it, if you have it set as none, it's not going to support basically the GPU, as you can see over here. So just make sure you have it enabled, and we should be able to make use out of the GPU out of your graphics card basically within the computer. So now that we have this enabled, let's actually make use out of some post processing effects. The very first one that I'd like to make use out of is going to be something called random per island. So if I was to go all the way up, just move the color a little bit to a side and search for I think at this time, we need to just search for geometry. Yeah, this is going to basically give us a geometry node. They'll give us all the needed information which we can make use out of to generate whatever we want basically. In this case, it's going to be random per island. So if I was to drag this out for now and just look for color ramp, so we can see that by default, if we were to click control and shift, just tap on a screen, this is what we're going to get. It's going to give us all sort of values 0-1 and just going to just give completely randomized type of result. If we want to have even more unique type of a result, we can actually do that. We can just click on the plus symbol over here. And if I was to change this to instead of just using gray value to use something like a color. You can see that everything that's been gray is going to give us a brown outcome. But everything that's black is still going to be giving us black outcome. Everything that's been white is still going to give us the white outcome. That's quite nice. This random per island is not going to work, by the way, if we go to normal material. It's only going to be working in a random view. It's also quite costly when it comes to the performance. So I recommend you not to over use this type of a nod because it's going to give you a lot of headaches when rendering out your own unique type of styles and setups and scams. So basically, with this setup, going back to the color ram, we can actually click plus one more time. I'm going to select on this arrow over here. It's going to give us plus symbol in between these two arrows. Selecting the white arrow, going to click on the plus. We're going to get this. And I think that's quite enough. Let's go ahead now and basically get ourselves in nice colors. By clicking on a black, we can change this to be maybe a little bit different. Something more greenish, for example, by clicking on this, we already have a brown. We can just change this, maybe like more of a yellow, type lick. And we're just going to be able to this way get a lot of variation out of the brick set up. I'm just wondering, we haven't changed the yellow just yet. I'm going to make it a light color. It really is up to you how many variations we want if we were to add more of these arrows in between. It would give us even more of a variation. If we want to for example, add something that's a bit more varied within a dark section, we can just click on this arrow over here, click, p symbol, and that's going to give us an arrow over here. Now we can just change it to be maybe a little bit brighter, for example. It's not going to be as many dark bricks. That's also an option. Although in this case, it's a little bit too bright for me. I'm going to lower it down. There you go. Something like that. All right, so not are we happy with the setup. And with them of variation, we can actually add it onto our default setup. So the default setup already had quite a nice color ramp with noise, and we're going to just overlay this with one another. We're going to actually make use out of something called, again, color mix. But in this case, we're going to make use out of multiply. Multiply will basically take the original value, which is going to be in this case, this one over here. No, this one over here. And we're going to multiply it with the value at the bottom. The value at the bottom will basically darken any other values. If it was a lighter value, the lighter it is basically the less of an impact it's going to give us, so we can see what it's going to do. So this is how it's going to affect it fully. If I was to set it 20, it's actually going to give us again, the original color rap that we had over here. But once we start increasing it, we can get ourselves some nice variation in the color. So just like that, we're going to get ourselves a really, really nice type of a set up for the brakes. So, now that we have it like this, we can actually add a bit of an extra touch with in regards to the voice processing. We already have really nice material if we click Control Shift, principle BDS, really nice type of a setup, although right now for some reason, I think y, I've not added this multiply over here, so we're not seeing this result. Let's go ahead and make sure we add it in. Get this type of result, for some reason, it's really bright. I'm trying to figure out why that's the case. Might need to just increase increase the factor a little bit. And we might even need to lower down the brightness. I think the sun actually is a little bit too bright. I really do think the sun is really too bright. So what I'm going to do is real quick, going to go to the world settings, and within here, there's something called sun intensity. We're just going to lower this 2.3, and that's going to give us a much less bleached out type of a resolve. Again, we're not going to go too much into details for the sky texture. We just need to change this sun intensity to a value of 0.3. One more thing that I'd like to touch ideally is going to be something called bevel. There is a different type of bevel in regards to the material shader in regards to the renderer. If we were to search for it, we're going to get this node over here. By default, if we were to click Control Shift and just tap it, we're going to see a really bizarre type of a result. This is basically going to give us based on a world position what we're seeing over here, and we just want to get the result that's actually on the corners. We're going to make use out of this node basically to highlight the edges. So for us to do that, we're going to actually well first of all, We're going to make use out of this and make a duplicate out of this, and we're going to get larger value and diferent shade between them. So we basically tell that if this value is a little bit lower, it's going to give us a picker border, but if it's higher, it's going to actually lower those borders. So we're going to use that information with something called can actually make use out of color mix. And for this, we need to make sure that it's not mix. It's actually going to be different. So again, we are differentiating between those two, and we're going to get ourselves a result. So if we were to click control shift tap on this color mix. By the fault, we can see that it's not right because we need to actually get this to a much lower value. So 0.07, and this one can be 0.02, that should be. That's going to be quite a right. Now, we just need to make sure that actually translates this into a color ramp instead. Let's go ahead and do that. So we're going to get ourselves a black outcome and click in Control Shift, tapping it on here on the color ramp, we can see that this is what we're going to get. It's not quite visible. The reason being is that we need to actually lower the difference, and once we start getting it closer, actually, we're using Alpha. So let's click Control Shift. And by the ful, this is what we were getting. We can see that we are getting some information in between those angles. But if we start to maing it nicely set up, we should get ourselves this type of a result, which might be a little bit too much still. I'm just worried that it might be because the bricks themselves are having too soft of an angle. It's not giving us the exact type of a nice result that I'm hoping for. For this particular case, I'm going to go back on to the noise onto the geometry node itself. I'm going to just low it down the bevel, something like this. Basically, we're just making sure that the bevel itself is not overly done like this. I think I'm going to lower down a resolution for the bricks. Something like that is right. Okay. Let me just go back on to the shader, and we can actually start working with the seta. So Shading, let's go back on to the bricks. So this is what we have so far. We need to make sure that we have a nice. Where we need to make sure that we connect this to the actual setup. We're actually going to do it right before the geometry random per island. The reason being is that this is going to affect it directly the color itself, and I just wanted to make sure that the random per island color variation is being kept only afterwards. So we'd get the more unique look and this wouldn't actually wash out those colors. So that I'm going to use this color mix, going to just apply it over here, and this. Instead of just applying it to B, we're going to use it as a factor. The factor will basically tell the areas that are white, they're going to use a value of A, areas that are black in this mask, going to be used by a value of B. In this case, if we were to click control ship, click on a mix, we're going to get this result. I think that's actually the opposite of what I said. So let me just go ahead and fix that up real quick. What I want to do is to change this mix up. Again, this was a factor set with an A, and yeah, we need to do the opposite of that. Change to a B. There we go. We're going to see now those highlighted edges to be with a value for an A, which in this case is just white. We're going to change this value for a white to be a bit more gray ish like so. I would also like to change the total overlay basically for the factor. I'm going to select this white and I'm going to change this to be more gray. Reason, that's not what I needed to do. I needed to change this black value over here. If I was to increase it, you can see that these, these borders start disappearing. That's what we're looking for. You just want a slight nice type of variation going all the way around like that. The thing that I did forget is actually going to be within the difference. We need to make sure that the factor is set to one completely. There we go. We're getting this mask perfectly set up. I was thinking why it wasn't giving me the right results. And the reason being is just simply the factor when it's zero, it's actually just not going to give you the right result. It needs to be set to one. So it would actually properly differentiate between those values. And so that's a mistake on my end. Now I'm going to go ahead and fix this issue real quick. So This can actually be just flick basically. We can turn this white, and we can turn this over one black. And there we go. We're going to get ourselves just an inverted value. There we go. We're going to actually now get ourselves those highlights. All right. Again, this one is completely white, and this one is just gray in case it's hard to see with in a video. And that's going to give us a real nice result. Now, let's go ahead and actually mix everything up together and click control shift tap on the principal PSF. Wait it out until it loads up. And hopefully, It's actually not giving us anything. So I'm just wondering why that happened. What is the case for that? And I'll just realize that it needs to be an A, so I did a quick mistake for that. There we go. That's what we're going to get. A real nice type of A li light. Now we can just increase this if we want, for example, a little bit more. It's going to give us a really nice type of a look. And I think that's worked out actually quite all right, press. I want to just to darken this down a little bit in regards to the color. Overall. Or actually, in order to darken it down, I'll show you one more quick setup. So to darken it down, you can actually use something called RGB curves. It is a really nice type of a node that just helps us to darken everything down, for example, right away. Just get us a nice contrast like. And everything is just so much easier to tweak. If you're making another dot by the way, just make sure to click and hold and then drag it out out of the graph onto those corners, and that's going to just get rid of them. By clicking in the middle, we can just get ourselves a new dot, and we can just drag it around, like And, that's pretty much it. I'm really actually happy with the way this turned out. Maybe the cement itself should be a little bit darkened. So I'm going to go onto the cement and now that I see the bricks. I can just like darken it down a little bit. Like so. And that should give me a nicer type of a result. There we go. All right. So that's going to be it for me. Thank you so much for watching, and I will be seeing you in a bit. 24. Practical Use for Geometry Node: Oh. Hello. Welcome back. I run to Blender Basics, Joy Node Brick Walls workshop. In the last lesson, we less ourselves off by setting up some additional shade of parameters. Now we're going to make sure we make use out of this brick setup. And before doing that, to finalize it, let's go ahead and clean this up a little bit. So I'm just going to go ahead and select everything at the bottom over here. Since ODs are what's making our brick setup. We can just simply rename it. We can click Control J. We can select it all and call this one bricks. Since this is what's causing the bricks to spawn. Then at the very top, We have a selection over here. Can go ahead and select it, click Control J, and call this one. Move it upwards a little bit. Call this one cement. Since this is what's causing it for the cement to appear. All right. Now that we have it like, so, let's go ahead and actually make use out of our bricks. Since I have the basic lighting set up over here. We can make use out of it. And let's go onto modeling mode just to get everything nicely set up. I'm going to go onto D fol Shader. Make use out of this. All we need to do is just simply duplicate it off to the side, then we can click Edit to go on to the edit for curvature, and we can see that we have the line over here, which we can now delete altogether. And we can click seven to go to the top down view. Then whilst we're still in edit mode, we can make use out of this draw tool over here. And with the Draw tool, we can draw a line, whichever way we want to get any shape that we want, basically. Then afterwards, have the curvature setup, which will allow us to tweak and adjust the line, whichever way we want. And honestly, that's all it takes for a good setup. I'm going to check real quick for the lighting. So the lighting is the opposite way. I'm going to go ahead and rotate this around just for a nicer setup. And let's go ahead and make a real quick scene using this druage node. I'm going to real quick, make a cylinder at the bottom for the bottom piece. Just like over here. The reason being is that I want a nice platform just so we could actually work with something over here. To make this, to turn this into a nice actually a nice brick wall with more decorations and whatnot. It's quite easy to make use out of this ometr node. Let's go ahead and go over it the entire setup. Before doing that, I'd like to change up the gaps a little bit. So layer gaps and brick gaps. I'm going to lower them down a little bit, like so Pebble, will actually increase it just by a little bit just just moving out those bricks. And yeah, we got ourselves a nice set up. Alright. So now, what we're going to do is, we're just going to make the best use out of it. And let's say we want to increase the height for it, we can do so like this. We can then put it as two sided wall, and we can just click Shift D, G, Y, put off to the side like this, and that's going to give us exactly identical type of a set up. And if we want something in the middle, we can do that as well. We can click Shift D, G D, and grab ourselves only one layer to get just a single layer break set up over here. Then all we need to do is just increase the height a little bit, and we're also going to turn off the cement. We don't need it for over here, and I will increase the with just to make these bricks a little bit larger, like so, and by doing that, we can just move them to the base, make another duplicate perhaps like so, and we go to cells a nice set up like this. If we have a look at it, it's going to look quite nice overall. Maybe the bricks themselves are a little bit too big, but I reckon that's quite right. We can even make random wi just adjust them a little bit. Like so, so they wouldn't be aligned completely. And another thing we can do is simply adding some bit of decoration on the top. So what I mean by that is, if we click shift the G ZD, we can get ourselves another type of decoration. If we set it up as layer count for one, we can then just move it upwards like this, and we can increase the brick gaps at this point to get ourselves this nice type of a setup. If we change now the whip, we can control how big or how wide we want this to be. Also going to increase the height a little bit as well. And just like that, we're going to get ourselves a really nice type of a setup for the base. And let's say, I don't like how they're interacting with this piece over here. So all I'm going to do is just make a duplicate out of this. Move this downwards, remove this gap, which was where was it a layer gap, gaps. There we go. Should be able to just there we go, remove it nicely, then offset it a little bit, and maybe change the height. I'm not too keen about that. Change the with a little bit. There we go something like that. So we've got ourselves a nice setup. We can go onto the rende vew for the preview and see that they're actually looking quite nice. We could even change the material setup to be honest. We can do that in a bit. I'd like to show you another cool thing that we can do. And yeah, before doing that, I'm going to just simply yeah, just going to duplicate this layer on another side. I don't want this to be I didn't want this to be as a setup or this upper section over here. That's quite all right. This part, I think, I think it's okay. Honestly, I think it's okay for the setup. Let's go ahead and leave it as is. Now, the other thing that we can do is a tower setup. It's actually really, really simple and easy to make use side of these bricks to create a cells custom tower. I'm going to duplicate this to the side. I'm going to go ahead and just delete everything. Oh. Let me just go ahead and just change this to modeling mode. I just realized I was working in a different mode completely. There we go. So with an edit mode, I'm going to go ahead and delete all these vertices, then I'm going to create some called instead of bezier, going to create a circle by whilst using shift and A. Doing this is going to give us a perfect circle just like that. And all we need to do is simply increase the layer count to raise up this tower. And I think for this particular case, I do want these bricks to be a bit chunkier, bigger. So I'm going to increase the height, and there we go. That's going to give us a very lovely and nice type of setup. I'm going to also let me think for a second. Going to just make a duplicate out of this to just put this cylinder. Right for the top to block it off. That's quite all right. Then we can also do a similar trick to what we did for these bricks over here, duplicating it, turning a layer onto one. And then afterwards, we're going to get a brick gaps quite low while increasing the whip. And there we go, we getting a real nice seta. Going to increase the height a little bit. Maybe I'm just going to increase this scaling a little bit within edit mode. If you're doing it with an edit mode, it's really easy to just change the radius whilst keeping the overall set up the pattern quite nice. It's not going to distort these bricks. So one of the good things about the setup. And maybe we want to just stress them upwards. I can just use S Z and just scale them like this as well. It's not a problem simple and easy thing to do. And honestly, we can just make a bit of a displacement perhaps for these, but adjusting them, it really is up to you, however way you want them to do it, honestly, though, if you look at the render, it's looking quite nice. So the only thing that I want to have is maybe another tower over on the side. Let's go ahead and do that. We can just grab everything that we have over here, click Shift and D. O before doing that, I really would like to have additional foundation over here at the bottom with a smaller height. Like this, increase or decrease in the width after we change up the gaps, which the gaps are going to be gaps over here. Let's go ahead and do that. There we go. I set up. Yeah. I'm quite happy with this. Let's go ahead now and just grab everything, and I'm going to move it using ship D to the so side. If we want this Over tower to be shorter or maybe high in this case, let's go ahead and increase the layer count. For this, and just grab the rest of the objects, click G D, move it upwards. Simple as that, Super nice and easy, and we're going to get ourselves a nice base for the tower. And if we want to this we by the way, like just completely looking like bricks. If we want like a tower in the back, that's going to look a little bit more like stone. We can do that as well, since we have so much control over our setup. Let's go ahead and make a duplicate out of the tower that we had previously. Simply upscale this a little bit to get this type of a setup. Then afterwards, I'm going to change up the layer gaps and brick gaps to just completely make them disappear, like so, that I'm going to change the rotation randomness, which is going to be over here, is going to increase it by a little bit, like so, and we need brick randomness, rotation randomness. We increase that as a b, we need to in offset randomness ale bit. Just to get more stony look. We're going to increase the bevel a little bit. Displacement strength, for sure, we need to increase it, and we're going to get ourselves really nice and chunky type of stone like this. Maybe bevel at this point needs to be lowered down just a bit. I think that's all right. Gaps. Let's go ahead and increase the gaps, just like this to make sure we offset that displacement. Something like this. The scale of displacement, let's go ahead and play around with that a little bit as well. Something like this. All right. If we want to have a different type of a shader, we can just reuse what we had previously. So we had this one over here for the bricks. I'm going to make a duplicate for this sphere. Just going to make a new material using this button over here, which is going to just create a duplicate of the same shader. We can just rename this to be stone. So then we can apply this stone onto our shader. And I'm going to go on to shading panel. Going to select that stone, the duplicate that we just created and change this up a little bit. And for this, let's go ahead ahead and see. We could individually change up the color ramp areas over here, but since stone that I want to have is going to be black and white. All we need to do here is just simply add another color ramp ramp like so, and just add it after the brown section end because we're doing it like So, is going to give us a black and white. Of course, we need to do the same thing over here as well. This is just going to turn every color into black and white. And just like that, we're going to get ourselves a really nice type of stone. All right, so we can finish it off, for example, by adding a nice cap over here at the top, if we want to, to make sure it fits in nicely, we can even turn this into a cap just like that. And I'm rushing through it, but honestly, the creativity is based on you, whichever type of a setup you want. You can do it. I'm just going to smoothing this off as well, level off this edge. Keeping it simple, keeping it short and just using it just for the sake of creating a piece to make it fit whatever I want to be honest, and just going to maybe I'm not sure why. Let me just go ahead and add a couple of edge loops. I'm just going to drag this in. Make it nice and simple, L. So we're going to go on to convert mesh, and now it's going to be just a simple math. Can now go ahead and just delete these bases. I can click L to make sure I select which bricks I want to delete, for example. And afterwards, we can just go ahead and delete them, like so. There we go, we're going to get a s a nice wind although here, I realize that it's going to have a set up. It's going to have a set up for cement as well. What I'm going to do is, I'm just going to grow this selection, just delete part of it. That's all right. Let's go ahead and just delete the faces, and we're going to have ourselves an empty hole. But as empty hole, we could make ourselves a window, or if we're being extra lazy, we could reuse the setup that we have over here. Let me just go ahead and think the best way of doing it. I'm going to simply remove the layer count to one, make sure that the width is set up to whichever way I want. The height could be also a little bit bigger, and I'm going to click seven, going to make a window over here. Going to delete these parts, draw a new one and just draw a square. L so Maybe we need to adjust it. Maybe we don't really is up to you how clunky you want this window to be and whatnot? I think that's quite all right, though. Afterwards, we're just going to go ahead and let's go ahead and, let's reset the origin point since it is just being a little bit off. We can then place this part in the window section, just like that. Yeah. There we go. With within a single lesson, we were able to create ourselves a setup that's really nice and easy to manage. Maybe this one I don't quite like how it got to this part which's going to just a real quick. Maybe just to make it easier for myself. I'm going to low it down the width and that's going to just give us these bricks instead, like that. And maybe a little bit raise that up a little bit of sorry, actually, we need to lower this down. We need to raise the up, and there we go. All right. So yeah, that's pretty much it. I'm going to change that stone to a stone. We have over here. Now, the rest is going to be sped up at four times the speed. All of the techniques you're going to be seeing now are just simple type of setups that we basically covered throughout this video. And I'm just making sure that right now the window frame is nicely set up. I'm adding a bit of additional type of decoration for the main tower itself. Just playing around with the shapes, making sure that we're getting our desired result. I really do recommend you just playing around with the geometry node itself. It's really versatile, really simple to use. And most importantly, you can just speed up your workflow in a quite impressive way to be honest. I wanted to make sure that we're also getting a nice setup at the front as well. I didn't just want the wall to be plain. So we went ahead and just ticked off the offset for the bricks themselves. And I went ahead and just played around with the shape a little bit. I'm going to make use out of them to get some nice pebbles, some stone chunks at the front of that wall. Right now I'm just playing with randomizer a little bit, making sure that they're nicely clustered up. And once I got the desired shape, I just went ahead and adjusted it to the wall itself. And you'll see that it looks quite nice, but in the other area, I wanted to make sure that I'm breaking that up a little bit more in regards to the setup. So what I ended up doing is just after I rescaled it a little bit, after I was happy with the overall size. I went ahead and just changed that into a mesh, converted into a mesh, the same way I showed it to you for the tower. Afterwards, I clicked L a couple of times on the ones that I wanted to delete, I removed those type of chunks, and I got myself a very nice type of shape. I was quite happy with the overall design, but I did want to help myself out to make it a little bit more broken up. I like that pebble type of a luck, but I wanted to make sure it's set up like that throughout this entire tower. And I was playing around with the roof afterwards a little bit as well. We're going to add more detail, but we need to make sure that the stone itself is nicely set up for the base of those towers. So I just decided to use that as sort of a foundation for the overall walls and towers. And I think it came out pretty nicely considering that we're just using basically one type of a tower, a one piece of geometry. I know that is. Then afterwards, I wanted to make sure I get something from within that section in the window. I was playing around with area light, but I didn't quite like the setup. So I went ahead and tried maybe using an emissive plane in the window, but then it was just grabbing too much attention overall. So I went ahead and just turned it plain black, and that seemed to have made it look much nicer for this type of piece, although it's quite simple, quite basic wanted to keep a nice aesthetic overall for the composition that is. Then afterwards, I started playing around with the shape of the tower as well, wanted to get the ability to break down the levels the floors a little bit for the tower. So I just used the geometry note to help me out with that. And I just placed a couple of those rings around the tower to help me out to get a nice shape. And once I was happy, I realized that yeah, the roof itself wasn't quite nice. I changed the material real quick for the platform itself, wanted to just keep it basic material, turned it reflective and made sure it's metallic, so it has that nice reflection for the platform. And once I was happy with that, just start playing around with the tower shapes themselves a little bit before going on to the main tower. So I just got some nice intersections. For the upper side. And yeah, once I was happy with that, I just made sure I duplicated onto the uper side as well. And finally, I started thinking about the roof itself. I wanted to make sure I just play around with the brick ome node, since we can make use out of it. We might as well. I wanted to make it look more like stone, but at the same time to follow the shape that I already created. What I ended up doing with just duplicating manually all of those parts like so, and just rescaling the rings in edit mode. This allowed me to make sure that the proportions of each individual bricks are being kept the same whilst the shape is getting closer to what we want. Then afterwards, I went ahead and just made sure I converted to a mesh, used proportional scaling for each the top and the bottom pieces of those bricks, and manually basically manually readjusted the overall shape, which made it deform onto the tower, onto the shape of the roof for the tower. And I just ended up readjusting some parts. Make sure that the upper section is also filled in with just a quick cylinder since it didn't matter it wasn't visible very much, and I just went ahead and just checked out it looked like I liked the shape a lot, but I needed to make sure that I changed the material itself. So I went ahead and grab all of those pieces, slightly readjust them a little bit again. And once I was happy with that, I just made sure to grab all of those materials, linked the materials to make sure that every single material being used the same. I made a duplicate out of the brick material, and yeah, just use Control L to link materials from my selection. And once I got that, all I need to do is just simply adjest. I got myself a color ramp again. Although I could have used the previous color ramps, I just wanted to make sure I just recolor it real quick. For a nice different variation. I didn't need you to use a lot of variation for that piece for the roof since I thought it looked already nice as it is. And yeah, that was pretty much it. So I really hope you enjoyed this video, and you learned how to make use of it in regards to its practical work, what is geometry note. Thank you so much for watching, and I really hope to be seeing you in our our lessons as well.