Tool textures (Source): Difference between revisions
m (Cleaning and making tables less wide) |
|||
| Line 3: | Line 3: | ||
{{TabsBar|main=Tool textures}} | {{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 | [[Tool textures]] are used, mostly by the tools but sometimes by the engine, to perform special tasks. They can easily be found in {{Hammer|2}} by using {{Code|tools\}} as a filter in the [[Hammer Texture Browser|texture browser]], but other tool textures may be located in different directory. | ||
Anyone can make their very own tool texture, by utilizing available [[ | Anyone can make their very own tool texture, by utilizing available [[material map compile flags]], such as {{Mono|[[%CompileNonSolid]]}}, {{Mono|[[%CompileDetail]]}} and {{Mono|[[%CompileNoDraw]]}} for a tool texture which is not solid, does not cut [[visleaf]]s and is invisible. | ||
A {{ | A {{Mono|[[%tooltexture]]}} may also be set, which is only to be seen in Hammer's texture browser, while the {{Mono|[[$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- | 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]]. | ||
{{ | {{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 {{ | {{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|2}}.}} | ||
{{Note|Next to tool textures, there are also brush entities, which can perform tasks similar to tool textures.<br> | {{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> | 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.}} | 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|toolsinvisibleladder}}, and {{Code|invismetal}}. 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}}, 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 {{Day of Defeat: Source}}, not in {{Css}}).}} }} | |||
== General == | == General == | ||
=== General — Common === | === General — Common === | ||
These tool textures are available in every Source engine game.<br> | 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 {{ | 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}}, {{Portal 2}}, etc.). | ||
{| | {| rules="all" cellpadding="5" style="border:1px solid #555; background:#2D2D2D" | ||
|- style=" | |- style="position:sticky; top:0; z-index:1; background:#333; color:#DDD" | ||
! width="56px" | Texture | |||
! width=" | ! width="56px" | Visible if <br> [[world brush]] | ||
! width=" | ! width="56px" | Casts shadows | ||
! width=" | ! width="56px" | Cuts <br> [[visleaf|VIS leaves]] | ||
! width=" | ! width="56px" | Blocks NPC [[Line of sight|LOS]] | ||
! width=" | ! width="56px" | Solid to NPCs | ||
! width=" | ! width="56px" | Solid to player(s) | ||
! width=" | ! width="56px" | Solid to physics | ||
! width=" | ! width="56px" | Solid to bullets | ||
! width=" | ! Usage / Notes | ||
! | |||
|- id="black" | |- id="black" | ||
| [[File:Toolsblack.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsblack.gif|64px]] <br> toolsblack | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 50: | Line 49: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (Marks)}} | ||
| {{ | | {{Confusion|This is the [[UnlitGeneric]] {{Code|tools/toolsblack}} texture, not the [[LightmappedGeneric]] {{Code|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. | 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 {{ | |||
Uses [[UnlitGeneric]] in: {{ | An example of its use is in the "space" backgrounds during the G-Man monologues in {{Half-Life 2|2}} or for crude buildings in the 3D Skybox. | ||
Uses [[LightmappedGeneric]] in: {{csseries|src=1}} {{ | |||
In games where it uses LightmappedGeneric, you may want to use | Uses [[UnlitGeneric]] in: {{Half-Life 2}} {{Portal series}} {{Alien Swarm}} <br> | ||
Uses [[LightmappedGeneric]] in: {{csseries|src=1}} {{Day of Defeat: Source}} {{l4dseries}}<br> | |||
In games where it uses LightmappedGeneric, you may want to use {{Code|vgui/black}} instead (to avoid wasting lightmap usage) or make your own tool texture. | |||
|- id="white" | |- id="white" | ||
| [[File:Toolswhite.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolswhite.gif|64px]] <br> toolswhite | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 67: | Line 67: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (Marks)}} | ||
| {{ | | {{Half-Life 2: Episode Two|since}} {{tf2|not}} | ||
Identical to {{mono|lights/white}} (which is available in all Source games), but [[RAD file|doesn't cast any light]] by default. Using glass [[Material surface properties|surfaceprop]]. | |||
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]]. | |||
|- id="blockbullets" | |- id="blockbullets" | ||
| [[File:Toolsblockbullets.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsblockbullets.gif|64px]] <br> [[Blockbullets|toolsblockbullets]] | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 82: | Line 80: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (No Marks)}} | ||
| {{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.}} | | {{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.}} | ||
{{csgo}} Use | {{csgo}} Use {{Code|blockbullets_cs}} variant, which correctly stops bullets even with 1 unit thickness.<br> | ||
|- id="invisible" | |- id="invisible" | ||
| [[File:Toolsinvisible.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsinvisible.gif|64px]] <br> toolsinvisible | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 99: | Line 96: | ||
{{csseries|src=1}}{{tf2}} Also solid to bullets.<br> | {{csseries|src=1}}{{tf2}} Also solid to bullets.<br> | ||
{{l4dseries}} Smokers, Boomers and Spitters can attack you through it. Survivors stop being dragged towards smokers when touching a {{mono|toolsinvisible}} wall.<br> | {{l4dseries}} Smokers, Boomers and Spitters can attack you through it. Survivors stop being dragged towards smokers when touching a {{mono|toolsinvisible}} wall.<br> | ||
{{ | {{Confusion| {{l4dseries}} {{mono|ToolsNodraw_Noshadow}} uses the same tool texture in the texture browser, which also blocks LOS!}} | ||
|- id="ladder" | |- id="ladder" | ||
| [[File:Toolsladder.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsladder.gif|64px]] <br> toolsinvisibleladder | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 111: | Line 107: | ||
| {{Yes}} | | {{Yes}} | ||
| {{No}} | | {{No}} | ||
| Used for ladders in most multiplayer games except {{ | | Used for ladders in most multiplayer games except {{Half-Life 2: Deathmatch}}, either by itself, or tied to {{Ent|func_ladder}}. | ||
{{ | {{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.}} | ||
|- id="nodraw" | |- id="nodraw" | ||
| [[File:Toolsnodraw.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsnodraw.gif|64px]] <br> toolsnodraw | ||
| {{No}} | | {{No}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 123: | Line 118: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (No Marks)}} | ||
| 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 {{ | | 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 {{Portal 2}}. Use Nodraw Portalable instead if this behavior is desired. | ||
{{ | {{Note|The "glass footsteps" version of this texture in {{Portal 2|2}} does not [[seal]] maps. {{Todo|Insert this version into the list}} }} | ||
{{ | {{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 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" | |- id="origin" | ||
| [[File:Toolsorigin.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsorigin.gif|64px]] <br> toolsorigin | ||
| {{N/A}} | | {{N/A}} | ||
| {{No}} | | {{No}} | ||
| Line 140: | Line 133: | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| {{Deprecated}} Leftover from {{ | | {{Deprecated}} Leftover from {{GoldSrc|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" | |- id="blocklos" | ||
| [[File:Toolsblocklos.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsblocklos.gif|64px]] <br> toolsblock_los | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 152: | Line 144: | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Blocks the [[line of sight]] of [[NPC]]s and [[bot]]s.<br> {{ | | 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" | |- id="blocklight" | ||
| [[File:Toolsblocklight.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsblocklight.gif|64px]] <br> toolsblocklight | ||
| {{No}} | | {{No}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 164: | Line 155: | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Casts shadows artificially. Only used at compile time by [[VRAD]]. Does not seal [[leak]]s. See more uses [[Advanced Lighting# | | 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" | |- id="trigger" | ||
| [[File:Toolstrigger.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolstrigger.gif|64px]] <br> [[Triggers|toolstrigger]] | ||
| {{Yes}} | | {{Yes}} | ||
| {{No}} | | {{No}} | ||
| Line 181: | Line 171: | ||
=== General — Game-specific === | === General — Game-specific === | ||
These tool textures are only available in specific Source engine games. | These tool textures are only available in specific Source engine games. | ||
{| | {| rules="all" cellpadding="5" style="border:1px solid #555; background:#2D2D2D" | ||
|- style=" | |- style="position:sticky; top:0; z-index:1; background:#333; color:#DDD" | ||
! width="56px" | Texture | |||
! width=" | ! width="56px" | Visible if <br> [[world brush]] | ||
! width=" | ! width="56px" | Casts shadows | ||
! width=" | ! width="56px" | Cuts <br> [[visleaf|VIS leaves]] | ||
! width=" | ! width="56px" | Blocks NPC [[Line of sight|LOS]] | ||
! width=" | ! width="56px" | Solid to NPCs | ||
! width=" | ! width="56px" | Solid to player(s) | ||
! width=" | ! width="56px" | Solid to physics | ||
! width=" | ! width="56px" | Solid to bullets | ||
! width=" | ! Usage / Notes | ||
! | |||
|- id="black_cheap" | |- id="black_cheap" | ||
| [[File:Toolsblack.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsblack.gif|64px]] <br> toolsblack_cheap | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 204: | Line 192: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (Marks)}} | ||
| {{ | | in {{Portal 2|2}} identical to {{mono|ToolsBlack}}, the only difference is that uses a special {{code|preset=2|[[Black]]}} shader.<br/> {{Garry's Mod}} has a replacement that works with older engines. | ||
|- id="black_nofog" | |- id="black_nofog" | ||
| [[File:Toolsblack.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsblack.gif|64px]] <br> toolsblack_nofog | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 216: | Line 203: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (Marks)}} | ||
| {{l4dseries}} Identical to {{mono|ToolsBlack}}, but no fog will appear in front of it. Uses the [[UnlitGeneric]] shader.<br> | | {{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}}. | Inherits various City17 [[%25keywords]] from {{mono|ToolsBlack}}. | ||
|- id="black_noportal" | |- id="black_noportal" | ||
| [[File:Toolsblack.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsblack.gif|64px]] <br> toolsblack_noportal | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 229: | Line 215: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (Marks)}} | ||
| {{ | | In {{Portal 2|2}} 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" | |- id="black_noportal_nofog" | ||
| [[File:Toolsblack.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsblack.gif|64px]] <br> toolsblack_noportal_nofog | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 241: | Line 226: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (Marks)}} | ||
| {{ | | in {{Portal 2|2}} identical to {{Mono|ToolsBlack}}, but does not render fog. | ||
|- id="black_noportal_skybox" | |- id="black_noportal_skybox" | ||
| [[File:Toolsblack.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsblack.gif|64px]] <br> toolsblack_noportal_skybox | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 253: | Line 237: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (Marks)}} | ||
| {{ | | in {{Portal 2|2}} functions like {{Mono|ToolsBlack_Cheap}} but uses a {{Code|[[$basetexture]]}} and contains keywords from {{Half-Life 2|2|nt=0}}. Because the {{Code|[[$basetexture]]}} parameter doesn't have any effect on the {{Mono|[[Black]]}} shader, this hints that the material could have previously used the {{Mono|[[UnlitGeneric]]}} shader. | ||
|- id="nolight" | |- id="nolight" | ||
| [[File:Toolsblack.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsblack.gif|64px]] <br> toolsnolight | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 265: | Line 248: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (Marks)}} | ||
| {{ | | {{Alien Swarm}} Identical to {{Mono|ToolsBlack}}, but for some reason is used instead. | ||
|- id="blockbullets" | |- id="blockbullets" | ||
| [[File:Toolsblockbullets.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsblockbullets.gif|64px]] <br> toolsblockbullets2 | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 277: | Line 259: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (No Marks)}} | ||
| {{ | | {{Tf2}} Identical to {{Mono|ToolsBlockBullets}}, but doesn't cut [[visleaf|visleaves]]. | ||
|- id="nodrawroof" | |- id="nodrawroof" | ||
|[[File:Toolsnodraw.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsnodraw.gif|64px]] <br> toolsnodraw_roof | ||
| {{No}} | | {{No}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 289: | Line 270: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (No Marks)}} | ||
| {{ | | {{Css}} Identical to {{Mono|ToolsNodraw}}, but with a different texture name. | ||
|- id="nodrawwood" | |- id="nodrawwood" | ||
|[[File:Toolsnodraw.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsnodraw.gif|64px]] <br> toolsnodraw_wood | ||
| {{No}} | | {{No}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 301: | Line 281: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (No Marks)}} | ||
| {{ | | {{Css}} Identical to {{Mono|ToolsNodraw}}, but will make wood impact sounds when hit. | ||
|- id="nodrawnoshadow" | |- id="nodrawnoshadow" | ||
|[[File:Toolsnodraw_metal.png|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsnodraw_metal.png|64px]] <br> toolsnodraw_metal | ||
| {{No}} | | {{No}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 313: | Line 292: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (No Marks)}} | ||
| {{ | | {{Left 4 Dead 2}} Identical to {{Mono|ToolsNodraw}} but with metal [[$surfaceprop|surfaceprop]]. Does not show metal marks. You may want to use {{Mono|Invismetal}} instead. | ||
|- id="nodrawportalable" | |- id="nodrawportalable" | ||
|[[File:Nodraw_portalable.png|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Nodraw_portalable.png|64px]] <br> toolsnodraw_portal | ||
| {{No}} | | {{No}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 325: | Line 303: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (No Marks)}} | ||
| {{ | | in {{Portal 2|2}} identical to {{Mono|ToolsNodraw}}, but portals can be placed on this texture. | ||
|- | |- | ||
|} | |} | ||
== Optimization == | == Optimization == | ||
{| | {| rules="all" cellpadding="5" style="border:1px solid #555; background:#2D2D2D" | ||
|- style=" | |- style="position:sticky; top:0; z-index:1; background:#333; color:#DDD" | ||
! width="56px" | Texture | |||
! width=" | ! width="56px" | Visible if <br> [[world brush]] | ||
! width=" | ! width="56px" | Casts shadows | ||
! width=" | ! width="56px" | Cuts <br> [[visleaf|VIS leaves]] | ||
! width=" | ! width="56px" | Blocks NPC [[Line of sight|LOS]] | ||
! width=" | ! width="56px" | Solid to NPCs | ||
! width=" | ! width="56px" | Solid to player(s) | ||
! width=" | ! width="56px" | Solid to physics | ||
! width=" | ! width="56px" | Solid to bullets | ||
! width=" | ! Usage / Notes | ||
! | |||
|- id="areaportal" | |- id="areaportal" | ||
| [[File:Toolsareaportal.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsareaportal.gif|64px]] <br> [[Areaportal|toolsareaportal]] | ||
| {{Yes}} | | {{Yes}} | ||
| {{No}} | | {{No}} | ||
| Line 355: | Line 331: | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Use with [[areaportal]]s ( | | Use with [[areaportal]]s ({{Ent|func_areaportal}} and {{Ent|func_areaportalwindow}}). Can be used with other brush entities, such as some triggers. | ||
|- id="hint" | |- id="hint" | ||
| [[File:Toolshint.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolshint.gif|64px]] <br> [[Hint brush|toolshint]] | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 369: | Line 344: | ||
| Instructs [[VBSP]] to cut [[visleaves]] along this texture, but does nothing else. | | Instructs [[VBSP]] to cut [[visleaves]] along this texture, but does nothing else. | ||
|- id="skip" | |- id="skip" | ||
| [[File:Toolsskip.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsskip.gif|64px]] <br> [[Skip|toolsskip]] | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 384: | Line 358: | ||
{{tip|This can be exploited by a mapper to prevent the bomb from falling into a pit if planted too close to the edge.}} }} | {{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" | ||
| [[File:Toolsoccluder.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsoccluder.gif|64px]] <br> [[Occluder|toolsoccluder]] | ||
| {{Yes}} | | {{Yes}} | ||
| {{No}} | | {{No}} | ||
| Line 401: | Line 374: | ||
=== Clips — Common === | === Clips — Common === | ||
These tool textures are available in every source engine game.<br> | 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}}, {{ | 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}}, {{Portal 2}}, etc). | ||
{| | |||
|- style=" | {| rules="all" cellpadding="5" style="border:1px solid #555; background:#2D2D2D" | ||
|- style="position:sticky; top:0; z-index:1; background:#333; color:#DDD" | |||
! width=" | ! width="56px" | Texture | ||
! width=" | ! width="56px" | Visible if <br> [[world brush]] | ||
! width=" | ! width="56px" | Casts shadows | ||
! width=" | ! width="56px" | Cuts <br> [[visleaf|VIS leaves]] | ||
! width=" | ! width="56px" | Blocks NPC [[Line of sight|LOS]] | ||
! width=" | ! width="56px" | Solid to NPCs | ||
! width=" | ! width="56px" | Solid to player(s) | ||
! width=" | ! width="56px" | Solid to physics | ||
! width=" | ! width="56px" | Solid to bullets | ||
! | ! Usage / Notes | ||
|- id="clip" | |- id="clip" | ||
| [[File:Toolsclip.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsclip.gif|64px]] <br> toolsclip | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 427: | Line 399: | ||
| {{No}} | | {{No}} | ||
| Solid to players and [[NPC]]s but not other objects.<br> | | Solid to players and [[NPC]]s but not other objects.<br> | ||
{{ | {{Source 2013}} 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> | {{css}}{{csgo}} Solid to dropped [[weapon_c4|C4]]. Solid to [[hostage_entity|hostages]] in {{css}}.<br> | ||
{{csgo}}{{ | {{csgo}}{{Garry'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.<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]]. | : See more about [[Clip texture|clip texture here]]. | ||
|- id="npcclip" | |- id="npcclip" | ||
| [[File:Toolsnpcclip.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsnpcclip.gif|64px]] <br> toolsnpcclip | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 445: | Line 416: | ||
| 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. | | 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" | ||
| [[File:Toolsplayerclip.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsplayerclip.gif|64px]] <br> toolsplayerclip | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 456: | Line 426: | ||
| {{No}} | | {{No}} | ||
| Solid to [[player]]s only.<br> | | Solid to [[player]]s only.<br> | ||
{{ | {{Source 2013}} 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> | {{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> | {{l4dseries}} Solid to the survivors only.<br> | ||
|- id="playercont" | |- id="playercont" | ||
| [[File:Toolsplayercont.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsplayercont.gif|64px]] <br> toolscontrolclip | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 469: | Line 438: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes|Yes <br | | {{Yes|Yes <br> (Marks)}} | ||
| {{ | | {{Source 2007|removed}} {{also|{{tf2}}}} | ||
{{ | {{Deprecated}} 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 {{ | This texture, along with trigger, works on {{Ent|func_vehicleclip}}. It was removed in {{Half-Life 2|1}} base since {{Source 2007|1}}, but exist in {{Tf2|1}} and {{Source 2|1}}. | ||
|} | |} | ||
=== Clips — Game-Specific === | === Clips — Game-Specific === | ||
These tool textures are only available in specific Source engine games. | These tool textures are only available in specific Source engine games. | ||
{| | |||
|- style=" | {| rules="all" cellpadding="5" style="width:100%; border:1px solid #555; background:#2D2D2D" | ||
|- style="position:sticky; top:0; z-index:1; background:#333; color:#DDD" | |||
! width=" | ! width="56px" | Texture | ||
! width=" | ! width="56px" | Visible if <br> [[world brush]] | ||
! width=" | ! width="56px" | Casts shadows | ||
! width=" | ! width="56px" | Cuts <br> [[visleaf|VIS leaves]] | ||
! width=" | ! width="56px" | Blocks NPC [[Line of sight|LOS]] | ||
! width=" | ! width="56px" | Solid to NPCs | ||
! width=" | ! width="56px" | Solid to player(s) | ||
! width=" | ! width="56px" | Solid to physics | ||
! width=" | ! width="56px" | Solid to bullets | ||
! | ! Usage / Notes | ||
|- id="grenadeclip" | |- id="grenadeclip" | ||
| [[File:Toolsgrenadeclip.png|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsgrenadeclip.png|64px]] <br> toolsgrenadeclip | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 503: | Line 471: | ||
| {{csgo}} Solid to grenades only. | | {{csgo}} Solid to grenades only. | ||
|- id="droneclip" | |- id="droneclip" | ||
| [[File:toolsdroneclip.jpg|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:toolsdroneclip.jpg|64px]] <br> toolsdroneclip | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 513: | Line 480: | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| {{ | | {{Csgo}} Used to prevent [[drone]]s getting stuck on complex geometry. | ||
|} | |} | ||
| Line 519: | Line 486: | ||
=== Sky and Fog — Common === | === Sky and Fog — Common === | ||
These tool textures are available in every Source engine game.<br> | 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}}, {{ | 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}}, {{Portal 2}}, etc). | ||
{| | |||
|- style=" | {| rules="all" cellpadding="5" style="border:1px solid #555; background:#2D2D2D" | ||
|- style="position:sticky; top:0; z-index:1; background:#333; color:#DDD" | |||
! width=" | ! width="56px" | Texture | ||
! width=" | ! width="56px" | Visible if <br> [[world brush]] | ||
! width=" | ! width="56px" | Casts shadows | ||
! width=" | ! width="56px" | Cuts <br> [[visleaf|VIS leaves]] | ||
! width=" | ! width="56px" | Blocks NPC [[Line of sight|LOS]] | ||
! width=" | ! width="56px" | Solid to NPCs | ||
! width=" | ! width="56px" | Solid to player(s) | ||
! width=" | ! width="56px" | Solid to physics | ||
! width=" | ! width="56px" | Solid to bullets | ||
! | ! Usage / Notes | ||
|- id="fog" | |- id="fog" | ||
| [[File:Toolsfog.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsfog.gif|64px]] <br> toolsfog | ||
| {{Yes}} | | {{Yes}} | ||
| {{No}} | | {{No}} | ||
| Line 543: | Line 509: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes | Yes <br | | {{Yes | Yes <br> (Marks)}} | ||
| No effect; uses nonexistent [[material map compile flags|compile flag]] [[%CompileFog]]. | | No effect; uses nonexistent [[material map compile flags|compile flag]] [[%CompileFog]]. | ||
(You can use this for {{ | (You can use this for {{Ent|func_smokevolume}} instead of the Trigger texture, but NOT for {{Ent|func_dustcloud}}.) | ||
|- id="skybox" | |- id="skybox" | ||
| [[File:Toolsskybox.png|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsskybox.png|64px]] <br> [[Skybox Basics|toolsskybox]] | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 556: | Line 521: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes | Yes <br | | {{Yes | Yes <br> (No Marks)}} | ||
| 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. | | 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="skybox2d" | |- id="skybox2d" | ||
| [[File:Toolsskybox2d.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsskybox2d.gif|64px]] <br> [[Skybox (2D)|toolsskybox2d]] | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 568: | Line 532: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes | Yes <br | | {{Yes | Yes <br> (No Marks)}} | ||
| {{ | | {{Source 2007|since}} | ||
Used to make 2D [[skybox]]es without displaying the [[3D Skybox]].<br>Casts light if there is a {{ | 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.}} | ||
No effect if used in the same [[PVS]] as the {{Mono|toolsskybox}} tool texture. | |||
|- id="skyfog" | |- id="skyfog" | ||
| [[File:Toolsskyfog.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsskyfog.gif|64px]] <br> toolsskyfog | ||
| {{No}} | | {{No}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 581: | Line 545: | ||
| {{Yes}} | | {{Yes}} | ||
| {{N/A}} | | {{N/A}} | ||
| {{Yes | Yes <br | | {{Yes | Yes <br> (Marks)}} | ||
| The SkyFog texture does not contain any properties. There is currently no existing corresponding Shader called "skyfog". (Generates error | | 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"}}.) | ||
{{ | {{Confirm|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" | ||
| [[File:Fogvolume.jpg|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Fogvolume.jpg|64px]] <br> [[fog_volume|toolsfogvolume]] | ||
| {{Yes}} | | {{Yes}} | ||
| {{No}} | | {{No}} | ||
| Line 595: | Line 558: | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| {{ | | {{Left 4 Dead|since}} | ||
Used in conjunction with multiple {{ | 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. | ||
|} | |} | ||
| Line 609: | Line 572: | ||
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. | 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. | ||
{| | {| rules="all" cellpadding="5" style="border:1px solid #555; background:#2D2D2D" | ||
|- style=" | |- style="position:sticky; top:0; z-index:1; background:#333; color:#DDD" | ||
! width="56px" | Texture | |||
! width=" | ! width="56px" | Visible if <br> [[world brush]] | ||
! width=" | ! width="56px" | Casts shadows | ||
! width=" | ! width="56px" | Cuts <br> [[visleaf|VIS leaves]] | ||
! width=" | ! width="56px" | Blocks NPC [[Line of sight|LOS]] | ||
! width=" | ! width="56px" | Solid to NPCs | ||
! width=" | ! width="56px" | Solid to player(s) | ||
! width=" | ! width="56px" | Solid to physics | ||
! width=" | ! width="56px" | Solid to bullets | ||
! width=" | ! Usage / Notes | ||
! | |||
|- id="blockbomb" | |- id="blockbomb" | ||
| [[File: blockbomb.jpg|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File: blockbomb.jpg|64px]] <br> toolsblockbomb | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 635: | Line 596: | ||
| {{csgo}} Acts like {{mono|ToolsInvisible}}. Possibly unimplemented. | | {{csgo}} Acts like {{mono|ToolsInvisible}}. Possibly unimplemented. | ||
|- id="climb" | |- id="climb" | ||
| | | style="text-align:center; font-family:monospace, monospace" | [[File:L4d2-Climb_versus.png|64px]] <br> climb | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 648: | Line 608: | ||
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. | 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" | |- id="climbalpha" | ||
| | | style="text-align:center; font-family:monospace, monospace" | [[File:Climb alpha.png|64px]] <br> climb_alpha | ||
| {{Both|Visible to Infected}} | | {{Both|Visible to Infected}} | ||
| {{No}} | | {{No}} | ||
| Line 661: | Line 620: | ||
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. | 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" | ||
| | | style="text-align:center; font-family:monospace, monospace" | [[File:L4d2-Climb_versus.png|64px]] <br> climb_versus | ||
| {{Both|Visible to Infected}} | | {{Both|Visible to Infected}} | ||
| {{No}} | | {{No}} | ||
| Line 673: | Line 631: | ||
| {{l4dseries}} A ladder only for infected. Must be used with {{ent|func_ladder}}; otherwise, it will be ignored by the navigation mesh editor.<br> | | {{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" | |- id="hulkwall" | ||
| | | style="text-align:center; font-family:monospace, monospace" | [[File:Hulkwall.png|64px]] <br> hulkwall | ||
| {{Both|Visible to Infected}} | | {{Both|Visible to Infected}} | ||
| {{yes}} | | {{yes}} | ||
| Line 683: | Line 640: | ||
| {{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 | | {{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}}. 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" | |- id="hulkwallglow" | ||
| | | style="text-align:center; font-family:monospace, monospace" | [[File:Hulkwallglow.png|64px]] <br> hulkwallglow | ||
| {{Both|Visible to Infected}} | | {{Both|Visible to Infected}} | ||
| {{yes}} | | {{yes}} | ||
| Line 695: | Line 651: | ||
| {{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 | | {{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}}. 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" | |- id="tankwall" | ||
| | | style="text-align:center; font-family:monospace, monospace" | [[File:L4d-effects-tankwall.png|64px]] <br> ../effects/tankwall | ||
| {{Both|Visible to Infected}} | | {{Both|Visible to Infected}} | ||
| {{yes}} | | {{yes}} | ||
| Line 709: | Line 664: | ||
| {{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. | | {{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" | ||
| | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsdotted.png|64px]] <br> toolsdotted | ||
| {{Yes}} | | {{Yes}} | ||
| {{No}} | | {{No}} | ||
| Line 718: | Line 672: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes | Yes <br | | {{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 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. | | 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 {{cmd|$alphatest}}.}} | {{confirm|This effect is probably just due to having {{cmd|$alphatest}}.}} | ||
|- id="invisibledisplacement" | |- id="invisibledisplacement" | ||
| [[File:Toolsinvisibledisplacement.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolsinvisibledisplacement.gif|64px]] <br> toolsinvisibledisplacement | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 736: | Line 689: | ||
{{tf2}} Uses {{cmd|$decal|1}} and {{cmd|$surfaceprop|"dirt"}}.<br> | {{tf2}} Uses {{cmd|$decal|1}} and {{cmd|$surfaceprop|"dirt"}}.<br> | ||
|- id="Clear" | |- id="Clear" | ||
| [[File:Toolswhite.gif|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolswhite.gif|64px]] <br> ../effects/clear | ||
| {{Both|Fully Translucent}} | | {{Both|Fully Translucent}} | ||
| {{Both|Depends on use}} | | {{Both|Depends on use}} | ||
| Line 750: | Line 702: | ||
Has no VMT properties other than {{cmd|$alphatest|1}}. | Has no VMT properties other than {{cmd|$alphatest|1}}. | ||
|- id="Invismetal" | |- id="Invismetal" | ||
| [[File:Toolinvismetal.png|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolinvismetal.png|64px]] <br> invismetal | ||
| {{No}} | | {{No}} | ||
| {{No}} | | {{No}} | ||
| Line 763: | Line 714: | ||
Creates metal sparks when shot, but bullets pass through.<br> | Creates metal sparks when shot, but bullets pass through.<br> | ||
Does not seal maps.<br> | Does not seal maps.<br> | ||
{{ | {{Tip|You may want to edit the VMT to add {{Code|%CompileDetail 1}} to prevent it from cutting visleaves, which makes it much more useful. Alternatively, tie it to a {{Ent|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?}} | ||
|- id="Locked" | |- id="Locked" | ||
| '''No Image''' | | style="text-align:center; font-family:monospace, monospace" | '''No Image''' <br><br> Locked | ||
| {{N/A}} | | {{N/A}} | ||
| {{N/A}} | | {{N/A}} | ||
| Line 779: | Line 729: | ||
It does not '''really''' exist, as every user has to make their own, but it is listed here for completeness sake. | It does not '''really''' exist, as every user has to make their own, but it is listed here for completeness sake. | ||
|- id="toolswarmlight" | |- id="toolswarmlight" | ||
| [[File:Toolswarmlight.png|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolswarmlight.png|64px]] <br> toolswarmlight | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| Line 794: | Line 743: | ||
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> | 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> | ||
|- id="wrongway" | |- id="wrongway" | ||
| [[File:Toolswrongway.png|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Toolswrongway.png|64px]] <br> wrongway | ||
| {{both|Yes {{csgo|in}}<br> Only to Infected}} {{l4dseries|in}} | | {{both|Yes {{csgo|in}}<br> Only to Infected}} {{l4dseries|in}} | ||
| {{No}} | | {{No}} | ||
| Line 805: | Line 753: | ||
| {{Yes|Yes<br>(No Marks)}} | | {{Yes|Yes<br>(No Marks)}} | ||
| {{l4dseries}}{{csgo}} Used to indicate the borders of the playable area.<br> | | {{l4dseries}}{{csgo}} Used to indicate the borders of the playable area.<br> | ||
{{ | {{Left 4 Dead}} Only visible to Infected players.<br> | ||
{{ | {{Left 4 Dead 2}} 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> | ||
{{csgo}} Used especially for the {{csgo mode|Wingman}} [[CS:GO Game Modes|game mode]]. It has the same properties as ''WrongWay Timer''.<br> | {{csgo}} Used especially for the {{csgo mode|Wingman}} [[CS:GO Game Modes|game mode]]. It has the same properties as ''WrongWay Timer''.<br> | ||
{{tip|All Yes/No flags can be changed if applied to a {{ent|func_brush}}.}} | {{tip|All Yes/No flags can be changed if applied to a {{ent|func_brush}}.}} | ||
|- id="wrongway_timer" | |- id="wrongway_timer" | ||
| [[File:Wrongway timer.png|64px]] | | style="text-align:center; font-family:monospace, monospace" | [[File:Wrongway timer.png|64px]] <br> wrongway_timer | ||
| {{Both|Doesn't work correctly}} | | {{Both|Doesn't work correctly}} | ||
| {{No}} | | {{No}} | ||
| Line 820: | Line 767: | ||
| {{Yes}} | | {{Yes}} | ||
| {{Yes}} | | {{Yes}} | ||
| {{ | | {{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}} [[material proxies|material proxy]]. | ||
{{ | {{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.}} | ||
|} | |} | ||
[[Category:Source]] | [[Category:Source]] | ||
[[Category:Level Design]] | [[Category:Level Design]] | ||
[[Category:Material System]] | [[Category:Material System]] | ||
Latest revision as of 07:23, 28 October 2025
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, %CompileDetail and %CompileNoDraw 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.
dev/dev_windowportal in For example, ![]()
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.
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.
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 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
,
, ![]()
,
, etc.).
| Texture | 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 |
Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes (Marks) |
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 Uses UnlitGeneric in: |
toolswhite |
Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes (Marks) |
(in all games since Identical to lights/white (which is available in all Source games), but doesn't cast any light by default. Using glass surfaceprop. |
toolsblockbullets |
No | No | Yes | No | Yes | Yes | Yes | Yes (No Marks) |
See Blockbullets for info on how to actually block bullets and projectiles.
|
toolsinvisible |
No | No | Yes | No | Yes | Yes | Yes | No | Solid to prop_physics, projectiles, players, & NPCs. Not solid to bullets.
|
toolsinvisibleladder |
No | No | Yes | No | Yes | Yes | Yes | No | Used for ladders in most multiplayer games except |
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. Todo: Insert this version into the list |
toolsorigin |
N/A | No | No | No | No | No | No | No | [ |
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 |
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 |
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.
| Texture | 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_cheap |
Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes (Marks) |
in Black shader. |
toolsblack_nofog |
Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes (Marks) |
Inherits various City17 %keywords from ToolsBlack. |
toolsblack_noportal |
Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes (Marks) |
In |
toolsblack_noportal_nofog |
Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes (Marks) |
in |
toolsblack_noportal_skybox |
Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes (Marks) |
in $basetexture and contains keywords from $basetexture parameter doesn't have any effect on the Black shader, this hints that the material could have previously used the UnlitGeneric shader.
|
toolsnolight |
Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes (Marks) |
|
toolsblockbullets2 |
No | No | No | No | Yes | Yes | Yes | Yes (No Marks) |
|
toolsnodraw_roof |
No | Yes | Yes | Yes | Yes | Yes | Yes | Yes (No Marks) |
|
toolsnodraw_wood |
No | Yes | Yes | Yes | Yes | Yes | Yes | Yes (No Marks) |
|
toolsnodraw_metal |
No | Yes | Yes | Yes | Yes | Yes | Yes | Yes (No Marks) |
|
toolsnodraw_portal |
No | Yes | Yes | Yes | Yes | Yes | Yes | Yes (No Marks) |
in |
Optimization
| Texture | 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 |
Yes | No | Yes | No | No | No | No | No | Use with areaportals (func_areaportal and func_areaportalwindow). Can be used with other brush entities, such as some triggers. |
toolshint |
No | No | Yes | No | No | No | No | No | Instructs VBSP to cut visleaves along this texture, but does nothing else. |
toolsskip |
No | No | No | No | No | No | No | No | Has no effect on anything (except bomb in 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. |
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 |
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
,
, ![]()
,
, etc).
| Texture | 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 |
No | No | No | No | Yes | Yes | No | No | Solid to players and NPCs but not other objects.
|
toolsnpcclip |
No | No | No | No | Yes | No | No | No | Solid to NPCs only. |
toolsplayerclip |
No | No | No | No | No | Yes | No | No | Solid to players only.
|
toolscontrolclip |
Yes | Yes | Yes | N/A | Yes | Yes | Yes | Yes (Marks) |
(removed since [ |
Clips — Game-Specific
These tool textures are only available in specific Source engine games.
| Texture | 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 |
No | No | No | No | No | No | Solid to Grenades | No | |
toolsdroneclip |
No | No | No | N/A | N/A | No | No | No |
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
,
, ![]()
,
, etc).
| Texture | 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 |
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 |
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 |
No | No | Yes | Yes | Yes | Yes | Yes | Yes (No Marks) |
(in all games since Casts light if there is a light_environment entity in the map. No effect if used in the same PVS as the toolsskybox tool texture. |
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".)
|
toolsfogvolume |
Yes | No | No | No | No | No | No | No | (in all games since Used in conjunction with multiple env_fog_controllers to change fog colours and densities in a level. |
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.
| Texture | 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 |
|---|---|---|---|---|---|---|---|---|---|
toolsblockbomb |
No | No | Yes | Yes | Yes | Yes | Yes | Yes | |
climb |
No | No | No | No | Yes | Yes | Yes | No | 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 |
Visible to Infected | No | No | No | Yes | Yes | Yes | No | 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. |
climb_versus |
Visible to Infected | No | No | No | Yes | Yes | Yes | No | |
hulkwall |
Visible to Infected | Yes | Yes | Yes | Yes | Yes | Yes | Yes | 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 |
Visible to Infected | Yes | Yes | Yes | Yes | Yes | Yes | Yes | 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. |
../effects/tankwall |
Visible to Infected | Yes | Yes | Yes | Yes | Yes | Yes | Yes | The texture itself has no special abilities other than being invisible to survivors. See This page for further information. |
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.
$alphatest. |
toolsinvisibledisplacement |
No | No | No | No | Yes | Yes | Yes | Depends on game | (only in Light is not blocked by this texture, except in 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. |
../effects/clear |
Fully Translucent | Depends on use | Depends on use | N/A | Yes | Yes | Yes | Depends on use | Officially used like invisibledisplacement for displacement clipping. |
invismetal |
No | No | Yes | No | Yes | Yes | Yes | No | Creates metal sparks when shot, but bullets pass through. %CompileDetail 1 to prevent it from cutting visleaves, which makes it much more useful. Alternatively, tie it to a func_detail or other entity. |
| 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 |
Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Used with func_brush to make it non-solid and fade away when approached. |
wrongway |
Yes (in Only to Infected (in |
No | Yes | No | Yes | Yes | Yes | Yes (No Marks) |
|
wrongway_timer |
Doesn't work correctly | No | Yes | No | Yes | Yes | Yes | Yes | PlayerProximity material proxy.
|






























