# The Q:A Complex Brushwork Thread

Discussion in 'Mapping Questions & Discussion' started by sevin, Apr 29, 2015.

1. ### aasevin

Messages:
959
Positive Ratings:
686
One of the things I am still trying to understand is the creation of more irregular shapes in Hammer. There are countless "basic" tutorials on the internet for simple stuff and specific entity work, but I can't find anything on useful geometry creation techniques. So I wanted to make this thread to be an aggregate for people like me struggling to figure out how to make some more advanced structures in Hammer.

If you are having trouble trying to decipher how something was constructed, post a screenshot in this thread and maybe someone will be able to help you out.

I'll start:

I spent a couple hours a few days ago trying to recreate these loggia arches in de_inferno. I was unsuccessful. Anyone know how this would work short of copy/pasting or tracing it with the clipping tool?

2. ### aanightwatch

Messages:
640
Positive Ratings:
486
Copy/paste clipping is how I've always done arches. Time consuming, but the only way I know how.

3. ### aasevin

Messages:
959
Positive Ratings:
686
Fair enough, I just think it'd be useful to learn how without having to do that.

4. ### aaLainheath ledger with some dreads

Messages:
748
Positive Ratings:
688
I don't know if this is what you wanted, but it's just a bunch of Vertex edit stuff. There is probably a way to make the detail bottom part of the arches look better but this is just my 10 minute attempt after looking at it in Hammer.
http://youtu.be/6I5WS3g_eno

Edit: For whatever reason my voice didn't go through, weird. Oh well, you get the gist of it.

• Thanks x 1
Last edited: Apr 29, 2015
5. ### aasevin

Messages:
959
Positive Ratings:
686
That's an interesting way of doing it, I'd never thought of that! Thanks for sharing. Looking back at the arches, it seems the vertices are merged in the corners like you have them, maybe Valve did it this way. Also the detail bottom part is part of that particular brick texture for Inferno in CS:S:

EDIT: tried it out, works great! You just have to trace the texture with your vertex placement and all is well. I created 4 identical 32hu wide blocks to be the actual arch, which I vertex edited like you did in the video into position aligned with the texture. Then I made a 10hu wide filler block to be half of the base sides of the arches. Thanks Lain!

Last edited: Apr 29, 2015
6. ### wareyaL7: Fancy Member

Messages:
493
Positive Ratings:
191
At the end of the day, vertex edit is your friend, no matter how much people warn you to be careful with it. He's just the guy who will make pizza in the microwave oven if you give him incomplete instructions.

7. ### aasevin

Messages:
959
Positive Ratings:
686
I just always assumed these things were done by cutting around a half-cylinder or something with a more regular shape as opposed to the inherent irregularity of working with individual vertices.

8. ### aaUKCS-AliasMann vs Machine... or... Mapper vs Meta?

Messages:
1,264
Positive Ratings:
795
All you need to have is the texture, that already shows key points. No need for a visual brushwork reference since when the texture wouldnt match it the effort on that one would have been useless.

9. ### aasevin

Messages:
959
Positive Ratings:
686
For arches I would agree, but in situations where the geometry is more important than the texture alignment like the hemisphere cutout in the center of this screenshot of a new Quake map I stumbled on in the Mapcore WIP thread (whew!), cutting around a half-cylinder would be more appropriate right?

Last edited: Apr 30, 2015
10. ### aaPocketfunc_croc

Messages:
4,496
Positive Ratings:
2,386
In that case just use the arch tool and then use vertex edit to drag the outer corners one by one into the corners of the bounding square, confirming every time it asks if you want to merge the vertices.

• Thanks x 1
11. ### wareyaL7: Fancy Member

Messages:
493
Positive Ratings:
191
Quake has a special type of brush similar to displacements that can make smooth curves like that. In TF2, it's completely different.

12. ### aaFr0Z3nRCreator of blackholes & memes. Destroyer of forums

Messages:
6,391
Positive Ratings:
5,464
Terrain patches, no? Or is that a Radiant only term?

13. ### wareyaL7: Fancy Member

Messages:
493
Positive Ratings:
191
I'm pretty sure quake's are called patches too.

14. ### aasevin

Messages:
959
Positive Ratings:
686
The arch in this picture:

It's similar to my first request, but this time I can't use a texture for reference so vertex editing just seems too inexact. Someone on MapCore made a scene out of it in CS:GO and his arch looks pretty regular so I'm wondering how he did it.

15. ### aaTumbolisuã€€I âŒ„ Iã€€

Messages:
975
Positive Ratings:
961
Not sure about you, but I would use something called an "arch".

16. ### aasevin

Messages:
959
Positive Ratings:
686
Yeah I used the arch tool to make it but it's so finicky. When I initially create it, it's always stretched out even though it looks normal in the preview and I have to rotate it a lot since it always has it facing up in the top grid. Not to mention lining up the bottom vertices with the top of wall. Kind of a hassle. Figured it'd be easier than that.

17. ### aaVincent🔨 Grandmaster Lizard Wizard Jedi 🔨

Messages:
914
Positive Ratings:
680
Sorry to say it isn't much easier than that. You'll have to play with the arch tool or make a displacement (which I would argue is harder than using the arch tool).

18. ### aakillohurtzDistinction in Applied Carving

Messages:
1,019
Positive Ratings:
1,186
You can change this in Tools > Options

