Brushes
Previous  Next

"Brushes" are the building blocks of maps. They are non-concave objects defined by four or more intersecting planes. Each plane is defined by three vertices (a 3D triangle). Where these different planes intersect, edges of the brush are created and this is what is seen in the 3D world. Planes are important to understand because they define the behavior of brushes when they are manipulated.

Default Keys

` (backtick/tilde key) - select all
Escape - deselect all
- (numpad minus) - delete selection
Ctrl+space - clone selection

Rotation and mirroring

graphic

The left three buttons mirror brushes along an axis, the middle three rotate brushes 45 degrees at a time, and the last set of buttons choose the manual rotation step size.

To manually rotate a selected brush, hold Ctrl and drag one of its vertices.

Caution! The Quake 1 and Quake 2 engines have a limitation in their 3D formats that do not allow plane points to have decimal values. This means that freely rotating a brush will eventually cause it to unalign from the grid, as the points will snap to the nearest whole number.

Shearing

Shearing can transform a rectangle shape into a parallelogram in one step. A brush face can be sheared by holding Ctrl+Shift and dragging.
graphic

Clippers

Clippers are a useful tool used for carving and splitting brushes. They are helpful for carving corners off of brushes, creating triangle shapes, or for making organic objects such as rocks or terrain.

Carve - slices a brush in half and removes one part.

Slice - slices a brush in half and leaves both sides remaining.

Flip  - reverses the side that will be removed by a carve operation.

Default shortcut to create a clipper point is Shift+right click. All clip points can be moved at once while holding Alt and right-dragging. To hide the clippers, press Escape.

The clippers stay visible feature will leave clippers visible after a carve or split operation. This can be used to save time when creating the rounded top of arch for example.

The create from current face command takes the plane for the selected face and turns it into three clip points.

See the Clippers  section for more information.

Face extruding
Extruding a face will create a new brush from the current face of the selected brush. The following object was created by extruding faces from leftmost brush and manipulating the vertices of the extruded brushes, finally ending at the selected tip.
graphic
Notice that not all vertices line up exactly to the grid. This can cause problems down the line when trying to align brushes. See the following section on snapping for a solution to this.


Snapping  
BSP has a few different options available for point snapping. To snap an object to the grid, select it and use Snap to Grid or Snap Planes. These two snapping options exist because they behave differently, and sometimes one is better to use over the other.

Snap to Grid - this feature aligns axial or close-to-axial edges to the grid. It is good for fixing small alignment issues or slightly deformed brushes. It didn't help so well in this case.
graphic

Snap Planes - this feature goes through each plane for a brush, and snaps the three plane points to the grid. In the picture below, all of the edges have now been exactly snapped to the grid, although some of the organic shape has been lost.

graphic

Snapping and grid size...
The current size of the grid will be used to determine where to snap points to, so if you have the grid set really large and you snap an object, it may completely destroy it! A good practice is to snap brushes with faces and edges that are larger than the current grid size.

To illustrate differences in the two snapping methods, and to show how grid size effects snapping, here are two more examples.
graphic
Snap to Grid with a larger grid size. The top brush became 2 units tall.


graphic
Snap Planes with a larger grid. The top brush was completely lost, and the brush below it became infinitely tall!

Snap Back option - When this feature is enabled, dragged vertices that are not aligned to the grid will be "snapped back" to the grid when they are dragged.

edge_use_grid option - snap edges to grid (eg, dragging corner of a cube)

vertex_use_grid option - snap vertices to grid (eg, dragging tip of a pyramid)


Setting the grid size to 1 will effectively disable snapping.

CSG Subtract and Merge

Subtract - the selected brush will remove any portion of other brushes that touch it. This can be helpful for putting doors or windows in a large wall, for example, but keep in mind that it will likely make less-optimal geometry than if the door or window were to be created by hand.
graphic

Merge - merge brushes together. This feature can reduce brush count by finding touching and similar brushes and combining them into one.
graphic


Hit Brushes

If a number of brushes are overlapping and it is difficult to select one, hit brush cycling can be used to select the desired brush. Click somewhere inside the bounds of the brush you want to select, and then use Previous hit or Next hit until it selects the brush. Select all hit can be used to select all brush that could be selected by clicking at a certain point.

The default keyboard shortcuts are Ctrl+home and Ctrl+end for previous and next hits, or under the menu Brush->Hit.