How to create walls

From Post-Apocalyptic RPG wiki

Jump to: navigation, search

Submitted workflow.png This article covers a submitted workflow.

Sumbitted workflows are currently under consideration to be utilized by the development department(s).

In this how-to we'll create a set of simple wall tiles to show some of the blender basics.


Getting started

We'll start with the The rendering setup. Load it up in blender and set your workspace preferences (i.e. I prefer 4 windows and a seperate render output). Now save this to wall.blend.

Go to layer 3 (3), select the basic 1x1 tile (right-click) and move it to layer 1 where our camera and light setup is (Shift-M + 1 + enter). Do the same with the character on layer 4. We use the character just for scaling purposes and move him back to layer 4 once we have a fitting wall height. Switch back to layer 1 (1).

Creating the basic shape of the wall

We'll use the 1x1 tile for our wall since it's already at the right position. Go into edit mode (Tab) and select the two vertices on the left by either shift-clicking on them or by using the selection box (b). Now move them along the x-axis (g + x) to set the width of the wall.

Bbasics 001.jpg

Now we give the wall some height by extruding. Select all vertices(a') and extrude(e) them along the z-axis(z) until you're satisfied with the height.

Bbasics 002.jpg

To make it a bit more complicated and to make the wall look a little bit more interessting I added a dent to my wall.

Creating the dent

For the dent we need some round corners. So we obviously need a circle for that. But the vertices of the circle need to be at the same x-coord as the face of the wall. To do this, select at least two of the vertices wich face the camera. Now hit Shift-s and select Cursor->Selection to move the 3D Cursor to the median point of your selected vertices. It should now be placed exactly between the selected vertices on the surface of the wall.

We can now add our circle for the corner. While still in edit mode (because we don't want the circle to become a seperate object) hit Space Add -> Circle to create a circle on the face of the wall. Select 12 vertices. Sometimes less is more. While in side view ('Num+3) move the circle to the edge of the wall. If you do this in another perspective you mess up the x-coord of the circle while moving! Always check your perspective before moving anything. (I usally press 1, 3 or 7 before moving(g) to get an exactly axis-aligned view).

Ok, now for the slope of the dent we need the circle a second time but smaller. Hit e to extrude and before moving the mouse hit enter. This will place the extruded vertices on top of the circle. Hit Shift+s and Cursor->Selection to set the 3D cursor to the center of the circle. Now hit s to scale the extruded vertices. When you scale or rotate something the basepoint of this operation is the pivot point you can select in the toolbar of your current view. Therefor we centered the 3D cursor before to scale the circle around this point. Now delete the unnecessary vertices.

You should end up with something like this:

Bbasics 003.jpg

We need the corner four times. So select all vertices of the corner and duplicate them by pressing Shift-d. Don't move the mouse and just press Enter as we don't want to move the duplicate. Now mirror the duplicated vertices by pressing m and select the z-axis by pressing z. Now you can move the copy along the z-axis so its right under the first corner (g + z). Connect the 4 vertices in the middle and create a face between them.

Bbasics 004.jpg

Now repeat these steps. Duplicate the two corners, mirror them, move them along y-axis, create faces until you end up with something like that:

Bbasics 005.jpg

One last step is to select the inner ring and move it slightly in negative x direction. You could select all the vertices manually or you could just Alt-Right-Click on the inner ring, which should select the whole ring of vertices.

Test render

When you now do a test render you'll notice two things: We only see a part of the object and we dont't see our dent. The first problem could be solved by moving the camera around and setting the output format to 640x480px or similar. But then our ISO perspective would be broken. What I usually do is to add a second camera (Space Add->Camera) make this my active camera (Strg-0) and use this to render the object from diffrent perspectives. Once I'm done I make the original, untouched camera the active one. To speed up the rendering time for tests disable OSA, Ray and all this stuff in the rendering settings (F10) and be sure to disable Ambient occlusion in the shading tab (F5) under world buttons.

Now to the second Problem: Where's our dent? It's under the face of our wall. To select faces the easiest way is to go into face select mode (Ctrl-Tab-3) or just press the according button. You can now select a whole face instead of selecting the 3-4 vertices one after another. Press x and delete the face. Now do another test-render

Bbasics 006.jpg Bbasics 007.jpg

You'll notice that our inner ring is free floating inside our wall. We need to connect the inner ring to the rest of the wall and create faces. We could do this by selecting 3-4 vertices, make a face and move on to another 3-4 vertices until we're finished. Another, easier but often uglier way (on complex structures) is to use blenders auto face feature. Go to top-view (7) and select all the vertices that face the camera by using the bounding box method (b). Be sure to uncheck the button occlude background geometry to also select vertices behind other vertices.

Bbasics 008.jpg

Deselect the inner ring by Shift-Alt-RightClicking on the inner ring. Press Shift-f to auto make faces between all vertices. Press Alt-f a few times to get some better results. You may need to remake some faces by hand to clean up the mesh because the auto face feature is far from perfect.

Cleaning up the mesh

To make some round corners select all vertices and select set smooth under the editing tab (F9). When you test render it might give you some awkward output. From time to time you need to recalculate the normals (the direction where each face is... erm... facing). This works very well by selecting all vertices and pressing Ctrl-N. Otherwise you need to do this by hand. Also be sure to remove double vertices (vertices that overlap) from time to time (A + W Remove doubles)

When you use set smooth there are likely some edges you don't want to be smooth. The easiest way to prevent this is to apply an edge split modifier under Editing (F9)

With all this done you should end up with something like this:

Bbasics 009.jpg

Only thing left to do is to apply some textures and some rubbish.

Final result


some shortcuts / tips

  • remove doubles from time to time (a+w)
  • recalculate normals from time to time (a+Ctrl-n)
  • when you move something always keep it aligned to the axes (g+x,y,z)
  • Shift-d duplicates the vertices or the whole object&properties
  • Shift-Tab enables the snap to vertices/edges/... function. Useful for merging two meshes together
  • r rotates, g moves, s scales
  • coordinates and scales in edit mode are not the same as in object mode. (vertices which are 1 unit away from eeach other in edit mode remain 1 unit away also when you scale the object in object mode)
  • Ctrl-Z undos Ctrl-Shift-Z redoes
  • an object is scaled along all it's axes until you tell blender to not use one axis by pressing Shift-x|y|z while in scale/rotate mode
Personal tools