This article's documentation is for anything that uses the Source engine. Click here for more information.

Tool textures (Source): Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
No edit summary
 
(170 intermediate revisions by 30 users not shown)
Line 1: Line 1:
{{otherlang2
{{LanguageBar}}
| ru = Tool textures:ru
{{Source topicon}}
}}
{{TabsBar|main=Tool textures}}
{{toc-right}}
{{Toc-right}}
[[Tool textures]] are used, mostly by the tools but sometimes by the engine, to perform special tasks. They can easily be found in [[Hammer]] by using "tools\" as a filter in the [[Hammer Texture Browser|texture browser]], but other tool textures may be located in different directory.


''"Clip" redirects here.
Anyone can make their very own tool texture, by utilizing available [[Material Map Compile Flags]], such as {{code|[[%compilenonsolid|%compileNonSolid]] 1}}, {{code|[[%compiledetail|%compileDetail]] 1}} and {{code|[[%compilenodraw|%compileNodraw]] 1}} for a tool texture which is not solid, does not cut [[visleafs]] and is invisible.
*For clip textures, see [[clip texture]].
*For the Hammer Clip Tool, see [[Hammer_Clipping_Tool|Hammer Clipping Tool]].''


'''Tool textures''' are used, mostly by the tools but sometimes by the engine, to perform special tasks. They can easily be found in [[Hammer]] by using "tools\" as a filter in the [[Hammer Texture Browser|texture browser]].
A {{code|[[%tooltexture]]}} may also be set, which is only to be seen in Hammer's texture browser, while the {{code|[[$basetexture]]}} is seen in-game; however, the self made tool textures must be shipped with the map, else they might not work.


{{tip|[[WiseClipped]] - tutorial on using many of the Source Tool textures shown below.}}
This page contains tool textures which can be found on any Source games (including description for third-party games which changes how the tool texture works or have different behavior). For third-party games specific tool textures, see [[/Third-party_games|third-party page]].


