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

Numerous

L4: Comfortable Member
Oct 14, 2009
150
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?
 

Blue552

L3: Member
Sep 16, 2009
137
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'.
 

Altaco

L420: High Member
Jul 3, 2008
484
120
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.
 

Garner

L4: Comfortable Member
Aug 16, 2009
154
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
 

grazr

Old Man Mutant Ninja Turtle
aa
Mar 4, 2008
5,441
3,814
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.
 

grazr

Old Man Mutant Ninja Turtle
aa
Mar 4, 2008
5,441
3,814
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:

Dr. ROCKZO

L8: Fancy Shmancy Member
Jul 25, 2009
580
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..