Snarkpit Articles


Tutorial: Displacement Domes
The purpose of this tutorial is to learn how to make both the inside and outside of a single dome using one displacement surface. The dome in this tutorial will have 32 sides, and its dimensions will be 1152x1152 inside and 1248x1248 outside.

DISCLAIMER: This will be the most tedious thing you will ever do in Hammer. Take frequent breaks and enjoy some fruit (or something), work on other parts of your map, and come back. Anyone who does this in one sitting is mad - I did it spread out over several days since it's so tedious. But the end result is rewarding as hell - It's very pretty, textures like a dream and takes just about nothing to render. Be sure to have some nice music playing and as stated above, take breaks often so you don't end up destroying things.

Step 1: Making the Guide Brushes
Before we can even create the brush which will use a displacement surface, we must create guide brushes. Guide brushes will show us where to move the individual verticies on the displacement surface to make a good-looking dome. First, start by making the base of the dome:


Then, make another cylinder which will be the height and outside curve of the dome. In our example, we will make on that is 160 units high (so we will start by making a cylinder the width of our first guide brush and a length of 320, which we will then cut in half and rotate). Remember to make the guide brushes in their exact size, and not to make one and scale it because scaling moves the vertexes of the brush off the grid. Here's what the product should look like so far:


Now we're done with the easy part. It gets progressively more tedious from here. Now we will create 7 concentric cylinders which are stacked on top of eachother to make a sort of 'mountain' of steps. The only catch is that they can only be so wide as the verticies of the second guide brush. The finished product should look like this:
image
Notice how the edges of each of the cylinders touches a vertex on the second guide brush.

Step 2: Making and Molding the Displacement Surface
Time to make the first (of two) displacement surface. But wait! we get to do some deletion first. Toast the second guide brush (the one that cuts the mountain of cylinders in half. That's right, we don't need the bastard any more. Then cut the cylinder down (easiest way is with the Clipping Tool) to a quarter of it's size - so it's just a 1/4 wedge. Should look like this:

Now create a block brush that goes at an angle from the very bottom outside vertex of the outside edge of the bottom guide brush to the top outside vertex of the outside edge of the top guide brush. It's a pain in the ass to describe, so take a gander at this:

There. Now select the outside face and make it into a displacement surface with a power of 3. In your 3d view, click on the 'camera' text in the upper left and change it to 3d wireframe (3d textured is what we were just using). The rest of the task is simple, yet tedious. Use the 'paint geometry' tool to move the verticies of the displacement surface to the top vertex of each of the guide brushes. Some hints are:
1. SAVE OFTEN
2. Start at the bottom.
3. When moving along the Z axis, all of the verticies of the displacement surface will need to be at the same height. Once you figure out this height, move all of the other verticies on the same plane to that height.
4. The cylinder is symmetrical. You can cut your work (almost) in half if you remember how far you moved each vertex. If you moved it 8 units on the X axis and 12 on the Y, go to the other side of the displacement surface and move the mirror vertex 8 units on the Y and 12 on the X.
Here's a WIP shot:

Once you finish, it should look something like this:

Whew. That was hell, right?
Too bad it's only half over...
Repeat steps 1 and 2 with smaller dimensions (for my example, it would be 1152x1152 instead of the old 1248x1248) since now we're working on the inside displacement. Be sure to use the inside surface of the displacement surface in step 2. Do all that manipulation again, and you'll have something like this:
image

When you're finished, delete all the guide brushes, so you just have the outside and inside displacement surfaces. Enjoy!

Questions/Comments?


Post ReplyView Topic
Discussion
0 starsPosted by Goonlobster02 on Sat Aug 1st 2009 at 6:42pm

First off, Imbrifer very nice tutorial and fairly helpful. However, I would like to add that a person working with displacements can also reduce the paint geometry distance to values below whole number integers if they are wanting to align the vertices of the displacement to the guide brush vertices. For example, if my displacement faces aren't forming a straight line from the outer quarter cylinder to the inner quarter cylinder, I can reduce my move distance (with spatial moving disabled) to .025, .01, .005, .001 and perhaps lower. There is no problem doing this as BSP will not treat it as world geometry and you will get the best possible alignment for your displacement faces. This can save users headaches in the long run when they find they are completely unable to align a vertex.

Also, be sure to use the 2D viewports to help alignment, especially on the Z axis where it is the most difficult when you are viewing all three axes. A useful trick I have found for this is to VIS group each concentric cylinder brush into its own group (bottom in VISgroup 1, second from bottom in VISgroup 2, third from bottom in VISgroup 3 et cetera).

Thanks for the awesome articles!
Goonlobster

Edit: Using your Face Normal option and alt-right clicking to set the movement axis perpendicular to the face also saves you time when you have to constantly toggle between the X and Y axes as it will pretty much drop it right next to the desired vertex you are aligning. Be patient, though as the alt-right click method can be tricky.
0 starsPosted by Fjorn on Thu Aug 17th 2006 at 7:48pm

This does not explain how to make an inside dome at all...

all it says is 'repeat step 2 using the inside displacement' err, wtf?
0 starsPosted by Underdog on Mon Sep 26th 2005 at 12:53am

(@Myrk)
Perhaps you are oversensitive. Imagine for a second that I was referring to the high scores.
0 starsPosted by Myrk- on Fri Sep 23rd 2005 at 7:12pm

Maybe mappers like me and Peri have actually done most tutorials that are posted on the snarkpit, and any others are easy to understand.
0 starsPosted by Underdog on Sun Sep 11th 2005 at 1:55pm

Personally I do not feel that anyone who has not attempted to try a tutorial out should post a score/rating upon it. If you the user, do not take the time necessary to ascertain "IF" the tut is worthy, your score is meaningless.
[author]
Posted by Imbrifer on Thu Sep 1st 2005 at 6:18pm

Subdivide always retains the straight edges of the brush, and thus cannot be used to make simple domes. While some dome-ish creation could be made by using several brushes and deleting the extra ones, it would indeed be difficult to get a dome of a specific size, arch and depth using subdivide and a bit of vertex manipulation.

Plus, once you've done this once or twice, it's a snap smiley
0 starsPosted by Pericolos0 on Thu Sep 1st 2005 at 10:38am

Use the subdivide option, it does miracles smiley
you could probably do a dome like this within a minute with a clever subdivide setup

i made this tunnel that way:
<a href="http://insurgencymod.net/team/upload/Users/Pericolos0/tunnel.jpg" target="_blank">http://insurgencymod.net/team/upload/Users/Pericolos0/tunnel.jpg</a>
[author]
Posted by Imbrifer on Sun Aug 28th 2005 at 8:19pm

Myrk-.. care to elaborate?
0 starsPosted by Myrk- on Tue Aug 23rd 2005 at 11:04pm

Very iffy... I've worked alot with displacements and I've worked out much better ways of doing hollow domes and other shapes than this method.
0 starsPosted by Forceflow on Mon Aug 22nd 2005 at 10:32pm

Woojay for the tutorial.
Post ReplyView Topic