{{note|All tool textures that are assumed to be texturing an entity, work exactly like ordinary textures if applied to world brushes instead. As this makes them useless for world brushes, their visibility as world brushes is irrelevant. Also, many tool textures cut [[visleafs]]. If you aren't texturing an entity, you should tie the brush to [[func_detail]] or [[func_brush]] for [[Optimization_(level_design)|optimization]].}}
{{tip|[[WiseClipped]] gives a tutorial on using many of the Source Tool textures shown below.}}
 
{{Note|All tool textures that are assumed to be texturing an entity work exactly like ordinary textures if applied to world brushes instead. As this makes them useless for world brushes, their visibility as world brushes is irrelevant. Also, many tool textures cut [[visleaf|VIS leaves]]. If you aren't texturing an entity, you should tie the brush to {{ent|func_detail}} or {{ent|func_brush}} for [[Optimization (level design)|optimization]].}}
 
{{warning|Some games may have outdated or obsolete tool textures in the "Dev" folder, such as {{code|dev/dev_windowportal}} in {{l4dseries}}.}}
 
{{Note|Next to tool textures, there are also brush entities, which can perform tasks similar to tool textures.<br>
For example, {{l4dseries}} have [[#clip|Clip]] for both teams, [[#playerclip|Player Clip]] for survivors and [[#npcclip|NPC Clip]] for infected; however, it also has {{ent|func_playerinfected_clip}} just for player controlled infected.<br>
If you cannot find a tool texture fit for a task, perhaps the game you're mapping for has a brush entity for that.}}
{{tip|Some of these tool textures cut [[visleaf|VIS leaves]] Such as <code>toolsinvisible</code>, <code>toolsinvisibleladder</code>, and <code>invismetal</code>. Which are never seen and would be wasteful to create visleaves for them.<br>You may want to add {{cmd|%CompileDetail}} to the offending materials to prevent them from cutting visleaves. The modified VMT's do not need to be shared with the compiled map, as only [[vbsp]] uses these compile flags right when building the maps.<br>But you do need to use [[custom folder]] (if available, preferred), or pack these up in a vpk file and load them into hammer by editing the [[gameinfo]] to load your vpk with modified files above all other folders and search paths.
{{note|For <code>toolsinvisibleladder</code>, it alternatively is possible in some games to use {{cmd|%CompileClip}} (and optionally {{cmd|$translucent}}) instead of {{cmd|%CompileNoDraw}} and {{cmd|%CompilePassBullets}}, but only if tied to [[func_ladder]] (works in {{dods}}, not in {{css}}).}} }}


== General ==
== General ==
 
=== General — Common ===
These tool textures are available in every Source engine game.<br>
Some of these textures have special function in some games. These special functions are noted by having the game's icon listed in the description (such as {{css}}, {{csgo}}, {{l4dseries}}, {{p2}}, etc.).
{| class="standard-table"
{| class="standard-table"
! width="64px" | Image
|- style="z-index:1; position:sticky; top:0;border:2px solid #525252;"
! width="100px" | Name
! width="64px" style="background-color: #323232;color:white" | Image
! width="75px" | Visible if <br /> [[world brush]]
! width="110px" style="background-color: #323232;color:white" | Filename
! width="75px" | Casts shadows
! width="75px" style="background-color: #323232;color:white" | Visible if <br /> [[world brush]]
! width="75px" | Cuts <br /> [[visleaf|VIS leaves]]
! width="75px" style="background-color: #323232;color:white" | Casts shadows
! width="75px" | Blocks NPC [[LOS]]
! width="75px" style="background-color: #323232;color:white" | Cuts <br /> [[visleaf|VIS leaves]]
! width="75px" | Solid to NPCs
! width="75px" style="background-color: #323232;color:white" | Blocks NPC [[LOS]]
! width="75px" | Solid to player(s)
! width="75px" style="background-color: #323232;color:white" | Solid to NPCs
! width="75px" | Solid to physics
! width="75px" style="background-color: #323232;color:white" | Solid to player(s)
! width="75px" | Solid to bullets
! width="75px" style="background-color: #323232;color:white" | Solid to physics
! Usage / Notes
! width="75px" style="background-color: #323232;color:white" | Solid to bullets
! style="background-color: #323232;color:white" | Usage / Notes
|- id="black"
|- id="black"
| [[Image:Toolsblack.gif]]
| [[File:Toolsblack.gif|64px]]
| <center>Black</center>
| <center>{{mono|toolsblack}}</center>
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes|Yes <br /> (marks)}}
| {{Yes|Yes <br /> (Marks)}}
| {{note|This is the ''tools/toolsblack'' texture, not the ''halflife/black'' texture.}} This texture is often used for brushes that are far away and they are dark. It cannot be lit by any type of light, but is affected by fog color. An example of its use is in the "space" backgrounds during the G-Man monologues in Half-Life 2.<br>
| {{ModernConfusion|This is the [[UnlitGeneric]] {{mono|Tools/ToolsBlack}} texture, not the [[LightmappedGeneric]] {{mono|Halflife/Black}} texture.}}
{{Warning|In {{css}} and {{csgo}} this texture is [[LightmappedGeneric]] use <code>vgui/black</code> instead.}}
This texture is often used for brushes that are far away and they are dark. It cannot be lit by any type of light, but is affected by fog color.<br>
|- id="nolight"
An example of its use is in the "space" backgrounds during the G-Man monologues in {{hl2|2}} or for crude buildings in the 3D Skybox.<br>
| [[Image:Toolsblack.gif]]
Uses [[UnlitGeneric]] in: {{hl2}} {{portalseries}} {{as}} <br>
| <center>Nolight</center>
Uses [[LightmappedGeneric]] in: {{csseries|src=1}} {{dods}} {{l4dseries}}<br>
|{{Yes}}
In games where it uses LightmappedGeneric, you may want to use <code>vgui/black</code> instead (to avoid wasting lightmap usage) or make your own tool texture.
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes|Yes <br /> (marks)}}
| {{as}} Acts the same as ''tools/toolsblack'', but for some reason is used instead.
|- id="nolight_arkane"
| [[Image:Toolsblack.gif]]
| <center>Black Arkane</center>
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{N/A}}
| {{dm}} Acts the same as ''tools/toolsblack'', but for some reason is used instead.
|- id="white"
|- id="white"
| [[Image:Toolswhite.gif]]
| [[File:Toolswhite.gif|64px]]
| <center>White</center>
| <center>{{mono|toolswhite}}</center>
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes|Yes <br /> (marks)}}
| {{Yes|Yes <br /> (Marks)}}
| Identical to ''tools/toolsblack'' texture only in white.
| {{hl2ep2|since}}
|- id="white_arkane"
{{note|Not in {{tf2|2.bold}}}}
| [[Image:Toolswhite.gif]]
Identical to {{mono|lights/white}} (which is available in all Source games), but [[RAD file|doesn't cast any light]] by default. Using glass [[surfaceprop]].
| <center>White Arkane</center>
 
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{N/A}}
| {{dm}} Acts the same as ''White'', but for some reason is used instead.
|- id="blockbullets"
|- id="blockbullets"
| [[Image:Toolsblockbullets.gif]]
| [[File:Toolsblockbullets.gif|64px]]
| <center>Block Bullets</center>
| <center>{{mono|[[Blockbullets|toolsblockbullets]]}}</center>
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes|Yes <br /> (no marks)}}
| {{Yes|Yes <br /> (No Marks)}}
| Foremost solid to bullets, but also to NPCs and physics projectiles. It does not block ''all'' projectiles, though. Projectiles from NPCs such as the acid spit from [[npc_antlion|antlion workers]], will still get through. To allow NPCs and their [[line of sight]] to pass through, turn the brush into a [[func_brush]] with its ''Solidity'' keyvalue set to a solid state.
| {{Warning|This tool texture is actually just a solid invisible wall in every way shape and form. It does absolutely nothing useful.<br>See [[Blockbullets]] for info on how to actually block bullets and projectiles.}}
|- id="blockbullets"
{{csgo}} Use <code>blockbullets_cs</code> variant, which correctly stops bullets even with 1 unit thickness.<br>
| [[Image:Toolsblockbullets.gif]]
| <center>Block Bullets 2</center>
|{{No}}
|{{No}}
|{{No}}
|{{No}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes|Yes <br /> (no marks)}}
| {{tf2}} Identical to ''Block Bullets'', the only difference is that this tool texture doesn't block [[visleaf|visleaves]].
|- id="toolsblocksbullets_forcefield"
| [[Image:Toolsblockbullets.gif]]
| <center>Blocks Bullets Forcefield</center>
|{{No}}
|{{No}}
|{{Yes}}
|{{No}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes | Yes <br /> (no marks)}}
| {{Sin Emergence}} Solid to grenades. Identical to ''Block Bullets'', except that it uses a [[$surfaceprop]] type of 'forcefield'.
|- id="invisible"
|- id="invisible"
| [[Image:Toolsinvisible.gif]]
| [[File:Toolsinvisible.gif|64px]]
| <center>Invisible</center>
| <center>{{mono|toolsinvisible}}</center>
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
| Solid to all objects and projectiles, not solid to bullets.<br>{{l4d}}{{l4d2}}Smokers, Boomers and Spitters can attack you through it, but neither survivors nor infected can pass it.
| Solid to {{ent|prop_physics}}, projectiles, players, & NPCs. Not solid to bullets.<br>
{{warning|Solid to bullets in {{css}} and {{csgo}}}}
{{csseries|src=1}}{{tf2}} Also solid to bullets.<br>
|- id="toolinvisiblenonsolid"
{{l4dseries}} Smokers, Boomers and Spitters can attack you through it. Survivors stop being dragged towards smokers when touching a {{mono|toolsinvisible}} wall.<br>
| [[Image:Toolsinvisiblenonsolid.jpg]]
{{ModernConfusion| {{l4dseries}} {{mono|ToolsNodraw_Noshadow}} uses the same tool texture in the texture browser, which also blocks LOS!}}
| <center>Invisible<br />Non-Solid</center>
|{{No}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{No}}
|{{No}}
|{{No}}
|{{No}}
| {{Sin Emergence}} Not solid to grenades. Similar to Toolsinvisible, used as a utility texture.
|- id="ladder"
|- id="ladder"
| [[Image:Toolsladder.gif]]
| [[File:Toolsladder.gif|64px]]
| <center>(Invisible) Ladder</center>
| <center>{{mono|toolsinvisibleladder}}</center>
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
| Used with [[func_ladder]] in the most multiplayer games except [[Half-Life 2 Deathmatch]].<br>{{l4d}}{{l4d2}} Ladder will not work if used with func_ladder
| Used for ladders in most multiplayer games except {{hl2dm}}, either by itself, or tied to {{ent|func_ladder}}.
|- id="nodraw"
{{important|Leave at least a unit gap between the ladder and any detail brushes to prevent it from eating brush faces of the drawn ladder. This is not an issue in {{l4dseries}}, which keeps brush ladders as a separate entity.}}
| [[Image:Toolsnodraw.gif]]
|- id="nodraw" {{Anchor|Nodraw}}
| <center>Nodraw</center>
| [[File:Toolsnodraw.gif|64px]]
|{{No}}
| <center>{{mono|toolsnodraw}}</center>
|{{Yes}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes|Yes <br /> (no marks)}}
| {{Yes}}
| Not drawn in game, seals [[leak]]s, and is skipped by VRAD. Blocks visibility if used on all surfaces of the same brush. Optimally, every face that can't be seen during normal gameplay should have this texture.<br>{{portal}} Portals can be placed on it, but not in {{portal2}}. Use Nodraw Portalable instead if this behavior is desired.
| {{Yes|Yes <br /> (No Marks)}}
{{note|The "glass footsteps" version of this texture in {{portal2}} does not [[seal]] maps.}}
| Not drawn in game, seals [[leak]]s, and is skipped by VRAD. Blocks visibility if used on all surfaces of the same brush. Optimally, every face that can't be seen during normal gameplay should have this texture.<br>{{portal}} Portals can be placed on it, but not in {{p2}}. Use Nodraw Portalable instead if this behavior is desired.
{{note|The "glass footsteps" version of this texture in {{p2}} does not [[seal]] maps.}}
{{todo|Insert this "glass footsteps" version into the list}}
{{note|While no lightmap data is generated on nodraw faces, nodraw brushes still cast shadows.}}
{{note|While no lightmap data is generated on nodraw faces, nodraw brushes still cast shadows.}}
{{note|Despite common misconception, it is not necessary to use nodraw on faces that don't touch [[visleaves]], as these are automatically removed by [[VBSP]]. This means faces that are outside the map and faces that are flush with another one.}}
{{note|Despite common misconception, it is not necessary to use nodraw on faces that are outside the map and faces that are flush with other faces '''of the same entity''', as these are automatically removed by [[VBSP]]. Additionally, [[func_detail]] faces which touch structural faces will be removed, but vice versa will not (faces completely obscured by func_detail should still be nodrawn).}}
|- id="origin"
| [[File:Toolsorigin.gif|64px]]
| <center>{{mono|toolsorigin}}</center>
| {{N/A}}
| {{No}}
| {{No}}
| {{No}}
| {{No}}
| {{No}}
| {{No}}
| {{No}}
| {{Deprecated}} Leftover from {{gldsrc|2}}, where a brush with this texture was used to set the rotation origin of rotating [[entity|entities]]. It is still functional in Source (overriding the entity's origin keyvalue) but no longer necessary. When placed outside of a brush entity, the compiler will fail with the error "{{mono|origin brushes not allowed in world}}".
|- id="blocklos"
| [[File:Toolsblocklos.gif|64px]]
| <center>{{mono|toolsblock_los}}</center>
| {{No}}
| {{No}}
| {{No}}
| {{Yes}}
| {{No}}
| {{No}}
| {{No}}
| {{No}}
| Blocks the [[line of sight]] of [[NPC]]s and [[bot]]s.<br> {{cmd|mat_wireframe|1/2}} will reveal that, while this texture doesn't block [[visleaf|visleaves]], it draws crossing polygons, and they alone are capable of preventing the engine from rendering enveloped brushwork. This can be worked around by turning the Block LOS–textured brush into a {{ent|func_brush}} with its {{mono|Solidity}} keyvalue set to a solid state. (A Block LOS {{mono|func_brush}} can still be traversed in this state.)
|- id="blocklight"
| [[File:Toolsblocklight.gif|64px]]
| <center>{{mono|toolsblocklight}}</center>
| {{No}}
| {{Yes}}
| {{No}}
| {{No}}
| {{No}}
| {{No}}
| {{No}}
| {{No}}
| Casts shadows artificially. Only used at compile time by [[VRAD]]. Does not seal [[leak]]s. See more uses [[Advanced Lighting#Shadow creation|here]].
|- id="trigger"
| [[File:Toolstrigger.gif|64px]]
| <center>{{mono|[[Triggers|toolstrigger]]}}</center>
| {{Yes}}
| {{No}}
| {{No}}
| {{No}}
| {{No}}
| {{No}}
| {{No}}
| {{No}}
| Used on [[trigger]]s and on {{ent|func_viscluster}} entities. Visible if used on an entity without EF_NODRAW.
|}
 
=== General — Game-specific ===
These tool textures are only available in specific Source engine games.
{| class="standard-table"
|- style="z-index:1; position:sticky; top:0;border:2px solid #525252;"
! width="64px" style="background-color: #323232;color:white" | Image
! width="110px" style="background-color: #323232;color:white" | Filename
! width="75px" style="background-color: #323232;color:white" | Visible if <br /> [[world brush]]
! width="75px" style="background-color: #323232;color:white" | Casts shadows
! width="75px" style="background-color: #323232;color:white" | Cuts <br /> [[visleaf|VIS leaves]]
! width="75px" style="background-color: #323232;color:white" | Blocks NPC [[LOS]]
! width="75px" style="background-color: #323232;color:white" | Solid to NPCs
! width="75px" style="background-color: #323232;color:white" | Solid to player(s)
! width="75px" style="background-color: #323232;color:white" | Solid to physics
! width="75px" style="background-color: #323232;color:white" | Solid to bullets
! style="background-color: #323232;color:white" | Usage / Notes
|- id="black_cheap"
| [[File:Toolsblack.gif|64px]]
| <center>{{mono|toolsblack_cheap}}</center>
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes|Yes <br /> (Marks)}}
| {{p2}} Identical to {{mono|ToolsBlack}}, the only difference is that uses a special {{code|preset=2|[[Black]]}} shader.<br/> {{gmod}} has a replacement that works with older engines.
|- id="black_nofog"
| [[File:Toolsblack.gif|64px]]
| <center>{{mono|toolsblack_nofog}}</center>
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes|Yes <br /> (Marks)}}
| {{l4dseries}} Identical to {{mono|ToolsBlack}}, but no fog will appear in front of it. Uses the [[UnlitGeneric]] shader.<br>
Inherits various City17 [[%25keywords]] from {{mono|ToolsBlack}}.
|- id="black_noportal"
| [[File:Toolsblack.gif|64px]]
| <center>{{mono|toolsblack_noportal}}</center>
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes|Yes <br /> (Marks)}}
| {{p2}} Identical to {{mono|ToolsBlack}}. Seems to have been intended as a non-portalable version, but this is already the case with the normal texture in the final game.
|- id="black_noportal_nofog"
| [[File:Toolsblack.gif|64px]]
| <center>{{mono|toolsblack_noportal_nofog}}</center>
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes|Yes <br /> (Marks)}}
| {{p2}} Identical to {{mono|ToolsBlack}}, but does not render fog.
|- id="black_noportal_skybox"
| [[File:Toolsblack.gif|64px]]
| <center>{{mono|toolsblack_noportal_skybox}}</center>
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes|Yes <br /> (Marks)}}
| {{p2}} Functions like {{mono|ToolsBlack_Cheap}} but uses a {{code|[[$basetexture]]}} and contains keywords from {{hl2|2|nt=0}}. Because the {{code|[[$basetexture]]}} parameter doesn't have any effect on the {{code|preset=2|[[Black]]}} shader, this hints that the material could have previously used the {{code|[[UnlitGeneric]]}} shader.
|- id="nolight"
| [[File:Toolsblack.gif|64px]]
| <center>{{mono|toolsnolight}}</center>
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes|Yes <br /> (Marks)}}
| {{as}} Identical to {{mono|ToolsBlack}}, but for some reason is used instead.
|- id="blockbullets"
| [[File:Toolsblockbullets.gif|64px]]
| <center>{{mono|toolsblockbullets2}}</center>
| {{No}}
| {{No}}
| {{No}}
| {{No}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes|Yes <br /> (No Marks)}}
| {{tf2}} Identical to {{mono|ToolsBlockBullets}}, but doesn't cut [[visleaf|visleaves]].
|- id="nodrawroof"
|- id="nodrawroof"
|[[Image:Toolsnodraw.gif]]
|[[File:Toolsnodraw.gif|64px]]
| <center>Nodraw Roof</center>
| <center>{{mono|toolsnodraw_roof}}</center>
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes|Yes <br /> (no marks)}}
| {{Yes|Yes <br /> (No Marks)}}
| {{css}} Identical to ''Nodraw'', but with a different texture name.
| {{css}} Identical to {{mono|ToolsNodraw}}, but with a different texture name.
|- id="nodrawwood"
|- id="nodrawwood"
|[[Image:Toolsnodraw.gif]]
|[[File:Toolsnodraw.gif|64px]]
| <center>Nodraw Wood</center>
| <center>{{mono|toolsnodraw_wood}}</center>
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes|Yes <br /> (no marks)}}
| {{Yes|Yes <br /> (No Marks)}}
| {{css}} Identical to ''Nodraw'', the only difference is that the brush with this texture, when hit, it will make wood impact sounds.
| {{css}} Identical to {{mono|ToolsNodraw}}, but will make wood impact sounds when hit.
|- id="nodrawstone"
|[[Image:Toolsnodraw.gif]]
| <center>Nodraw Stone</center>
|{{No}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{N/A}}
| {{dm}} Identical to ''Nodraw'', the only difference is that the brush with this texture, when hit, it will make stone impact sounds.
|- id="nodrawinvisible"
|[[Image:toolsnodrawinvisible.jpg]]
| <center>Nodraw<br />Invisible</center>
|{{No}}
|{{No}}
|{{No}}
|{{No}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{N/A}}
| {{dm}} A translucent ''Nodraw'' texture, cannot be used to seal the map.
|- id="nodrawnoshadow"
|- id="nodrawnoshadow"
|[[Image:toolsnodrawnoshadow.jpg]]
|[[File:Toolsnodraw_metal.png|64px]]
| <center>Nodraw<br />Noshadow</center>
| <center>{{mono|toolsnodraw_metal}}</center>
|{{No}}
| {{No}}
|{{No}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{N/A}}
| {{Yes|Yes <br /> (No Marks)}}
| {{dm}} Identical to ''Nodraw'' but does not cast any shadows.
| {{l4d2}} Identical to {{mono|ToolsNodraw}} but with metal [[$surfaceprop|surfaceprop]]. Does not show metal marks. You may want to use {{mono|Invismetal}} instead.
|- id="nodrawsurfaceprop"
|[[Image:toolsnodrawnoshadow.jpg]]
| <center>Nodraw Surfaceprop</center>
|{{No}}
|{{No}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{N/A}}
| {{dm}} Seven materials all identical to ''Nodraw'' but uses different [[$surfaceprop | surfaceprop]] types and also do not casts any shadows: chitin, dirt, grass, metal, sand, stone, wood.
|- id="nodrawportalable"
|- id="nodrawportalable"
|[[Image:Nodraw_portalable.png]]
|[[File:Nodraw_portalable.png|64px]]
| <center>Nodraw Portalable</center>
| <center>{{mono|toolsnodraw_portal}}</center>
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes|Yes <br /> (no marks)}}
| {{Yes|Yes <br /> (No Marks)}}
| {{portal2}} Identical to ''Nodraw'', the only difference is that Portals can be placed on this texture.
| {{p2}} Identical to {{mono|ToolsNodraw}}, but portals can be placed on this texture.
|- id="origin"
|-
| [[Image:Toolsorigin.gif]]
| <center>Origin</center>
|{{N/A}}
|{{No}}
|{{No}}
|{{No}}
|{{No}}
|{{No}}
|{{No}}
|{{No}}
| Leftover from [[GoldSource]], where a brush with this texture was used to set the rotation origin of rotating [[entity|entities]]. It is still functional in Source (overriding the entity's origin keyvalue), but no longer necessary. When placed outside of a brush entity, the compiler will fail with the error <code>origin brushes not allowed in world</code>. Not available in all branches.
|- id="blocklos"
| [[Image:Toolsblocklos.gif]]
| <center>Block LOS</center>
|{{No}}
|{{No}}
|{{No}}
|{{Yes}}
|{{No}}
|{{No}}
|{{No}}
|{{No}}
| Blocks the [[line of sight]] of [[NPC]]s and [[bot]]s. ''[[mat_wireframe]] 1/2'' will reveal that while this texture doesn't block [[visleaf|visleaves]], it draws crossing polygons, and them alone are capable of preventing the engine from rendering enveloped brushwork. This can be worked around through turning the ''Block LOS'' textured brush into a [[func_brush]] with its ''Solidity'' keyvalue set to a solid state. (A ''Block LOS'' func_brush can still be traversed in this state.)
|- id="blocklight"
| [[Image:Toolsblocklight.gif]]
| <center>Block Light</center>
|{{No}}
|{{Yes}}
|{{No}}
|{{No}}
|{{No}}
|{{No}}
|{{No}}
|{{No}}
| Casts shadows artificially. Only used at compile time by [[VRAD]]. Does not seal [[leak|leaks]]. See more uses [[Advanced Lighting#Shadow creation|here]].
|- id="trigger"
| [[Image:Toolstrigger.gif]]
| <center>Trigger</center>
|{{Yes}}
|{{No}}
|{{No}}
|{{No}}
|{{No}}
|{{No}}
|{{No}}
|{{No}}
| Used on [[Trigger]] and [[func_viscluster]] entities.
|}
|}


== Optimisation ==
== Optimization ==
{| class="standard-table"
{| class="standard-table"
! width="64px" | Image
|- style="z-index:1; position:sticky; top:0;border:2px solid #525252;"
! width="100px" | Name
! width="64px" style="background-color: #323232;color:white" | Image
! width="75px" | Visible if <br /> [[world brush]]
! width="110px" style="background-color: #323232;color:white" | Filename
! width="75px" | Casts shadows
! width="75px" style="background-color: #323232;color:white" | Visible if <br /> [[world brush]]
! width="75px" | Cuts <br /> [[visleaf|VIS leaves]]
! width="75px" style="background-color: #323232;color:white" | Casts shadows
! width="75px" | Blocks NPC [[LOS]]
! width="75px" style="background-color: #323232;color:white" | Cuts <br /> [[visleaf|VIS leaves]]
! width="75px" | Solid to NPCs
! width="75px" style="background-color: #323232;color:white" | Blocks NPC [[LOS]]
! width="75px" | Solid to player(s)
! width="75px" style="background-color: #323232;color:white" | Solid to NPCs
! width="75px" | Solid to physics
! width="75px" style="background-color: #323232;color:white" | Solid to player(s)
! width="75px" | Solid to bullets
! width="75px" style="background-color: #323232;color:white" | Solid to physics
! Usage / Notes
! width="75px" style="background-color: #323232;color:white" | Solid to bullets
! style="background-color: #323232;color:white" | Usage / Notes
|- id="areaportal"
|- id="areaportal"
| [[Image:Toolsareaportal.gif]]
| [[File:Toolsareaportal.gif|64px]]
| <center>[[Areaportal]]</center>
| <center>{{mono|[[Areaportal|toolsareaportal]]}}</center>
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
| Use with [[areaportal]]s ([[func_areaportal]]s and [[func_areaportalwindow]]s). Can be used with other brush entities, such as some triggers.
| Use with [[areaportal]]s (<code>{{ent|func_areaportal}}s</code> and <code>{{ent|func_areaportalwindow}}s</code>). Can be used with other brush entities, such as some triggers.
|- id="hint"
|- id="hint"
| [[Image:Toolshint.gif]]
| [[File:Toolshint.gif|64px]]
| <center>[[Hint brush|Hint]]</center>
| <center>{{mono|[[Hint brush|toolshint]]}}</center>
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
| This texture is used to instruct the compiler to cut [[visleaves]].
| Instructs [[VBSP]] to cut [[visleaves]] along this texture, but does nothing else.
|- id="skip"
|- id="skip"
| [[Image:Toolsskip.gif]]
| [[File:Toolsskip.gif|64px]]
| <center>[[Skip]]</center>
| <center>{{mono|[[Skip|toolsskip]]}}</center>
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
| Has no effect on anything. Useful in combination with ''Hint'' tool textures. ''Skip'' faces are removed during compile, so a brush textured with skip won't prevent leaks. Also useful as a tool in Hammer for grouping, moving and place-holding objects.
| Has no effect on anything (except [[weapon c4|bomb]] in {{css}}). Skip faces are removed during compile, so a brush textured with Skip won't prevent leaks.
Useful in combination with Hint tool textures (to prevent the other sides from cutting vis) and as a tool in Hammer for grouping, moving and place-holding objects.
{{bug|hidetested=1|In {{css}}, skip brushes act as [[clip]] brushes for the [[weapon c4|bomb]].
{{tip|This can be exploited by a mapper to prevent the bomb from falling into a pit if planted too close to the edge.}} }}
|- id="occluder"
|- id="occluder"
| [[Image:Toolsoccluder.gif]]
| [[File:Toolsoccluder.gif|64px]]
| <center>[[Occluder]]</center>
| <center>{{mono|[[Occluder|toolsoccluder]]}}</center>
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
| Used only for [[func_occluder]] entities.
| Used only for the occluding sides of {{ent|func_occluder}} entities.
Unlike toolstrigger, toolsoccluder will correctly work when VBSP is compiled with {{code|-nodrawtriggers}}.
|}
|}


== Clips ==
== Clips ==
 
=== Clips — Common ===
These tool textures are available in every source engine game.<br>
Some of these textures have special function in some games. These special functions are noted by having the game's icon listed in the description (such as {{css}}, {{csgo}}, {{l4dseries}}, {{p2}}, etc.).
{| class="standard-table"
{| class="standard-table"
! width="64px" | Image
|- style="z-index:1; position:sticky; top:0;border:2px solid #525252;"
! width="100px" | Name
! width="64px" style="background-color: #323232;color:white" | Image
! width="75px" | Visible if <br /> [[world brush]]
! width="110px" style="background-color: #323232;color:white" | Filename
! width="75px" | Casts shadows
! width="75px" style="background-color: #323232;color:white" | Visible if <br /> [[world brush]]
! width="75px" | Cuts <br /> [[visleaf|VIS leaves]]
! width="75px" style="background-color: #323232;color:white" | Casts shadows
! width="75px" | Blocks NPC [[LOS]]
! width="75px" style="background-color: #323232;color:white" | Cuts <br /> [[visleaf|VIS leaves]]
! width="75px" | Solid to NPCs
! width="75px" style="background-color: #323232;color:white" | Blocks NPC [[LOS]]
! width="75px" | Solid to player(s)
! width="75px" style="background-color: #323232;color:white" | Solid to NPCs
! width="75px" | Solid to physics
! width="75px" style="background-color: #323232;color:white" | Solid to player(s)
! width="75px" | Solid to bullets
! width="75px" style="background-color: #323232;color:white" | Solid to physics
! Usage / Notes
! width="75px" style="background-color: #323232;color:white" | Solid to bullets
! style="background-color: #323232;color:white" | Usage / Notes
|- id="clip"
|- id="clip"
| [[Image:Toolsclip.gif]]
| [[File:Toolsclip.gif|64px]]
| <center>Clip</center>
| <center>{{mono|toolsclip}}</center>
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
| Solid to players and [[NPC]]s but not other objects. In [[Source 2013]], it's also solid to item pickups like ammo packs but not dropped weapons.<br>{{css}}{{csgo}} Solid to dropped C4.<br>{{csgo}} Features clip brush textures with different material types: Concrete, Dirt, Glass, Grass, Gravel, Metal, Metal Grate, Plastic, Rubber, Sand, Tile, Wood.
| Solid to players and [[NPC]]s but not other objects.<br>
See more about [[Clip texture| clip texture here]].
{{src13}} Also solid to item pickups like ammo packs but not dropped weapons.<br>
{{css}}{{csgo}} Solid to dropped [[weapon_c4|C4]]. Solid to [[hostage_entity|hostages]] in {{css}}.<br>
{{csgo}}{{Gmod}} Feature clip brush textures with different material types: Concrete, Dirt, Glass, Grass, Gravel, Metal, Metal Sand Barrel, Metal Grate, Metal Vehicle, Plastic, Rubber, Rubber Tire, Sand, Tile, Wood, Wood Basket, Wood Crate.<br>
{{tip|If you need a clip of a specific material like Clip_Glass in a game that does not have these various clip materials, you can make a brush using any regular material with the property you want and then turn it into a [[func_brush]] that is always solid but not rendered.}}
:See more about [[Clip texture| clip texture here]].
|- id="npcclip"
|- id="npcclip"
| [[Image:Toolsnpcclip.gif]]
| [[File:Toolsnpcclip.gif|64px]]
| <center>NPC Clip</center>
| <center>{{mono|toolsnpcclip}}</center>
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
| Solid to [[NPC]]s only.<br>{{l4d}}{{l4d2}} Solid to infected only, but does not stop Smokers, Boomers and Spitters from attacking you through it.
| Solid to [[NPC]]s only.<br>{{css}}{{csgo}} Solid to [[bot]]s. Not solid to [[hostage_entity|hostages]].<br>{{l4dseries}} Solid to infected only, but does not stop Smokers, Boomers and Spitters from attacking through it.
|- id="playerclip"
|- id="playerclip"
| [[Image:Toolsplayerclip.gif]]
| [[File:Toolsplayerclip.gif|64px]]
| <center>Player Clip</center>
| <center>{{mono|toolsplayerclip}}</center>
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
| Solid to players only. In [[Source 2013]], it's also solid to item pickups like ammo packs but not dropped weapons.<br>{{css}}{{csgo}} Solid to dropped C4.<br>{{l4d}}{{l4d2}} Solid to the survivors only.
| Solid to [[player]]s only.<br>
{{src13}} Also solid to item pickups like ammo packs but not dropped weapons.<br>
{{css}}{{csgo}} Solid to [[player]]s, [[bot]]s (!), and dropped [[weapon_c4|C4]]. Solid to [[hostage_entity|hostages]] in {{css}}.<br>
{{l4dseries}} Solid to the survivors only.<br>
|- id="playercont"
|- id="playercont"
| [[Image:Toolsplayercont.gif]]
| [[File:Toolsplayercont.gif|64px]]
| <center>Player Control Clip</center>
| <center>{{mono|toolscontrolclip}}</center>
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{No|No?}}
| {{N/A}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes|Yes <br /> (marks)}}
| {{Yes|Yes <br /> (Marks)}}
| Available only in [[Source 2006]] and earlier. It is obvious that this texture has to be tied to an entity to gain any special abilities, but ''what'' entity is not yet confirmed. Seems that it is necessary for func_vehicleclip. (See "player clip" above for the tool texture that restricts player movement.)
| {{src07|removed}} {{also|{{tf2}}}}
{{ModernDeprecated|This texture has to be tied to an entity to gain any special abilities, but '''what''' entity is not yet confirmed.
This texture, along with trigger, works on {{ent|func_vehicleclip}}. It was removed in {{hl2|1}} base since {{src07|1}}, but exist in {{tf2|1}} and {{src2|1}}.<br> (See Player Clip above for the tool texture that restricts player movement.)}}
|}
 