When I need to make arches in a rectangular area, I usually make an excessively large arch that fills the rectangular space and then clip it. Dev textures are helpful for estimating the wall width you need. In this example I made a 768 diameter arch with a wall width of 256.

• Thanks x 5
Last edited: Sep 30, 2015
19. ### aaworMattyRepacking Evangelist

Messages:
1,073
Positive Ratings:
837
The arch prefab is annoying. You just have to learn how to use it and plan ahead.

For example, let's say I want a 180 degree arch. I built my map in 128 unit blocks so that corridor is 256 wide. Choose a dev texture, and make sure both Texture Locking and Face Alignment are disabled in the toolbar. This will help your face alignment later on.

Let's use a nice chunky wall width of 64 units for ease of vertex editing later. Drop the grid down to 64 units, select the brush tool and select arch in the primitives bit. Now drag out a square around the place you want to build the arch but give it a margin of 64 units. Make sure you do this in the 2D grid view you want it to be inserted. If you draw it or adjust it in another, make sure to click it once in the view you want it to appear in. Press Return.

Give the arch a wall width of 64 units. I counted sixteen faces in your example arch. We are going to make one side of the arch then duplicate and mirror it, so set it to 8 sides. Put 90 in the Arc field to make the piece a quarter of a circle (360 would be an 'arch' that forms a complete hollow cylinder). Set the start angle to 90 degrees so it rotates to the correct position in the top left. Hit preview. Click OK when you're happy.

Zoom the grid in to 1 unit. Now enter the vertex editing tool (Shift+V) and select all of the vertices. Press Ctrl+B to make sure they are aligned to the grid. They should be, but this step can help make sure that vertices are merged if you choose to overlap them.

Adjust the vertices of the arch brushes so that the outer curve is transformed to a right-angle. Don't touch the inner curve as this should be perfect. Note that for the bottom brush I merged one vertex in to another. This is done by simply dragging it over the top of the other, and Hammer will ask you if you want to merge them. For safety, you should usually click Yes. If you don't get the prompt, then select the vertices and reposition them on the grid, or perform the Ctrl+B step again.

Hit Escape. Set the grid back to 64 units and shift+drag the brush to the right. Press Ctrl+L to flip it horizontally. Position it correctly.

Cap off the arch with a rectangular brush to fill in the gap between its top and the ceiling.

Alternatively, when you are moving vertices around, you could opt to merge one from each of the segment brushes in to the top two corners, turning each brush in to triangle of sorts. The resulting brushwork looks a little strange in Hammer, at first, but the reduced number of vertices and faces will help to keep your map within the limits of the compilation process. Take a look in the compile log at the list of objects for examples. Object limits are one of the reasons why models are used for complex brushwork.

Keep in mind that, with complex brushwork like this, vertices can move off grid when you save, and then later open the VMF. If you are repeatedly seeing this, it may be best to stick to simpler brushwork, like the first example. You can easily realign vertices to the grid using the Ctrl+B function, as used above.

Notice that the underside of the arch is pretty much already nicely-aligned. Because you used a proper grid size and turned off texture locking and face alignment (therefore using world alignment) when you built this room and the arch, the faces of the inner arch and the adjacent walls will line up pretty nicely. If all the faces of a curve have their textures aligned (and therefore their lightmap grids) then their shading should be automatically smoothed. In my experience this seems to work better on concave curves compared with convex ones but it's different in each case. If you're unhappy with the texture alignment you can align a texture on an adjacent face by selecting a source face using the face edit tool (in our case, the wall underneath one side of the arch), and alt+right clicking its adjacent face. Then select this newly-texture face and repeat the process with the next one. Not only will it wrap the texture to that face, it will also spread alignment settings so it's good for things like planks of wood that have been rotated. You can simply 'copy' or 'spread' the texture from the side of a plank to its top and bottom.

Behold the final result.

When you make these brushes, you can make them func_detail if you like, but you must make sure that the portions of the walls and ceiling that are hidden by the arch structure are textured with nodraw. If you leave them textured, then Hammer will render them in-game, which is bad because it reduces performance and increases file size because of the extra lighting data.

Alternatively, as pointed out by UKCS-Alias further on in this thread, you could just leave the arch brushes as world brushes (not tying them to func_detail) and group them for convenience (Ctrl+G). VBSP seems to know they are part of a tunnel and doesn't bother cutting visleaves for them. I tested this and it works great. Alias says that sometimes you may need to include a hint brush. There's also a bonus to leaving them as world brushes, because the faces of the walls and ceiling behind the arch brushes are split and culled during compilation automatically. If you compile the VMF and fly outside the map you'll see the difference if you look at the end walls of the hallway. One of them is still a full square with a dark shadow across its top where it's hidden by the arch brush, and the other is neatly trimmed in line with the shape of the arch.

Thanks to: Tumbo, Alias, Killo and Seba. Sorry if I mislead anyone with incomplete information.

VMF has been updated at 18:06 UTC, 30.05.2015

• Thanks x 14
Last edited: May 30, 2015
20. ### aasevin

Messages:
959
Positive Ratings:
686
Wow, thanks a bunch for the info guys! Really helpful! This thread should be renamed to "arch creation techniques".

EDIT: killo, I'm still a bit confused on your tip. I already had reorient primitives checked. This is how I'm trying to build it now:

I dragged it out in the bottom right view so it should face me when I create it.

That yields this ugly, stretched monster:

Last edited: May 30, 2015