What does the "nodraw" texture do?

I was making a map that had water, and the tutorial said to use nodraw, then erase it, then put the water texture in it’s place.
just wondering, what is it for?

It’s a texture that doesn’t really exist in-game.

Any face with nodraw applied (with exception of displacements) is culled during compiling

[editline]6th February 2011[/editline]

The more the better

Not really culled, because it still exists when you use wireframe mode and for collision. But the interconnecting backfaces are, but that’s not nodraw specific.

But what does it do?

-snippity snip-

Exactly nothing, which is why it rules. It’s like an opposite material.

Just start with a completely nodrawed brush then add textures to the sides you see, that way you won’t be rendering a texture that’s on the bottom of a brush that you never see. Having it can improve performance a bit because you won’t be rendering useless textures that can’t be seen from the players perspective. I don’t believe light can seap through it.


No Draw 
Solid; Invisible; seals [leaks](http://www.facepunch.com/wiki/Leak); blocks visibility if used on all surfaces of the same brush. Casts shadows.

There’s no point nodrawing faces that cannot be seen, because they are culled. There’s not really much use for nodraw really, because if you can’t see a texture (like a roof) it’s not being drawn anyway unless it has $nocull enabled.

How come if you look at map examples made by valve, the surfaces touching the void have nodraw on them? I thought those surfaces don’t get drawn no matter what anyway? Redundant?

I’m sure it reduces the compiling time by a millisecond. Which in Valve time, would be a long time.

It’s a completely invisible texture that is used for making brush entities, walls etc etc that you don’t want to be seen for what ever reason, basically an invisible texture.

It’s also good to use for performance optimization, for example, if you have a brush face that cannot be seen while playing through the map the way it was intended, you texture it with nodraw. This way you won’t render it as it does not need to be rendered anway. It also speeds up compiles.

Personally, I make all geometry using nodraw, and texture the faces to my liking when I’m done.

Also don’t forget to use func_details in your maps, they’re essential for quicker compiles and better performance in game.

Simply put, if you have brushwork in your map that is solely intended for DETAIL, as in is not a critical part of the map flow, e.g a wall, floor or ceiling, but is small and/or intricate, just select the detail brushes and hit ctrl+T and it will be set to the default entity(func_detail) and you’re done.

Examples of detail brush work: Columns, Beams, Crates, Fences, Counters, Tables. You know, detail shit!

Also use hint/skip. But I’ll let you research that, little too complicated to get into right now

it could have a lot of uses actually; you’d just have to get creative with it, for example my shitty hologram:

i used nodraw on the edges to hide them and give them a more ‘holographic’ feel.

i also use it when i have connecting windows to hide the connection line.

How is that hologram shitty? It looks really good to me.

Most people already said why it helps and why it doesn’t, but I mainly use it so my map doesn’t look sloppy in Hammer with tons of unseen textures everywhere ( ie between walls, underground. )

Pretty much this, even if it doesn’t help a great deal (Or at all), I start off with all of my brushes in nodraw, then only texture the sides I need. Keeps everything looking nice and neat.

It doesn’t speed up compiling by a whole lot unless you have huge areas which the player will never see, in which case you should just block those areas off with the skybox.

Brushes to seal under a large area of displacements.
Case closed.

You can just block that area off with the skybox too if you like, you don’t need to use nodraw and it doesn’t run any worse using skybox. Nodraw is still a better solution though.