=== Clips — Game-Specific ===
These tool textures are only available in specific Source engine games.
{| class="standard-table"
|- style="z-index:1; position:sticky; top:0;border:2px solid #525252;"
! width="64px" style="background-color: #323232;color:white" | Image
! width="110px" style="background-color: #323232;color:white" | Filename
! width="75px" style="background-color: #323232;color:white" | Visible if <br /> [[world brush]]
! width="75px" style="background-color: #323232;color:white" | Casts shadows
! width="75px" style="background-color: #323232;color:white" | Cuts <br /> [[visleaf|VIS leaves]]
! width="75px" style="background-color: #323232;color:white" | Blocks NPC [[LOS]]
! width="75px" style="background-color: #323232;color:white" | Solid to NPCs
! width="75px" style="background-color: #323232;color:white" | Solid to player(s)
! width="75px" style="background-color: #323232;color:white" | Solid to physics
! width="75px" style="background-color: #323232;color:white" | Solid to bullets
! style="background-color: #323232;color:white" | Usage / Notes
|- id="grenadeclip"
|- id="grenadeclip"
| [[Image:Toolsgenadeclip.png]]
| [[File:Toolsgrenadeclip.png|64px]]
| <center>Grenade Clip</center>
| <center>{{mono|toolsgrenadeclip}}</center>
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{Yes|Grenades only}}
| {{both|Solid to Grenades}}
|{{No}}
| {{No}}
| {{csgo}} Solid to grenades only.
| {{csgo}} Solid to grenades only.
|- id="stairs"
| [[Image:Toolsstairs.png]]
| <center>Stairs</center>
|{{No}}
|{{No}}
|{{No}}
|{{No}}
|{{No}}
|{{Yes}}
|{{No}}
|{{No}}
|{{INFRA}} Functionally the same to player clip but allows for steeper angles when walking on, up to 63.4349488°.
|- id="droneclip"
|- id="droneclip"
| [[Image:toolsdroneclip.jpg]]
| [[File:toolsdroneclip.jpg|64px]]
| <center>Drone Clip</center>
| <center>{{mono|toolsdroneclip}}</center>
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{N/A}}
| {{N/A}}
|{{N/A}}
| {{N/A}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{csgo}} Used to prevent [[drone]] getting stuck on complex geometry.
| {{csgo}} Used to prevent [[drone]]s getting stuck on complex geometry.
|}
|}


