Join Craig Barr for an in-depth discussion in this video Geometry brush tour, part of Unreal Essential Training.
- When blocking out a level in Unreal Engine 4, it's important to be familiar with the options of how to use geometry within Unreal Engine 4 editor. So a couple of things that we want to talk about here. Specifically we're looking at the use of geometry brushes or as it's labeled here in this version: BSP. Which is the legacy term for geometry brushes. BSP means binary space partitioning. And these are dynamic objects that are used to rapidly populate an area to represent a level.
And they can be used for concepting a level, but they're very valuable for working with things like scale and size of a level. And blocking out your overall level so that later they can be replaced with your final game assets or your static meshes that you want bring in. So you can think of it in that sense as like a proxy tool. However, it is not just limited to that. These brushes, these items, these objects can actually be used as final game assets. You can apply textures to them and they certainly can be used to build an environment.
We're going to take a look at how these brushes work, and I just want to point out that there is a big difference between these objects here and the basic objects. So you can see the basic objects that we do have things like cubes, spheres, cylinders, cones, etc. But those are static meshes. Those are base geometry. Those are regular pieces of geometry. BSP or geometry brushes actually contain things that have a lot more control. A little bit of procedural control in them to do with their size or angling or how they'll be positioned in space.
But the cool thing about how they work is this kind of filling and carving out of areas, or pieces of geometry. So they kind of have this live bullion system about them that's very handy for building volumes to represent your level. Now we want to take a tour of these tools and just get an overall feel for how geometry brushes work. Now, if you have access to the content for this course, you'll see that I am using this Chapter Four O2 begin file. Otherwise, you can simply create a brand new file, and just begin to play with some of these objects here to get familiar with them.
Now, what I want to do here is take a look at how these simple objects work, and why they are different than basic objects. So in this sense here with these geometry brushes, here I've just placed a simple box. A simple cylinder on its side, and I'm using this curved stair down into to fill this space. This is a default scene with the default Unreal floor. And now let's take a look at how these objects work. So the first thing to note is by default you'll see that all of these objects are positioned in this modes panel under BSP, with the add button selected.
Now this is where we get into kind of the dynamic placement of objects with geometry brushes. You'll see the two basic settings: add and subtract. Now, what does that mean? Well I mentioned this idea of a bullion based approach. And if you're familiar with that in 3D geometry, or 3D modeling tool sets, you'll know that a bullion operation is a way that you can intersect, add to, or even subtract from multiple objects, right. So you could take, for example, this cube or this box and another box and be able to add to or subtract from it.
Let's see how that works. So, one of the ways that we might want to work with that is if I took something like a simple box, and I just left-click and drag it into my scene here. And just maybe place it up into this area. And then what I can do. Let's just tumble around and maybe bring it in to something like this, that's fine. Just to illustrate the point here. So I'm not going to scale this or anything. I certainly could scale this down to anything that I wanted to, but I might want to use this to kind of carve in or cut this box here.
So the way that I can work with that piece of geometry, is that I could define this here as a subtractive brush type. So, I dragged it out as an additive brush type, but I can change it once I've placed it. So I'm going to make that one subtractive. And you'll see what's happened once I've done that. It's carved out that section of the geometry. Now with it still active, I can go ahead and edit this. I can change the overall size and shape of it, and it will update live after I see the preview. You'll see it update as we go.
I can, of course, manipulate this and change the overall positioning of that to rapidly carve out that existing box that I've already put in place there. So that's great. We can start to do things like that. Here's a simple box. It's very linear that we've placed on there. What about more complex shapes? Well, of course, we can take things like a sphere and we could bring this into. I'm using snapping on in here so that you can see that it's snapping in place. This is much too big for what I want it to be. So let's bring it down just a little bit in scale.
And I'm just using to quickly access these transform keys here again. The "w," "e," and "r" hotkey. So that I can rotate or scale or manipulate these as need be. Now, let's take a look at the overall tessellation of this sphere. I might want to bring that up maybe just a simple level. There we go, three is fine. And, again, I have this set to an additive. So if I let this go, it's going to actually, essentially add to this piece of geometry. But of course just to see the overall effect, we can make it a subtractive.
And you can see that we're getting the effect here of a bullion with the sphere into that cube. So this a way that you could quickly, not just only place objects in a scene, but begin to shape them towards something that represents a more complex structure. Something that represents the overall shape and volume of your final game asset. Your final static mesh. And here's something interesting. We have this simple curved stair. Now, you see there's three different types of stairs. We have this curved stair, linear and spiral. And the idea behind these is, that they can provide simple things that your character can walk up and interact with in a game environment.
And you can see, though, that we have controls over how that staircase operates. And if I go into our details panel here, this is where we can, of course, change the brush type to be between additive or subtractive as we've looked at. But we can adjust how we want the overall shape of that brush or that object to be. Right now it's set to curved stair, but we can turn it to a bunch of different static shapes in here. I want this curved stair, so I'm going to leave it as that. Now here we can adjust things like, the inner radius of the curve.
The overall step height. The overall height and width of the stairs, but we can also get into interesting things like the angle of the overall curve. And you can see that we can address this or adjust this live to really kind of dial in something that might be a little more dynamic for what our scene may be. I'm going to leave this one just at 90 for now. But I may not want it angled this way, and this is where I can simply click counter-clockwise. Either dial that in or off. And be able to work with it. And let's actually bring down our number of steps. I don't want it to be that many.
Seven is perfect. And then I'll just grab this arrow and be able to bring it in. And hit the "f" key to frame in, and zoom on that. And, of course, at any time just like any other object within Unreal, if I want to make sure it's locked to the floor, While I have my object selected, I'll hit my "end" hotkey to snap it down to the floor. So there we go. We have a simple stairs placed into here. We might want to make sure that that is actually adjusted to line up with the box here. So we have this top step kind of coming up towards it.
And then of course we can just leave this one alone. We don't need to get into subtracting anything out, because we certainly don't want to do this. We want to leave that as an additive so that it's essentially joined to our simple, little structure there. So this is where you just essentially want to play, right. Get into how these objects work, and how you can manipulate them. And how you can populate your scene rather quickly. Using things like simple boxes. If I just drag and drop that in and then just hit my "r" key to scale it. This is an excellent way to begin to place objects like walls, for example.
So in this case here, I'm just simply grabbing the overall box, scaling it in to represent something kind of in a flat, sort of linear wall type thing. I'll hit end to snap it to the floor. And then what we can do. Let's bring this more over to the edge. That should be fine there. And then, of course, what we could do is we could get into doing something kind of interesting here by bringing in another box, and scale this overall box size right down.
That should be fine. And I don't really need to worry about the overall depth coming out here along 'Y' because I'm going to intersect this or essentially subtract this space from here. I'll just quickly place it. We don't really need to have it perfectly lined up for this just to illustrate this. But this is where you could start to define things like windows in a wall if I make this subtractive. And there we can see that we've cut that out. And, of course, I can dynamically scale that at any time.
If I want to place it a little bit better. There we go. So, you can see that we've effectively cut a hole through that wall. And this could simply be representative of a window. It could be representative of a crawlspace. Of a space that a character could interact with and go through. And, of course, all of these objects can be collidable so that characters and other objects are working with them. So that's just a really quick overview of what geometry brushes are with an Unreal Engine. How they operate. What you can do with them.
And certainly you can see that they're very powerful for blocking out an overall level design or level concept.
- Customizing the Unreal UI
- Creating a new project
- Creating landscapes
- Blocking out levels
- Assembling a scene
- Working with materials and lights
- Adding post-processing effects
- Defining bodies of water
- Adding atmospherics, foliage, and wind
- Working with the Blueprint editor
- Creating cinematics
- Monitoring performance
- Packaging a game for distribution