Making the tower:
Here we're going to create a tower for the corner of our castle, with a futuristic lift to the top. We'll race through the bits you should know from the 'making the castle' tutorial, but I'll explain anything new in a bit more detail.
1. The Workroom
- Open up a new project.
- Make a cube of dimensions 5120 and subtract it.
- Texture the sides with something neutral, I suggest Editor -> BkGnd.
2. The Tower
- Pick texture: CastleWalls.
- Make a cylinder, Height: 2048, Outer Radius: 1024, Inner Radius: 992, Sides: 32, Hollow = true.
- Add the brush.
- Select all the surfaces, align -> planar wall. This isn't ideal, but if you scale to 0.9 the alignment looks fine for a player (but not so brilliant in our fully lit 3D view.
- Select one of the top lips (see below), and then Select Adjacent Coplanars (Shift+C).
- Pick texture: WallTrimStone, and then Align -> PlanarFloor.
3. The Roof
We don't want players seeing out of the top of the tower, and they need somewhere to stand. In addition, we'll add a little design to the edges of the tower, as found on most old castles for the defenders' protection.
Making the roof
- Make a cylinder, Height: 32, Outer Radius: 992, Hollow = false.
- Pick texture: WoodOld.
- In front view align the top of the active brush to the top of old cylinder, then move the brush down 64 units.
- Add the brush. Select all surfaces and Align -> Planar Floor.
Trimming the sides
- Make a cube, dimensions 32, 32, 64.
- Pick texture: WallTrimStone.
- In top view centre the brush on the top side of the cylinder. In front view align the top of the brush with the top of the tower wall.
- Subtract the brush.
- In top view set the pivot point (alt+left click) of this brush to be the exact centre of your cylinder. This should be the origin of your model - be precise.
- Rotate (two moves each time) and subtract so that there are even turrets all the way around - see below for what you're after.
- We now want to select all of the subtractions - an easy way to do this is by texture. Pick one of the WallTrimStone faces, and Select Surfaces -> Matching Texture (Shift+T). With them all selected, Align -> Planar.
Please excuse the old texture showing on this screenshot :)
4. The Wheel
Going right through and over our tower will be an impressive looking wheel, with a fun effect in its middle. This gives the whole scene a bit more character, and takes us away from just building a boring castle. We'll make a design in the 2D editor, and then extrude it into a wheel for our tower.
2D Design
For those of you who wish to skip this step, there's a premade arch2d.2ds file you can open in the editor and then extrude (the final step below).
- Enter the 2D Shape Editor, and within, set grid size to 64 (Edit -> Grid: 64).
- Draw a 2x8 rectangle (2 across, 8 up, midpoint still the origin).
- Select the bottom left vertex and click 'split side' twice
- Move the new verticies to be 2 squares from the top left/top right verticies.
- Set grid size to 8.
- Select the lower of your new verticies and split side twice again.
- Move the new verticies to be 14 squares to the right of the two verticies you added earlier (2 square to the left of the right hand side).
- Set grid size to 64.
- Move the origin (green square) to be 16 squares to the left of the right hand side of the shape.
- Click 'revolved shape' and set 32,32,AXIS_Z
Placing & Texturing
Exit the 2D Editor now, you should have a fairly complex looking active brush waiting for you - let's put that into something solid now.
- In top view the active brush should have its centre at exactly the centre of the tower.
- In front view the active brush should have its centre halfway up one of the turret gaps (16 units from the very top of the tower).
- Pick Texture: CastleInnerWalls and add the brush.
- In 3D View manually (unless you can think of a clever way, I can't see one) select all of the inner rectangles of the arch (being sure to get the lowest two which are mostly obscured by the perimiter of the top of the tower) - including those on the inside of the tower.
- Pick Texture: WellLightEffect_FB, and in surface properties, tick 'special lit'.
- Select -> Matching Texture everything that's still got the CastleInnerWalls texture. Scale to 0.3 and Align -> Planar.
Here's what you should end up with:
5. The Floors & Stairs
In our rush to get an impressive looking rooftop, we've neglected some basics. There's not even a floor in the tower, let alone any way to get up to our magnificent roof. Here we'll give players some floors to stand on, and some stairs connecting them. We're going to make a curved staircase, winding around a fun looking centrepiece. You can have a lot of fun with this paradigm, so try different centrepieces to see what you like.
A floor
- Quick & easy - grab the roof brush, duplicate it and bring it down so its bottom is touching the bottom of the tower walls.
- On the floor, select all surfaces and Pick Texture: FineWood, then Align -> Planar Floor.
Centrepiece & Stairs
- Make a cylinder, Height: 512, Outer Radius: 256, Sides: 32 and Hollow = false.
- In front view centre the active brush, with the bottom of the brush touching the top of the floor.
- Pick Texture: OuterStuccoWallDetail and add the brush. Select all surfaces and Align -> Planar.
- Select the top of your cylinder - being sure to get all faces. For me this was three faces, but it varies. Align -> Planar Floor.
Yours might not look quite this nice by now, but don't worry, we'll be coming back and doing more later.
Before we continue with the centrepiece, we need the stairs, you'll see why shortly.
- Make a Spiral Staircase with:
- Inner Radius: 256
- Step Width: 288 - I really like the narrow staircase feel, if you don't up this value a bit
- Step Height: 32 - If you don't want the players heads nearly touching the next stair up (again, I like it), increase this value, but be aware of how high your stairs will end up - Step Height x NumSteps. You might want to change NumSteps if you change this.
- Step Thickness: 16
- NumStepsPer360: 8
- NumSteps: 17
- SlopedCeiling: False
- SlopedFloor: False
- CounterClockwise: False.
- If you haven't changed anything, this should already be in the right place. Make sure though, that in front view the bottom of the bottom step touches the top of the floor, and the centre of the stairs is the centre of the tower.
- Pick Texture: FirePlaceMantle and add the brush. Have a quick check that none of the mantle design (just the wood texture) has come out on your stairs, it shouldn't have, but pan the texture if it does to get rid of it.
And, back to the centrepiece - we're going to extrude the sides 'through' the stairs for a cool effect.
- Select all surfaces on the centrepiece, then de-select the ones on the top (again, be sure to get them all - I had three, one of which was very small).
- Right click and Extrude -> 128.
- Things probably look quite awful now, Don't Panic. Select one of the top faces, right click and Select Surfaces -> Adjacent Coplanars (Shift+C). Then Select Surfaces -> Memorize Set (Shift+M).
- While you've got these selected, Pick Texture: woodOld and Align -> Planar floor.
- Select all the surfaces of the centrepiece (Shift+B), then Select Surfaces -> XOR With Memory (Shift+X).
- Scale to 2.5, and in panning choose 'flip V' and then pan along the V plane until you have dark at the bottom, light at the top and no sign of the red design. Something like the below is what you're after:
More floors
We're going to have a mezzanine coming off the staircase for the players to run around. We won't do much else with this, but it give a bit more flexibility for future expansion, and makes the room a bit more even.
- Make a cylinder, Height: 64, Outer Radius: 1024, Sides: 32, Hollow = False
- Take the brush right outside of your workroom, and subtract.
- Make a cube, dimensions 16 2048 2048.
- Deintersect the active brush. (It should be perfectly lined up with the new cylinder-space you just subtracted.
- You can delete that subtracted brush now.
- In front and side views align the active brush up with the tower. In top view place the brush so its bottom touches the top stair, and its top touches the top of the centrepiece. It should fit perfectly.
From here on, you'll need to zoom in and out quite a lot - you need to make sure you brush remains perfectly flush with the sides of the tower, and also be able to place it very precisely along the Z axis. Be careful and check often - you won't notice any mistakes until the very end. Here's what you should see after your first de-intersection (the next step):
- In front view move the brush down in so it surrounds one of the stairs. Deintersect. Handy tip: You can use Ctrl+D to deintersect, saving mouse movement.
- Repeat the above step until you've de-intersected of each stair in a 360* spiral. If you used 'NumStepsPer360: 8' as I recommended above, this will be 8 de-intersections.
- Pick Texture: wooldOld
- In front view align the active brush so that its bottom touches the top of the topmost stair. Add.
Select all surfaces of both brushes and Align -> Planar.
Viewed from above, your tower should now look something like this:
6. The Lift
We're going to have a pretty basic lift to take players up to the top of the tower and back down again.
Cutting some space
- Make a cylinder, Height: 160, Outer Radius: 92, Sides: 32.
- In front view centre this within the tower, and drag it so it completely surrounds the lowest part of the wheel.
- Pick Texture: WellLightEffect_FB and subtract. Now, Select Surfaces -> Matching Texture and Align -> Planar floor. Then pan the texture on the V plane so the wheel looks as it did before (for me, this was 2x64, 1x16, 1x1 scaling on V).
- Move the brush up so it completely surrounds the floor of the roof.
- Pick Texture: oldWood and subtract. Now, select one surface of the brush you just selected, add (Ctrl) one surface of the roof, and click Select Surfaces -> Matching Brush, then click Align -> Planar.
Making the lift
You should be used to movers after the castle, we'll be a bit clever with the triggering to make sure the lift stays up after a player has used it. This wouldn't be too useful for a multiplayer game (some 'lift call' buttons at the top and bottom would work there) but we've only got one player, so this should be fine. Also, interestingly, players can reverse the lift simply by jumping, which is a nice touch.
- Make a cylinder, Height: 32, Outer Radius: 92, Sides: 32.
- In front view centre this within the tower, and align it so its bottom touches the top of our centrepiece.
- Pick Texture: WaterRoomGrate, and add the brush. We're going to be a bit creative with this texture again.
- Select the top faces (remember, there's likely to be 3, one of which will be tiny) of the new lift, align -> planar floor and scale 0.716. Then pan along U and V until you have a perfect circle on top (see below).
- Move the circle up a bit in front view, and then do the same for the bottom three faces.
- Select all surfaces, de-select the top and bottom three, align (I used planar walls) scale (I used 0.716 again) and pan until you have a nice pattern on the side. Again, see below for what I ended up with.
- Finally, we want this as a mesh as always. Select the brush, Convert -> To Static Mesh. Delete the brush, find the mesh in the Static Mesh browser, and Add Mover.
Animating the lift
- Make sure the mover's back where it should be, in front view at the dead centre of the tower, with its bottom touching the top of the centrepiece. Set Key 0.
- Set Key 1. Move the lift directly up, so it's maybe 4 units or so above the top of the roof floor. Set Key 0 to return.
- In Properties, set:
- Mover -> MoveTime: 8.
- Object -> InitialState: TriggerToggle - When triggered, the lift will rise or fall, and stop at its destination until triggered again.
- Events -> Tag: Lift - so we can trigger the mover.
- Mover -> BumpEvent: Lift - and, we trigger the mover with itself. A workaround since there's no 'BumpToggle' kind of event. An alternative would have been to program a subclass - easy enough, but we'll leave that for now.
A Spotlight
The last thing I'd like for us to do here is have a really cool spotlight coming straight down that lift shaft. There'll be some lighting in the tower anyway, and natural lighting from the outside, so we'll have this light coming down from the top of our mystical looking wheel. As usual though, we're going to have to fake the effect - but that's ok.
- Go to the Actor Class Browser and grab a Light -> Spotlight. Add it and drag it so it's directly centered on the hole in the roof, but as high as the highest point of the wheel.
- In lighting, give the light a brightness of 2048. In front view rotate the light's beam to point directly downwards.
- Duplicate this light twice, move one down as far as the hole in the roof (just below that hole) and one light down to the lowest point of the wheel.
Finally...
We're done! Add in some very small lights (I used lightbrightness: 32) around the sides to give a bit of a glow, but remember that most of the lighting here should be coming from our array of spotlights. Place a player start point and have fun.