== Sky and fog ==
== Sky and Fog ==
{| class=standard-table
=== Sky and Fog — Common ===
! width="64px" | Image
These tool textures are available in every Source engine game.<br>
! width="100px" | Name
Some of these textures have special function in some games. These special functions are noted by having the game's icon listed in the description (such as {{css}}, {{csgo}}, {{l4dseries}}, {{p2}}, etc.).
! width="75px" | Visible if <br /> [[world brush]]
{| class="standard-table"
! width="75px" | Casts shadows
|- style="z-index:1; position:sticky; top:0;border:2px solid #525252;"
! width="75px" | Cuts <br /> [[visleaf|VIS leaves]]
! width="64px" style="background-color: #323232;color:white" | Image
! width="75px" | Blocks NPC [[LOS]]
! width="110px" style="background-color: #323232;color:white" | Filename
! width="75px" | Solid to NPCs
! width="75px" style="background-color: #323232;color:white" | Visible if <br /> [[world brush]]
! width="75px" | Solid to player(s)
! width="75px" style="background-color: #323232;color:white" | Casts shadows
! width="75px" | Solid to physics
! width="75px" style="background-color: #323232;color:white" | Cuts <br /> [[visleaf|VIS leaves]]
! width="75px" | Solid to bullets
! width="75px" style="background-color: #323232;color:white" | Blocks NPC [[LOS]]
! Usage / Notes
! width="75px" style="background-color: #323232;color:white" | Solid to NPCs
! width="75px" style="background-color: #323232;color:white" | Solid to player(s)
! width="75px" style="background-color: #323232;color:white" | Solid to physics
! width="75px" style="background-color: #323232;color:white" | Solid to bullets
! style="background-color: #323232;color:white" | Usage / Notes
|- id="fog"
|- id="fog"
| [[Image:Toolsfog.gif]]
| [[File:Toolsfog.gif|64px]]
| <center>Fog</center>
| <center>{{mono|toolsfog}}</center>
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes | Yes <br /> (marks)}}
| {{Yes | Yes <br /> (Marks)}}
| {{confirm|Does not seem to work?}} (You can use this for [[func_smokevolume]] instead of the trigger texture but NOT for [[func_dustcloud]].)
| No effect; uses nonexistent [[material map compile flags|compile flag]] [[%CompileFog]].
(You can use this for {{ent|func_smokevolume}} instead of the Trigger texture, but NOT for {{ent|func_dustcloud}}.)
|- id="skybox"
|- id="skybox"
| [[Image:Toolsskybox.gif|64px]]
| [[File:Toolsskybox.png|64px]]
| <center>[[Skybox|Skybox]]</center>
| <center>{{mono|[[Skybox Basics|toolsskybox]]}}</center>
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes | Yes <br /> (no marks)}}
| {{Yes | Yes <br /> (No Marks)}}
| This texture is used to make 3D [[skybox]]es. Casts light if there is a [[light_environment]] entity in the map.<br> Cannot be used in the same [[PVS]] as the ''toolsskybox2d'' tool texture.<br>Things such as another area of a map will render on top of the skybox. An areaportal can stop this from happening, but it's ''generally'' better practice to add more scenery to cover the stuff that shouldn't be seen, reposition those things out of view, or just don't have an opening in that area.
| This texture is used to make 3D [[skybox]]es. Casts light if there is a {{ent|light_environment}} entity in the map.<br>Things such as another area of a map will render on top of the skybox. An areaportal can stop this from happening, but it's ''generally'' better practice to add more scenery to cover the stuff that shouldn't be seen, reposition those things out of view, or just don't have an opening in that area.
|- id="skybox_nolight"
|- id="skybox2d"
| [[Image: Toolsskybox_nolight.jpg | 64px]]
| [[File:Toolsskybox2d.gif|64px]]
| <center>Skybox<br />NoLight</center>
| <center>{{mono|[[Skybox (2D)|toolsskybox2d]]}}</center>
|{{No}}
| {{No}}
|{{Yes}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{N/A}}
| {{Yes | Yes <br /> (No Marks)}}
| {{dm}} Works identical to ''Skybox'', but does not casts any light rays.
| {{Src07|since}}
|- id="skybox"
Used to make 2D [[skybox]]es without displaying the [[3D Skybox]].<br>Casts light if there is a {{mono|light_environment}} entity in the map. {{bug|hidetested=1|Light cast from this texture can still be blocked by 3D skybox geometry.}}<br>No effect if used in the same [[PVS]] as the {{mono|toolsskybox}} tool texture.
| [[Image:Toolsskybox2d.gif|64px]]
| <center>[[Skybox (2D)|2D Skybox]]</center>
|{{No}}
|{{No}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes | Yes <br /> (no marks)}}
| Available only in [[Source 2007]] and later. Use to make 2D [[skybox]]es without displaying the [[3D Skybox]].<br>Casts light if there is a light_environment entity in the map.<br>Cannot be used in the same [[PVS]] as the ''toolsskybox'' tool texture.
|- id="skyfog"
|- id="skyfog"
| [[Image:Toolsskyfog.gif]]
| [[File:Toolsskyfog.gif|64px]]
| <center>SkyFog</center>
| <center>{{mono|toolsskyfog}}</center>
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|
| {{N/A}}
|
| {{N/A}}
|{{Yes}}
| {{Yes}}
|
| {{N/A}}
|{{Yes | Yes <br /> (marks)}}
| {{Yes | Yes <br /> (Marks)}}
| The SkyFog texture does not contain any properties. There is currently no existing corresponding Shader called "skyfog". (Generates error <code>Error: Material "tools/toolsskyfog" uses unknown shader "SkyFog"</code>.) {{confirm|It can be fixed to function properly if it's [[vmt]] settings are changed in the Source code and recompiled}}
| The SkyFog texture does not contain any properties. There is currently no existing corresponding Shader called "skyfog". (Generates error <code>Error: Material "toolsskyfog" uses unknown shader "SkyFog"</code>.)
{{ModernConfirm|Can it be fixed to function properly if its [[VMT]] settings are changed in the Source code and recompiled?}}
|- id="fog volume"
|- id="fog volume"
| [[Image:Fogvolume.jpg]]
| [[File:Fogvolume.jpg|64px]]
| <center>Fog Volume</center>
| <center>{{mono|[[fog_volume|toolsfogvolume]]}}</center>
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
|
| {{No}}
|{{No}}
| {{No}}
|
| {{No}}
|
| {{No}}
|
| {{No}}
|
| {{No}}
| Available only in ''[[Left 4 Dead (engine branch)|Left 4 Dead]]'' and later. Used in conjunction with multiple [[env_fog_controller|env_fog_controllers]] to change fog colours and densities in a level
| {{l4d|since}}
Used in conjunction with multiple {{ent|env_fog_controller}}s to change fog colours and densities in a level.<br> Fog inside its volume will not appear to have different atributes when viewed from outside its volume, as it globally changes the appearance of all fog across the map when entered.
|}
|}
=== Sky and Fog — Game-Specific ===
These tool textures are only available in specific Source engine games.
There are no game specific tool textures in this section.


