does nodraw-ing help optimise/lower processing required for a map?

Discussion in 'Mapping Questions & Discussion' started by Numerous, Oct 14, 2009.

  1. Numerous

    Numerous L4: Comfortable Member

    Messages:
    150
    Positive Ratings:
    72
    Yea, pretty much the title. If I nodraw'd every single primitive on a map, would it run faster, seeing as how it wouldn't need to render as much? How much difference would it make if I went through my map and nodraw'd every surface that wasn't normally viewable?
     
  2. Blue552

    Blue552 L3: Member

    Messages:
    137
    Positive Ratings:
    18
    By applying Nodraw it tells Hammer not to compile those faces.

    This will increase peformance and decrease the size [in MB]

    Faces which are "enclosed" [like if you had two equal sized cubes touching each other] The touching faces automatically do not render.

    It is definitely worth doing, but you only need to apply it to faces which will not be seen and are 'open to the world'.
     
  3. The Political Gamer

    aa The Political Gamer

    Messages:
    4,468
    Positive Ratings:
    1,682
    It also greatly reduces compile times because Hammer does not need to analyze those light bounces.
     
  4. Altaco

    Altaco L7: Fancy Member

    Messages:
    485
    Positive Ratings:
    121
    You don't have to absolutely nodraw EVERYTHING the player won't see. Faces will automatically not be drawed if:

    -They face the void
    -They are completely covered by another face

    Otherwise, if nobody sees it, go ahead and nodraw it.
     
  5. Garner

    Garner L4: Comfortable Member

    Messages:
    154
    Positive Ratings:
    38
    Indeed, always nodraw faces you cannot naturally see by walking around ingame, stickie jumping, rocket jumping, scout double jumping.

    If you cant see it, nodraw it.

    I always build every brush in nodraw and apply textures the the face's i need, it saves time doing it this way since you dont want to have to go back and find every face and nodraw it at a later time if you have build every brush with every face textured.

    And yeah, it will improve performance, compile times, and alot of trouble :p
     
  6. grazr

    aa grazr Old Man Mutant Ninja Turtle

    Messages:
    5,436
    Positive Ratings:
    3,561
    As stated above, if it faces away from the playing area that's always a sensible practice.

    Secondly, you'll want to func_detail a lot of detail geometry. Always nodraw the back of these and other brush entities as these will be drawn, regardless of the face touching another, as vis ignores them.
     
  7. Numerous

    Numerous L4: Comfortable Member

    Messages:
    150
    Positive Ratings:
    72
    By the way, what does func_detail actually do? From what I've read, it basically means lightmapping doesn't effect it. Is that it?
     
  8. megawac

    megawac L4: Comfortable Member

    Messages:
    180
    Positive Ratings:
    29
    Pro-tip read this.

    Guide to optimization and bliss.
     
    • Thanks Thanks x 1
  9. grazr

    aa grazr Old Man Mutant Ninja Turtle

    Messages:
    5,436
    Positive Ratings:
    3,561
    No, func_detail causes vis to skip the object in question to reduce compile times and reduce visleafs. It's sort of like a fake entity (vis skips brush entities during the compile process).

    Pre-Source Level Designers used to use func_wall or func_brush to reduce visleafs and the splitting of polygons on brush faces that came with the old and inefficient vis.exe of the modified Quake Engine that was used for HL1; Valve have supplied themselves (and us SDK users) with this useful little entity, that comes with "out of world" benefits of an entity and less of the dynamic drawbacks (dynamic entities drawing memory from your system resources).
     
    Last edited: Oct 14, 2009
  10. Numerous

    Numerous L4: Comfortable Member

    Messages:
    150
    Positive Ratings:
    72
    Nice. I thought it was something like that.

    Oh, and by the way, I'm disappointed (just realised).
     
    Last edited: Oct 14, 2009
  11. Dr. ROCKZO

    Dr. ROCKZO L8: Fancy Shmancy Member

    Messages:
    580
    Positive Ratings:
    159
    Yes, Nodrawing things is good. But if your map's lagging, don't rely on Nodraw to fix that, the Interlopers guide covers the more important parts of Optimization..