Making Irregular Staircases the Easy Way

Discussion in 'Tutorials & Resources' started by KubeKing, Aug 26, 2016.

  1. KubeKing

    Server Staff KubeKing dan's birthday was fun too

    Messages:
    1,262
    Positive Ratings:
    1,570
    Staircases in Hammer: they're hard. Let's learn how to make some tricky tricky staircases, k?

    This tip will work with any staircase dimensions.

    (Disclaimer: This is for irregular staircase dimensions. It is recommended that you use regular dimensions for all your staircase needs, but this is a catch-all way to handle things.)


    Step 1)

    Make a slope in the dimensions that you want your staircase to have.

    [​IMG]

    Step 2)

    Using the Clipping tool, in the top-down view, cut your slope into pieces as so.

    [​IMG]

    Step 3)

    Flip each piece vertically and separately using ctrl+I. It is recommended that you use a 2D side view to select each piece. Shift staircase into place as necessary.

    [​IMG]

    Step 4)

    Celebrate! Don't forget to clip your creation using blockbullets. You can also add fancy side slopes. Most times you should func_detail the entire staircase.

    Make sure to get rid of those annoying bottom slopes. One way to do this is to create a new brush for each staircase, at the height of the old brush. Remember that new brushes created in the top-down view will retain the height of anything you have selected while making the brush.

    [​IMG]

    Players will be stepping all over your creations in no time!

    Edit)

    Here's an alternative (better) way to cut the bottom of your stairs:

    [​IMG]

    Thank you @DrLambda for the illustration. Thank you @Crash and @Crowbar for clearing up some confusion. @Crowbar's second comment below discusses the difference in faces between different staircase geometry methods.
     
    • Thanks Thanks x 2
    Last edited: Aug 26, 2016
  2. DrLambda

    aa DrLambda L69: Teeheehee, Member

    Messages:
    458
    Positive Ratings:
    454
    In terms of optimization: You should really nodraw the brush faces that wont be visible after compile.

    Also, i heard that you're supposed to use a big triangle under the stairs to fix visleafs/lightmaps etc, at least when it has brushes on both sides. Thinking about it, i'm not 100% if it matters (because the compiler will cull the invisible faces not used, and vis calculation shouldn't be any different) but i've always done it this way:

    stairs01.PNG
     
    • Thanks Thanks x 1
  3. Crowbar

    aa Crowbar perfektoberfest

    Messages:
    1,441
    Positive Ratings:
    1,196
    Would never have thought.
     
  4. Crowbar

    aa Crowbar perfektoberfest

    Messages:
    1,441
    Positive Ratings:
    1,196
    About the triangle brush:
    upload_2016-8-26_11-59-43.png
    Left is n+1 tris, right is 2n tris.


    upload_2016-8-26_12-1-0.png
    Left is 1 face, right is n faces.

    If the stairs are big, you can use the triangle brush as a worldbrush so it cuts vis and participiates in visibility calculations.
     
    • Thanks Thanks x 1
  5. KubeKing

    Server Staff KubeKing dan's birthday was fun too

    Messages:
    1,262
    Positive Ratings:
    1,570
    I added an edit to address these issues. Thank you very much!
     
  6. MaccyF

    aa MaccyF Notoriously Unreliable

    Messages:
    916
    Positive Ratings:
    1,479
    To clarify a little, func_details' non visible faces aren't culled by the compiler, so you will likely get lighting artifacts.
     
  7. DrLambda

    aa DrLambda L69: Teeheehee, Member

    Messages:
    458
    Positive Ratings:
    454
    I thought it would cull non-visible faces between func_details (or within a multi-brush func_detail) but not between func_detail and world? Sorry if i described it unclearly.