== Miscellaneous ==
== Miscellaneous ==
{| class=standard-table
These are textures that have a special use, sometimes only seen in one single game.
! width="64px" | Image
 
! width="100px" | Name
Some of these textures are not even "real" tool textures, as they do not possess any [[Material_Map_Compile_Flags|Compile Flags]], but they have some important use that no other texture available can do.
! width="75px" | Visible if <br /> [[world brush]]
 
! width="75px" | Casts shadows
{| class="standard-table"
! width="75px" | Cuts <br /> [[visleaf|VIS leaves]]
|- style="z-index:1; position:sticky; top:0;border:2px solid #525252;"
! width="75px" | Blocks NPC [[LOS]]
! width="64px" style="background-color: #323232;color:white" | Image
! width="75px" | Solid to NPCs
! width="110px" style="background-color: #323232;color:white" | Filename
! width="75px" | Solid to player(s)
! width="75px" style="background-color: #323232;color:white" | Visible if <br /> [[world brush]]
! width="75px" | Solid to physics
! width="75px" style="background-color: #323232;color:white" | Casts shadows
! width="75px" | Solid to bullets
! width="75px" style="background-color: #323232;color:white" | Cuts <br /> [[visleaf|VIS leaves]]
! Usage / Notes
! width="75px" style="background-color: #323232;color:white" | Blocks NPC [[LOS]]
|- id="invisibledisplacement"
! width="75px" style="background-color: #323232;color:white" | Solid to NPCs
| [[Image:Toolsinvisibledisplacement.gif]]
! width="75px" style="background-color: #323232;color:white" | Solid to player(s)
| <center>Invisible Displacement</center>
! width="75px" style="background-color: #323232;color:white" | Solid to physics
|{{no}}
! width="75px" style="background-color: #323232;color:white" | Solid to bullets
|{{no}}
! style="background-color: #323232;color:white" | Usage / Notes
|{{no}}
|- id="blockbomb"
|{{no}}
| [[File: blockbomb.jpg|64px]]
|{{yes}}
| <center>{{mono|toolsblockbomb}}</center>
|{{yes}}
| {{No}}
|{{yes}}
| {{No}}
|{{Yes | Yes <br /> (no marks)}}
| {{Yes}}
| Not actually a texture. It is the backside of a displacement. This side of the displacement will appear invisible, but solid. Light is not blocked by this texture, except for {{csgo}}.
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{csgo}} Acts like {{mono|ToolsInvisible}}. Possibly unimplemented.
|- id="climb"
| <div style="text-align: center;">[[File:L4d2-Climb_versus.png|64px]]</div>
| <center>{{mono|climb}}</center>
| {{No}}
| {{No}}
| {{No}}
| {{No}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{No}}
| {{l4dseries}} A ladder only for Infected. '''Not''' visible to Infected Players during Versus, but can be climbed on. Use '''Climb Versus''' Instead. <br>
Could be used in areas blocked by {{ent|func_playerinfected_clip}} where Player Infected cannot go to and should be unable to see a climbing spot, but the AI should be able to use it for hordes.
|- id="climbalpha"
| <div style="text-align: center;">[[File:Climb alpha.png|64px]]</div>
| <center>{{mono|climb_alpha}}</center>
| {{Both|Visible to Infected}}
| {{No}}
| {{No}}
| {{No}}
| {{Yes}}
| {{Yes}}
| {{Yes}}
| {{No}}
| {{l4dseries}} Same as '''Climb Versus''', with the only difference being that {{mono|climb_alpha}} uses [[$alphatest]], while {{mono|climb_versus}} uses [[$additive]].<br>
This texture may be usable in spots where the texture is applied over a translucent material, in order to fix [[$translucent#Flickering_and_Reversed_Depth|sorting issues]], but it has so far never been used in any official campaign.
|- id="climb_versus"
|- id="climb_versus"
| <div style="text-align: center;">[[Image:L4d2-Climb_versus.png]]</div>
| <div style="text-align: center;">[[File:L4d2-Climb_versus.png|64px]]</div>
| <center>Climb Versus</center>
| <center>{{mono|climb_versus}}</center>
|{{No}}
| {{Both|Visible to Infected}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
| {{l4d}}{{l4d2}} A ladder only for infected, must be used with [[func_ladder]], otherwise it will be ignored by the navigation mesh editor and Special infected which do not require a navigation mesh to move.
| {{l4dseries}} A ladder only for infected. Must be used with {{ent|func_ladder}}; otherwise, it will be ignored by the navigation mesh editor.<br>
|- id="hulkwall"
| <div style="text-align: center;">[[File:Hulkwall.png|64px]]</div>
| <center>{{mono|hulkwall}}</center>
| {{Both|Visible to Infected}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{l4dseries}} This is an obsolete visual cue texture of a wall that can be broken by special infected players.<br>The texture itself has no special abilities other than being invisible to survivors.<br>This texture is since superceeded by <code>../effects/tankwall</code>. But this one was not removed from the game.<br>See [[L4D_Level_Design/Versus_Maps#Making_the_visible_cue_for_breakable_walls|This page]] for further information.
|- id="hulkwallglow"
| <div style="text-align: center;">[[File:Hulkwallglow.png|64px]]</div>
| <center>{{mono|hulkwallglow}}</center>
| {{Both|Visible to Infected}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{l4dseries}} This is an obsolete visual cue texture of a wall that can be broken by special infected players.<br>The texture itself has no special abilities other than being invisible to survivors.<br>This texture is since superceeded by <code>../effects/tankwall</code>. But this one was not removed from the game.<br>See [[L4D_Level_Design/Versus_Maps#Making_the_visible_cue_for_breakable_walls|This page]] for further information.
|- id="tankwall"
| <div style="text-align: center;">[[File:L4d-effects-tankwall.png|64px]]</div>
| <center>{{mono|../effects/tankwall}}</center>
| {{Both|Visible to Infected}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{l4dseries}} This is the "new" visual cue texture of a wall that can be broken by special infected players.<br>The texture itself has no special abilities other than being invisible to survivors.<br>See [[L4D_Level_Design/Versus_Maps#Making_the_visible_cue_for_breakable_walls|This page]] for further information.
|- id="dotted"
|- id="dotted"
| <div style="text-align: center;">[[Image:Toolsdotted.png]]</div>
| <div style="text-align: center;">[[File:Toolsdotted.png|64px]]</div>
| <center>Dotted</center>
| <center>{{mono|toolsdotted}}</center>
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes | Yes <br /> (marks)}}
| {{Yes | Yes <br /> (Marks)}}
| A face textured with this texture is rendered on top of all other brush geometry. Furthermore, a brush with Dotted on any face will not block visibility nor cull any face that it touches, meaning that any area enclosed in a Dotted-textured brush will not be removed from the map in any way.
| A face textured with this texture is rendered on top of all other brush geometry. Furthermore, a brush with Dotted on any face will not block visibility or cull any face that it touches, meaning that any area enclosed in a Dotted-textured brush will not be removed from the map in any way.
|- id="toolsdynamicdifficulty"
{{confirm|This effect is probably just due to having {{cmd|$alphatest}}.}}
| [[Image:toolsdynamicdifficulty.jpg]]
|- id="invisibledisplacement"
| <center>Dynamic Difficulty</center>
| [[File:Toolsinvisibledisplacement.gif|64px]]
|{{Yes}}
| <center>{{mono|toolsinvisibledisplacement}}</center>
|{{Yes}}
| {{No}}
|{{Yes}}
| {{No}}
|{{Yes}}
| {{No}}
|{{Yes}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes | Yes <br /> (marks)}}
| {{Yes}}
| {{Sin Emergence}} Solid to grenades. Tied to the [[trigger_dynamic_difficulty]] entity for the game's difficulty system.
| {{both | Depends on game}}
|- id="interactive"
| {{tf2|only}}</br>Light is not blocked by this texture, except in {{csgo}}.<br>
| [[Image:toolsinteractive.jpg]]
Despite being in the {{mono|Materials/Tools}} folder, this is not a tool texture. It has no abilities. It is simply an invisible texture used for [[Clip_texture|displacement clipping]], where you make an invisible displacement instead of a clip brush because making intricate clip brushes is difficult.<br>
| <center>Interactive</center>
{{tf2}} Uses {{cmd|$decal|1}} and {{cmd|$surfaceprop|"dirt"}}.<br>
|{{No}}
|- id="Clear"
|{{No}}
| [[File:Toolswhite.gif|64px]]
|{{No}}
| <center>{{mono|../effects/clear}}</center>
|{{No}}
| {{Both|Fully Translucent}}
|{{Yes}}
| {{Both|Depends on use}}
|{{Yes}}
| {{Both|Depends on use}}
|{{Yes}}
| {{N/A}}
|{{Yes | Yes <br /> (no marks)}}
| {{Yes}}
| {{ship}} Utility texture tied to the [[ship_base_interaction]] brush entity to specify the only surfaces available for the player to interact with the entity
| {{Yes}}
| {{Yes}}
| {{Both|Depends on use}}
| {{l4dseries}} Basic [[LightmappedGeneric]] that has no abilities other than being invisible.<br>
Officially used like {{mono|invisibledisplacement}} for [[Clip_texture|displacement clipping]].<br>
Has no VMT properties other than {{cmd|$alphatest|1}}.
|- id="Invismetal"
|- id="Invismetal"
| [[Image:Toolinvismetal.png]]
| [[File:Toolinvismetal.png|64px]]
| <center>Invismetal</center>
| <center>{{mono|invismetal}}</center>
|{{No}}
| {{No}}
|{{No}}
| {{No}}
|{{N/A}}
| {{Yes}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{No}}
| {{l4d}}{{l4d2}} An invisible texture that shows metal marks when shot.
| {{css}} {{l4dseries}} Invisible texture, with metal [[$surfaceprop|surface properties.]] Simmilar to how Nodraw Metal should have worked.<br>
|- id="noninteractive"
Creates metal sparks when shot, but bullets pass through.<br>
| [[Image:toolsnoninteractive.jpg]]
Does not seal maps.<br>
| <center>Non-Interactive</center>
{{tip|You may want to edit the VMT to add <code>%CompileDetail 1</code> to prevent it from cutting visleaves, which makes it much more useful. Alternatively, tie it to a {{ent|func_detail}} or other entity.}}
|{{No}}
{{modernConfirm |An invisimetal texture also exists in {{bms}}, although it uses a different texture. Does it work the same?}}
|{{No}}
|- id="Locked"
|{{No}}
| '''No Image'''
|{{No}}
| <center>Locked</center>
|{{Yes}}
| {{N/A}}
|{{Yes}}
| {{N/A}}
|{{Yes}}
| {{N/A}}
|{{Yes | Yes <br /> (no marks)}}
| {{N/A}}
| {{ship}} Utility texture tied to the [[ship_base_interaction]] brush entity as a measure to help identify surfaces from which the player are unable to interact with said entity
| {{N/A}}
|- id="shiproom"
| {{N/A}}
| [[Image:toolsshiproom.jpg]]
| {{N/A}}
| <center>Ship Room</center>
| {{N/A}}
|{{Yes}}
| This is a special tool texture, intended to prevent [[VMEX]] from decompiling any maps using this custom tool texture. [[BSPSource]] ignores this, rendering it useless.
|{{Yes}}
It does not '''really''' exist, as every user has to make their own, but it is listed here for completeness sake.
|{{Yes}}
|- id="toolswarmlight"
|{{Yes}}
| [[File:Toolswarmlight.png|64px]]
|{{Yes}}
| <center>{{mono|toolswarmlight}}</center>
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes | Yes <br /> (no marks)}}
| {{Yes}}
| {{ship}} Utility texture tied to the [[ship_trigger_room]] brush entity to create several different rooms and special areas upon the ship
| {{Yes}}
|- id="func_fishes"
| {{Yes}}
| [[Image: tools_func_fishes.jpg]]
| {{Yes}}
| <center>Func fishes</center>
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{l4dseries}} Basic [[UnlitGeneric]] texture that has no abilities.<br>
|{{No}}
Used with {{ent|func_brush}} to make it non-solid and fade away when approached.<br>
|{{No}}
It being {{mono|UnlitGeneric}} makes it seems as if it were glowing in a warm color, but is not listed in [[lights.rad]], so it won't actually emit any light for [[VRAD]] to compile.<br>
|{{Yes}}
Only used in {{code|c8m2_subway}} behind the three windows to the right of the entrance of the end map saferoom building, to simulate glowing light in a room.<br>
|{{Yes}}
|- id="wrongway"
|{{Yes}}
| [[File:Toolswrongway.png|64px]]
|{{N/A}}
| <center>{{mono|wrongway}}</center>
| {{dm}} Used with the [[func_fishes]] entity to spawn fish inside of its volume.
| {{both|Yes {{csgo|in}}<br> Only to Infected}} {{l4dseries|in}}
|- id="func_leaves"
| {{No}}
| [[Image: tools_func_leaves.jpg]]
| {{Yes}}
| <center>Func leaves</center>
| {{No}}
|{{Yes}}
| {{Yes}}
|{{No}}
| {{Yes}}
|{{No}}
| {{Yes}}
|{{No}}
| {{Yes|Yes<br>(No Marks)}}
|{{Yes}}
| {{l4dseries}}{{csgo}} Used to indicate the borders of the playable area.<br>
|{{Yes}}
{{l4d}} Only visible to Infected players.<br>
|{{Yes}}
{{l4d2}} No campaign uses this tool texture anymore. See [[L4D_Level_Design/Versus_Maps#Blocking_the_Infected_Team|L4D Level Design: Blocking the Infected Team]] for more info.<br>
|{{N/A}}
{{csgo}} Used especially for the {{csgo mode|Wingman}} [[CS:GO Game Modes|game mode]]. It has the same properties as ''WrongWay Timer''.<br>
| {{dm}} Used with the [[func_leaves]] entity to spawn leaves particles inside its volume.
{{tip|All Yes/No flags can be changed if applied to a {{ent|func_brush}}.}}
|- id="tools_vitrail_light"
|- id="wrongway_timer"
| [[Image: tools_vitrail_light.jpg]]
| [[File:Wrongway timer.png|64px]]
| <center>Vitrail Light</center>
| <center>{{mono|wrongway_timer}}</center>
|{{Yes}}
| {{Both|Doesn't work correctly}}
|{{No}}
| {{No}}
|{{No}}
| {{Yes}}
|{{No}}
| {{No}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{Yes}}
| {{Yes}}
|{{N/A}}
| {{Yes}}
| {{dm}} Purpose currently unknown, properly used with some type of brush entity.
| {{csgo}} Used for brushes that are temporarily blocking Terrorists during the freezetime of the {{csgo mode|Retakes}} [[CS:GO Game Modes|game mode]]. It is only visible to [[player]]s that are close to the origin of the entity that this material is applied to (e.g., {{ent|func_brush}}), achieved with the <code>PlayerProximity</code> [[material proxies|material proxy]].
|- id="tools_gray"
{{warning|Does not work as intended on [[world brush]]es and {{ent|func_detail}}s as they have no origin: In-game, the [[$alpha]] is either equal to the {{mono|$alpha}} of the closest functioning application of this material on screen or - if there is none - the {{mono|$alpha}} remains "stuck" at some value, no matter the proximity.}}
| [[Image: toolsgray.jpg]]
| <center>Gray</center>
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{N/A}}
| {{dm}} Purpose unknown, just a grey texture.
|- id="waterbounds"
| [[Image: waterbounds.jpg]]
| <center>Waterbounds</center>
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{N/A}}
| {{dm}} Used underwater when water meets the skybox.
|- id="blockbomb"
| [[Image: blockbomb.jpg]]
| <center>Block Bomb</center>
|{{No}}
|{{No}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
|{{Yes}}
| {{csgo}} Original purpose probably was to only block the C4 but it currently works just like a normal Clip brush.
|}
|}
 
[[Category:Source]]
== VR specific tool textures ==
[[Category:Level Design]]
 
[[Category:Material System]]
* Teleport Clip seen at ladders TODO: add more?
 
[[Category: Glossary]][[Category: Level Design]][[Category: Material System]]

Latest revision as of 21:57, 13 June 2025

English (en)Español (es)Русский (ru)中文 (zh)Translate (Translate)

Source Engine ( official | third-party )
edit

Tool textures are used, mostly by the tools but sometimes by the engine, to perform special tasks. They can easily be found in Hammer by using "tools\" as a filter in the texture browser, but other tool textures may be located in different directory.

Anyone can make their very own tool texture, by utilizing available Material Map Compile Flags, such as %compileNonSolid 1, %compileDetail 1 and %compileNodraw 1 for a tool texture which is not solid, does not cut visleafs and is invisible.

A %tooltexture may also be set, which is only to be seen in Hammer's texture browser, while the $basetexture is seen in-game; however, the self made tool textures must be shipped with the map, else they might not work.

This page contains tool textures which can be found on any Source games (including description for third-party games which changes how the tool texture works or have different behavior). For third-party games specific tool textures, see third-party page.

Tip.pngTip:WiseClipped gives a tutorial on using many of the Source Tool textures shown below.
Note.pngNote:All tool textures that are assumed to be texturing an entity work exactly like ordinary textures if applied to world brushes instead. As this makes them useless for world brushes, their visibility as world brushes is irrelevant. Also, many tool textures cut VIS leaves. If you aren't texturing an entity, you should tie the brush to func_detail or func_brush for optimization.
Warning.pngWarning:Some games may have outdated or obsolete tool textures in the "Dev" folder, such as dev/dev_windowportal in Left 4 Dead seriesLeft 4 Dead series.
Note.pngNote:Next to tool textures, there are also brush entities, which can perform tasks similar to tool textures.

For example, Left 4 Dead seriesLeft 4 Dead series have Clip for both teams, Player Clip for survivors and NPC Clip for infected; however, it also has func_playerinfected_clip just for player controlled infected.

If you cannot find a tool texture fit for a task, perhaps the game you're mapping for has a brush entity for that.
Tip.pngTip:Some of these tool textures cut VIS leaves Such as toolsinvisible, toolsinvisibleladder, and invismetal. Which are never seen and would be wasteful to create visleaves for them.
You may want to add %CompileDetail to the offending materials to prevent them from cutting visleaves. The modified VMT's do not need to be shared with the compiled map, as only vbsp uses these compile flags right when building the maps.
But you do need to use custom folder (if available, preferred), or pack these up in a vpk file and load them into hammer by editing the gameinfo to load your vpk with modified files above all other folders and search paths.
Note.pngNote:For toolsinvisibleladder, it alternatively is possible in some games to use %CompileClip (and optionally $translucent) instead of %CompileNoDraw and %CompilePassBullets, but only if tied to func_ladder (works in Day of Defeat: Source, not in Counter-Strike: Source).

General

General — Common

These tool textures are available in every Source engine game.
Some of these textures have special function in some games. These special functions are noted by having the game's icon listed in the description (such as Counter-Strike: Source, Counter-Strike: Global Offensive, Left 4 Dead seriesLeft 4 Dead series, Portal 2, etc.).

Image Filename Visible if
world brush
Casts shadows Cuts
VIS leaves
Blocks NPC LOS Solid to NPCs Solid to player(s) Solid to physics Solid to bullets Usage / Notes
Toolsblack.gif
toolsblack
Yes Yes Yes Yes Yes Yes Yes Yes
(Marks)
Warning.pngRisk of Confusion:This is the UnlitGeneric Tools/ToolsBlack texture, not the LightmappedGeneric Halflife/Black texture.

This texture is often used for brushes that are far away and they are dark. It cannot be lit by any type of light, but is affected by fog color.
An example of its use is in the "space" backgrounds during the G-Man monologues in Half-Life 2 Half-Life 2 or for crude buildings in the 3D Skybox.
Uses UnlitGeneric in: Half-Life 2 Portal series Alien Swarm
Uses LightmappedGeneric in: Counter-Strike seriesCounter-Strike series Day of Defeat: Source Left 4 Dead seriesLeft 4 Dead series
In games where it uses LightmappedGeneric, you may want to use vgui/black instead (to avoid wasting lightmap usage) or make your own tool texture.

Toolswhite.gif
toolswhite
Yes Yes Yes Yes Yes Yes Yes Yes
(Marks)
(in all games since Half-Life 2: Episode Two)
Note.pngNote:Not in Team Fortress 2 Team Fortress 2

Identical to lights/white (which is available in all Source games), but doesn't cast any light by default. Using glass surfaceprop.

Toolsblockbullets.gif
toolsblockbullets
No No Yes No Yes Yes Yes Yes
(No Marks)
Warning.pngWarning:This tool texture is actually just a solid invisible wall in every way shape and form. It does absolutely nothing useful.
See Blockbullets for info on how to actually block bullets and projectiles.

Counter-Strike: Global Offensive Use blockbullets_cs variant, which correctly stops bullets even with 1 unit thickness.

Toolsinvisible.gif
toolsinvisible
No No Yes No Yes Yes Yes No Solid to prop_physics, projectiles, players, & NPCs. Not solid to bullets.

Counter-Strike seriesCounter-Strike seriesTeam Fortress 2 Also solid to bullets.
Left 4 Dead seriesLeft 4 Dead series Smokers, Boomers and Spitters can attack you through it. Survivors stop being dragged towards smokers when touching a toolsinvisible wall.

Warning.pngRisk of Confusion: Left 4 Dead seriesLeft 4 Dead series ToolsNodraw_Noshadow uses the same tool texture in the texture browser, which also blocks LOS!
Toolsladder.gif
toolsinvisibleladder
No No Yes No Yes Yes Yes No Used for ladders in most multiplayer games except Half-Life 2: Deathmatch, either by itself, or tied to func_ladder.
Icon-Important.pngImportant:Leave at least a unit gap between the ladder and any detail brushes to prevent it from eating brush faces of the drawn ladder. This is not an issue in Left 4 Dead seriesLeft 4 Dead series, which keeps brush ladders as a separate entity.
Toolsnodraw.gif
toolsnodraw
No Yes Yes Yes Yes Yes Yes Yes
(No Marks)
Not drawn in game, seals leaks, and is skipped by VRAD. Blocks visibility if used on all surfaces of the same brush. Optimally, every face that can't be seen during normal gameplay should have this texture.
Portal Portals can be placed on it, but not in Portal 2. Use Nodraw Portalable instead if this behavior is desired.
Note.pngNote:The "glass footsteps" version of this texture in Portal 2 does not seal maps.
Todo: Insert this "glass footsteps" version into the list
Note.pngNote:While no lightmap data is generated on nodraw faces, nodraw brushes still cast shadows.
Note.pngNote:Despite common misconception, it is not necessary to use nodraw on faces that are outside the map and faces that are flush with other faces of the same entity, as these are automatically removed by VBSP. Additionally, func_detail faces which touch structural faces will be removed, but vice versa will not (faces completely obscured by func_detail should still be nodrawn).
Toolsorigin.gif
toolsorigin
N/A No No No No No No No [Obsolete-notext.png Deprecated] Leftover from GoldSrc GoldSrc, where a brush with this texture was used to set the rotation origin of rotating entities. It is still functional in Source (overriding the entity's origin keyvalue) but no longer necessary. When placed outside of a brush entity, the compiler will fail with the error "origin brushes not allowed in world".
Toolsblocklos.gif
toolsblock_los
No No No Yes No No No No Blocks the line of sight of NPCs and bots.
mat_wireframe 1/2 will reveal that, while this texture doesn't block visleaves, it draws crossing polygons, and they alone are capable of preventing the engine from rendering enveloped brushwork. This can be worked around by turning the Block LOS–textured brush into a func_brush with its Solidity keyvalue set to a solid state. (A Block LOS func_brush can still be traversed in this state.)
Toolsblocklight.gif
toolsblocklight
No Yes No No No No No No Casts shadows artificially. Only used at compile time by VRAD. Does not seal leaks. See more uses here.
Toolstrigger.gif
toolstrigger
Yes No No No No No No No Used on triggers and on func_viscluster entities. Visible if used on an entity without EF_NODRAW.

General — Game-specific

These tool textures are only available in specific Source engine games.

Image Filename Visible if
world brush
Casts shadows Cuts
VIS leaves
Blocks NPC LOS Solid to NPCs Solid to player(s) Solid to physics Solid to bullets Usage / Notes
Toolsblack.gif
toolsblack_cheap
Yes Yes Yes Yes Yes Yes Yes Yes
(Marks)
Portal 2 Identical to ToolsBlack, the only difference is that uses a special Black shader.
Garry's Mod has a replacement that works with older engines.
Toolsblack.gif
toolsblack_nofog
Yes Yes Yes Yes Yes Yes Yes Yes
(Marks)
Left 4 Dead seriesLeft 4 Dead series Identical to ToolsBlack, but no fog will appear in front of it. Uses the UnlitGeneric shader.

Inherits various City17 %keywords from ToolsBlack.

Toolsblack.gif
toolsblack_noportal
Yes Yes Yes Yes Yes Yes Yes Yes
(Marks)
Portal 2 Identical to ToolsBlack. Seems to have been intended as a non-portalable version, but this is already the case with the normal texture in the final game.
Toolsblack.gif
toolsblack_noportal_nofog
Yes Yes Yes Yes Yes Yes Yes Yes
(Marks)
Portal 2 Identical to ToolsBlack, but does not render fog.
Toolsblack.gif
toolsblack_noportal_skybox
Yes Yes Yes Yes Yes Yes Yes Yes
(Marks)
Portal 2 Functions like ToolsBlack_Cheap but uses a $basetexture and contains keywords from Half-Life 2 HL2. Because the $basetexture parameter doesn't have any effect on the Black shader, this hints that the material could have previously used the UnlitGeneric shader.
Toolsblack.gif
toolsnolight
Yes Yes Yes Yes Yes Yes Yes Yes
(Marks)
Alien Swarm Identical to ToolsBlack, but for some reason is used instead.
Toolsblockbullets.gif
toolsblockbullets2
No No No No Yes Yes Yes Yes
(No Marks)
Team Fortress 2 Identical to ToolsBlockBullets, but doesn't cut visleaves.
Toolsnodraw.gif
toolsnodraw_roof
No Yes Yes Yes Yes Yes Yes Yes
(No Marks)
Counter-Strike: Source Identical to ToolsNodraw, but with a different texture name.
Toolsnodraw.gif
toolsnodraw_wood
No Yes Yes Yes Yes Yes Yes Yes
(No Marks)
Counter-Strike: Source Identical to ToolsNodraw, but will make wood impact sounds when hit.
Toolsnodraw metal.png
toolsnodraw_metal
No Yes Yes Yes Yes Yes Yes Yes
(No Marks)
Left 4 Dead 2 Identical to ToolsNodraw but with metal surfaceprop. Does not show metal marks. You may want to use Invismetal instead.
Nodraw portalable.png
toolsnodraw_portal
No Yes Yes Yes Yes Yes Yes Yes
(No Marks)
Portal 2 Identical to ToolsNodraw, but portals can be placed on this texture.

Optimization

Image Filename Visible if
world brush
Casts shadows Cuts
VIS leaves
Blocks NPC LOS Solid to NPCs Solid to player(s) Solid to physics Solid to bullets Usage / Notes
Toolsareaportal.gif
toolsareaportal
Yes No Yes No No No No No Use with areaportals (func_areaportals and func_areaportalwindows). Can be used with other brush entities, such as some triggers.
Toolshint.gif
toolshint
No No Yes No No No No No Instructs VBSP to cut visleaves along this texture, but does nothing else.
Toolsskip.gif
toolsskip
No No No No No No No No Has no effect on anything (except bomb in Counter-Strike: Source). Skip faces are removed during compile, so a brush textured with Skip won't prevent leaks.

Useful in combination with Hint tool textures (to prevent the other sides from cutting vis) and as a tool in Hammer for grouping, moving and place-holding objects.

Icon-Bug.pngBug:In Counter-Strike: Source, skip brushes act as clip brushes for the bomb.
Tip.pngTip:This can be exploited by a mapper to prevent the bomb from falling into a pit if planted too close to the edge.
Toolsoccluder.gif
toolsoccluder
Yes No No No No No No No Used only for the occluding sides of func_occluder entities.

Unlike toolstrigger, toolsoccluder will correctly work when VBSP is compiled with -nodrawtriggers.

Clips

Clips — Common

These tool textures are available in every source engine game.
Some of these textures have special function in some games. These special functions are noted by having the game's icon listed in the description (such as Counter-Strike: Source, Counter-Strike: Global Offensive, Left 4 Dead seriesLeft 4 Dead series, Portal 2, etc.).

Image Filename Visible if
world brush
Casts shadows Cuts
VIS leaves
Blocks NPC LOS Solid to NPCs Solid to player(s) Solid to physics Solid to bullets Usage / Notes
Toolsclip.gif
toolsclip
No No No No Yes Yes No No Solid to players and NPCs but not other objects.

Source 2013 Also solid to item pickups like ammo packs but not dropped weapons.
Counter-Strike: SourceCounter-Strike: Global Offensive Solid to dropped C4. Solid to hostages in Counter-Strike: Source.
Counter-Strike: Global OffensiveGarry's Mod Feature clip brush textures with different material types: Concrete, Dirt, Glass, Grass, Gravel, Metal, Metal Sand Barrel, Metal Grate, Metal Vehicle, Plastic, Rubber, Rubber Tire, Sand, Tile, Wood, Wood Basket, Wood Crate.

Tip.pngTip:If you need a clip of a specific material like Clip_Glass in a game that does not have these various clip materials, you can make a brush using any regular material with the property you want and then turn it into a func_brush that is always solid but not rendered.
See more about clip texture here.
Toolsnpcclip.gif
toolsnpcclip
No No No No Yes No No No Solid to NPCs only.
Counter-Strike: SourceCounter-Strike: Global Offensive Solid to bots. Not solid to hostages.
Left 4 Dead seriesLeft 4 Dead series Solid to infected only, but does not stop Smokers, Boomers and Spitters from attacking through it.
Toolsplayerclip.gif
toolsplayerclip
No No No No No Yes No No Solid to players only.

Source 2013 Also solid to item pickups like ammo packs but not dropped weapons.
Counter-Strike: SourceCounter-Strike: Global Offensive Solid to players, bots (!), and dropped C4. Solid to hostages in Counter-Strike: Source.
Left 4 Dead seriesLeft 4 Dead series Solid to the survivors only.

Toolsplayercont.gif
toolscontrolclip
Yes Yes Yes N/A Yes Yes Yes Yes
(Marks)
(removed since Source 2007) (also in Team Fortress 2)
Obsolete-notext.pngDeprecated:This texture has to be tied to an entity to gain any special abilities, but what entity is not yet confirmed. This texture, along with trigger, works on func_vehicleclip. It was removed in Half-Life 2 base since Source 2007, but exist in Team Fortress 2 and Source 2.
(See Player Clip above for the tool texture that restricts player movement.)

Clips — Game-Specific

These tool textures are only available in specific Source engine games.

Image Filename Visible if
world brush
Casts shadows Cuts
VIS leaves
Blocks NPC LOS Solid to NPCs Solid to player(s) Solid to physics Solid to bullets Usage / Notes
Toolsgrenadeclip.png
toolsgrenadeclip
No No No No No No Solid to Grenades No Counter-Strike: Global Offensive Solid to grenades only.
Toolsdroneclip.jpg
toolsdroneclip
No No No N/A N/A No No No Counter-Strike: Global Offensive Used to prevent drones getting stuck on complex geometry.

Sky and Fog

Sky and Fog — Common

These tool textures are available in every Source engine game.
Some of these textures have special function in some games. These special functions are noted by having the game's icon listed in the description (such as Counter-Strike: Source, Counter-Strike: Global Offensive, Left 4 Dead seriesLeft 4 Dead series, Portal 2, etc.).

Image Filename Visible if
world brush
Casts shadows Cuts
VIS leaves
Blocks NPC LOS Solid to NPCs Solid to player(s) Solid to physics Solid to bullets Usage / Notes
Toolsfog.gif
toolsfog
Yes No Yes No Yes Yes Yes Yes
(Marks)
No effect; uses nonexistent compile flag %CompileFog.

(You can use this for func_smokevolume instead of the Trigger texture, but NOT for func_dustcloud.)

Toolsskybox.png
toolsskybox
No No Yes Yes Yes Yes Yes Yes
(No Marks)
This texture is used to make 3D skyboxes. Casts light if there is a light_environment entity in the map.
Things such as another area of a map will render on top of the skybox. An areaportal can stop this from happening, but it's generally better practice to add more scenery to cover the stuff that shouldn't be seen, reposition those things out of view, or just don't have an opening in that area.
Toolsskybox2d.gif
toolsskybox2d
No No Yes Yes Yes Yes Yes Yes
(No Marks)
(in all games since Source 2007) Used to make 2D skyboxes without displaying the 3D Skybox.
Casts light if there is a light_environment entity in the map.
Icon-Bug.pngBug:Light cast from this texture can still be blocked by 3D skybox geometry.

No effect if used in the same PVS as the toolsskybox tool texture.
Toolsskyfog.gif
toolsskyfog
No Yes Yes N/A N/A Yes N/A Yes
(Marks)
The SkyFog texture does not contain any properties. There is currently no existing corresponding Shader called "skyfog". (Generates error Error: Material "toolsskyfog" uses unknown shader "SkyFog".)
Confirm:Can it be fixed to function properly if its VMT settings are changed in the Source code and recompiled?
Fogvolume.jpg
toolsfogvolume
Yes No No No No No No No (in all games since Left 4 Dead)

Used in conjunction with multiple env_fog_controllers to change fog colours and densities in a level.
Fog inside its volume will not appear to have different atributes when viewed from outside its volume, as it globally changes the appearance of all fog across the map when entered.

Sky and Fog — Game-Specific

These tool textures are only available in specific Source engine games.

There are no game specific tool textures in this section.

Miscellaneous

These are textures that have a special use, sometimes only seen in one single game.

Some of these textures are not even "real" tool textures, as they do not possess any Compile Flags, but they have some important use that no other texture available can do.

Image Filename Visible if
world brush
Casts shadows Cuts
VIS leaves
Blocks NPC LOS Solid to NPCs Solid to player(s) Solid to physics Solid to bullets Usage / Notes
Blockbomb.jpg
toolsblockbomb
No No Yes Yes Yes Yes Yes Yes Counter-Strike: Global Offensive Acts like ToolsInvisible. Possibly unimplemented.
L4d2-Climb versus.png
climb
No No No No Yes Yes Yes No Left 4 Dead seriesLeft 4 Dead series A ladder only for Infected. Not visible to Infected Players during Versus, but can be climbed on. Use Climb Versus Instead.

Could be used in areas blocked by func_playerinfected_clip where Player Infected cannot go to and should be unable to see a climbing spot, but the AI should be able to use it for hordes.

Climb alpha.png
climb_alpha
Visible to Infected No No No Yes Yes Yes No Left 4 Dead seriesLeft 4 Dead series Same as Climb Versus, with the only difference being that climb_alpha uses $alphatest, while climb_versus uses $additive.

This texture may be usable in spots where the texture is applied over a translucent material, in order to fix sorting issues, but it has so far never been used in any official campaign.

L4d2-Climb versus.png
climb_versus
Visible to Infected No No No Yes Yes Yes No Left 4 Dead seriesLeft 4 Dead series A ladder only for infected. Must be used with func_ladder; otherwise, it will be ignored by the navigation mesh editor.
Hulkwall.png
hulkwall
Visible to Infected Yes Yes Yes Yes Yes Yes Yes Left 4 Dead seriesLeft 4 Dead series This is an obsolete visual cue texture of a wall that can be broken by special infected players.
The texture itself has no special abilities other than being invisible to survivors.
This texture is since superceeded by ../effects/tankwall. But this one was not removed from the game.
See This page for further information.
Hulkwallglow.png
hulkwallglow
Visible to Infected Yes Yes Yes Yes Yes Yes Yes Left 4 Dead seriesLeft 4 Dead series This is an obsolete visual cue texture of a wall that can be broken by special infected players.
The texture itself has no special abilities other than being invisible to survivors.
This texture is since superceeded by ../effects/tankwall. But this one was not removed from the game.
See This page for further information.
L4d-effects-tankwall.png
../effects/tankwall
Visible to Infected Yes Yes Yes Yes Yes Yes Yes Left 4 Dead seriesLeft 4 Dead series This is the "new" visual cue texture of a wall that can be broken by special infected players.
The texture itself has no special abilities other than being invisible to survivors.
See This page for further information.
Toolsdotted.png
toolsdotted
Yes No Yes No Yes Yes Yes Yes
(Marks)
A face textured with this texture is rendered on top of all other brush geometry. Furthermore, a brush with Dotted on any face will not block visibility or cull any face that it touches, meaning that any area enclosed in a Dotted-textured brush will not be removed from the map in any way.
Confirm:This effect is probably just due to having $alphatest.
Toolsinvisibledisplacement.gif
toolsinvisibledisplacement
No No No No Yes Yes Yes Depends on game (only in Team Fortress 2)
Light is not blocked by this texture, except in Counter-Strike: Global Offensive.

Despite being in the Materials/Tools folder, this is not a tool texture. It has no abilities. It is simply an invisible texture used for displacement clipping, where you make an invisible displacement instead of a clip brush because making intricate clip brushes is difficult.
Team Fortress 2 Uses $decal 1 and $surfaceprop "dirt".

Toolswhite.gif
../effects/clear
Fully Translucent Depends on use Depends on use N/A Yes Yes Yes Depends on use Left 4 Dead seriesLeft 4 Dead series Basic LightmappedGeneric that has no abilities other than being invisible.

Officially used like invisibledisplacement for displacement clipping.
Has no VMT properties other than $alphatest 1.

Toolinvismetal.png
invismetal
No No Yes No Yes Yes Yes No Counter-Strike: Source Left 4 Dead seriesLeft 4 Dead series Invisible texture, with metal surface properties. Simmilar to how Nodraw Metal should have worked.

Creates metal sparks when shot, but bullets pass through.
Does not seal maps.

Tip.pngTip:You may want to edit the VMT to add %CompileDetail 1 to prevent it from cutting visleaves, which makes it much more useful. Alternatively, tie it to a func_detail or other entity.
Confirm:An invisimetal texture also exists in Black Mesa, although it uses a different texture. Does it work the same?
No Image
Locked
N/A N/A N/A N/A N/A N/A N/A N/A This is a special tool texture, intended to prevent VMEX from decompiling any maps using this custom tool texture. BSPSource ignores this, rendering it useless.

It does not really exist, as every user has to make their own, but it is listed here for completeness sake.

Toolswarmlight.png
toolswarmlight
Yes Yes Yes Yes Yes Yes Yes Yes Left 4 Dead seriesLeft 4 Dead series Basic UnlitGeneric texture that has no abilities.

Used with func_brush to make it non-solid and fade away when approached.
It being UnlitGeneric makes it seems as if it were glowing in a warm color, but is not listed in lights.rad, so it won't actually emit any light for VRAD to compile.
Only used in c8m2_subway behind the three windows to the right of the entrance of the end map saferoom building, to simulate glowing light in a room.

Toolswrongway.png
wrongway
Yes (in Counter-Strike: Global Offensive)
Only to Infected (in Left 4 Dead seriesLeft 4 Dead series)
No Yes No Yes Yes Yes Yes
(No Marks)
Left 4 Dead seriesLeft 4 Dead seriesCounter-Strike: Global Offensive Used to indicate the borders of the playable area.

Left 4 Dead Only visible to Infected players.
Left 4 Dead 2 No campaign uses this tool texture anymore. See L4D Level Design: Blocking the Infected Team for more info.
Counter-Strike: Global Offensive Used especially for the CS:GO/CS2 Wingman Wingman game mode. It has the same properties as WrongWay Timer.

Tip.pngTip:All Yes/No flags can be changed if applied to a func_brush.
Wrongway timer.png
wrongway_timer
Doesn't work correctly No Yes No Yes Yes Yes Yes Counter-Strike: Global Offensive Used for brushes that are temporarily blocking Terrorists during the freezetime of the CS:GO/CS2 Retakes Retakes game mode. It is only visible to players that are close to the origin of the entity that this material is applied to (e.g., func_brush), achieved with the PlayerProximity material proxy.
Warning.pngWarning:Does not work as intended on world brushes and func_details as they have no origin: In-game, the $alpha is either equal to the $alpha of the closest functioning application of this material on screen or - if there is none - the $alpha remains "stuck" at some value, no matter the proximity.