This article's documentation is for the "GoldSrc" engine. Click here for more information.

Tool textures (GoldSrc)

From Valve Developer Community
Jump to navigation Jump to search
English (en)Translate (Translate)

Stub

This article or section is a stub. You can help by expanding it.

Tip.pngTip:Most mappers should use ZHLT.WAD, as it contains all necessary tool textures used by ZHLT, VHLT, and derivatives.
Icon-Important.pngImportant:Most of the tool textures should not be mixed with regular textures, unless you know exactly what you're doing. Main exceptions to this rule are NULL, NOCLIP, and SOLIDHINT.
Note.pngNote:Other combinations are possible, but should be used with caution to avoid unexpected results. For example, texturing a regular brush CLIP face will allow bullets to be shot through the brush, while still preventing the brush from being walked through.
Additionally, tool textures should not be mixed with other tool textures. Main exceptions to this rule are hint with skip, and BLACK_HIDDEN with skip.

HALFLIFE.WAD

Image Name Usage / Notes
HalflifeWad-curlyBLUE.png {BLUE An invisible brush face if attached to func_wall or similar brush entity with rendermode solid.
Warning.pngWarning:Faces using this texture are still have lightmap a created for them, despite not being noticeable. Use zhlt_striprad to avoid wasting allocblock.
HalflifeWad-curlyINVISIBLE.png {INVISIBLE Functions same as {BLUE.
HalflifeWad-AAATRIGGER.png AAATRIGGER Used for trigger brush entities.
Note.pngNote:The version of this texture found in XENO.WAD uses a cropped image of Gabe Newell's face instead.
HalflifeWad-BLACK.png BLACK A plain black texture for unlit areas, such as the bottom of deep pits.
Warning.pngWarning:Faces using this texture are still have lightmap a created for them, despite not being noticeable. Use zhlt_striprad (if part of brush entity) or increase texture scale to 4.0 to avoid wasting allocblock.
Tip.pngTip:If the map does not have a skybox, it sometimes is also possible (depending upon map layout) to use the SKY texture and set BLACK in the map properties for the sky texture, saving allocblock.
HalflifeWad-CLIP.png CLIP See Clip texture
HalflifeWad-ORIGIN.png ORIGIN Treated as the origin point for rotating entities, such as func_door_rotating.
Warning.pngWarning:If a brush with this texture is not tied to an entity, an error will be listed during compile.
Note.pngNote:If a brush is tied to an entity that requires an origin brush, and the origin brush does not exist, that brush will be placed on the 0 0 0 coordinate. To fix this, simply add an origin to the brush and tie the entire brushwork, origin included, to the brush entity of your choice.
HalflifeWad-SKY.png SKY Used for displaying the skybox.
Icon-Bug.pngBug:VHLT expects the sky tool texture to be lowercase and will not compile skies correctly if the tool texture does not fit these critera.  [todo tested in?]
HalflifeWad-TRANSLUCENT.png TRANSLUCENT Blocks VIS, but not the player.
Note.pngNote:Mirrors the brush faces inside out (more precisely, it renders the backface the same way func_water does). It is different from CONTENTWATER in the sense that translucent cannot be tied to any entity whatsoever and cannot use more than 1 texture on all of its faces without the compiler logging an error and stopping the process. Additionally, it is visible in the world, but not solid, whereas CONTENTWATER is invisible. Walking into a brush with such texture will cause a HOM effect. Finally, translucent will block VIS.
Tip.pngTip:Any texture can be given this effect. Prepend the texture name with @ (e.g @curtains).
HalflifeWad-WHITE.png WHITE Mainly used as texture light (texture that casts lighting).

HLBASICS.WAD

HLBASICS.WAD is found in Counter-Strike: Condition Zero Counter-Strike: Condition Zero and Day of Defeat Day of Defeat, and is used to avoid needing to load HALFLIFE.WAD for maps that don't use base Half-Life textures. [Clarify] Some of these are also in Condition Zero Deleted Scenes Condition Zero Deleted Scenes, via RITUAL_STANDARD.WAD, as well as in Counter-Strike: Condition Zero Counter-Strike: Condition Zero, via CZRITUAL_STANDARD.WAD.

Image Name Usage / Notes
CZERO+DOD hlbasics-curlyblue.png {blue An invisible brush face if attached to func_wall or similar brush entity with rendermode solid.
Warning.pngWarning:Faces using this texture are still have lightmap a created for them, despite not being noticeable. Use zhlt_striprad to avoid wasting allocblock.
CZERO+DOD hlbasics-aaa 1.png aaa_1
CZERO+DOD hlbasics-aaa 2.png aaa_2
CZERO+DOD hlbasics-aaa 3.png aaa_3
CZERO+DOD hlbasics-aaa hurt.png aaa_hurt Used for mapping organization purposes. Useful if the map is shared between multiple level designers. Designed to be used with trigger_hurt.
Warning.pngWarning:Using any texture other than AAATRIGGER or NULL on a trigger entity will result in lightmaps being created for the entity! Use VHLT's -nullfile flag to automatically retexture applicable entites to NULL in HLCSG[How?], or add the zhlt_invisible KV and set it to 1 (this can be set as default for applicable FGD entries).
CZERO+DOD hlbasics-aaa multi.png aaa_multi Used for mapping organization purposes. Useful if the map is shared between multiple level designers. Designed to be used with trigger_multiple.
CZERO+DOD hlbasics-aaa once.png aaa_once Used for mapping organization purposes. Useful if the map is shared between multiple level designers. Designed to be used with trigger_once.
CZERO+DOD hlbasics-aaa push.png aaa_push Used for mapping organization purposes. Useful if the map is shared between multiple level designers. Designed to be used with trigger_push.
CZERO+DOD hlbasics-aaa push2.png aaa_push2
CZERO+DOD hlbasics-AAATRIGGER.png AAATRIGGER Used for trigger brush entities.
CZERO+DOD hlbasics-clip.png clip See Clip texture.
CZERO+DOD hlbasics-cr matleaf.png cr_matleaf Day of Defeat Makes leaf sounds when walked on, if present in 🖿sound/materials.txt. Tie to a func_wall with rendermode set to solid and renderamt set to 0 (aka invisible) to use as a clip brush and shadow caster for leafy props.
Warning.pngWarning:Invisible faces are still have lightmap a created for them, despite not being noticeable. Use zhlt_striprad to avoid wasting allocblock.
CZERO+DOD hlbasics-cr matmetal.png cr_matmetal Counter-Strike: Condition ZeroCondition Zero Deleted ScenesDay of Defeat Makes metal sounds when walked on, if present in 🖿sound/materials.txt. Tie to a func_wall with rendermode set to solid and renderamt set to 0 (aka invisible) to use as a clip brush and shadow caster for metalic props.
Warning.pngWarning:Invisible faces are still have lightmap a created for them, despite not being noticeable. Use zhlt_striprad to avoid wasting allocblock.
CZERO+DOD hlbasics-hint.png hint
CZERO+DOD hlbasics-ORIGIN.png ORIGIN Treated as the origin point for rotating entities, such as func_door_rotating.
Warning.pngWarning:If a brush with this texture is not tied to an entity, an error will be listed during compile.
Note.pngNote:If you tie a brush to an entity that requires an origin brush, and the origin does not exist, that brush will be placed on the 0 0 0 coordinate. To fix this, simply add an origin to the brush and tie the entire brushwork, origin included, to the brush entity of your choice.
CZERO+DOD hlbasics-SKIP.png SKIP
CZERO+DOD hlbasics-sky.png sky Used for displaying the skybox.

Condition Zero only

Image Name Usage / Notes
CZERO hlbasics-bark.png bark No special purpose; use cr_matbark instead.
CZERO hlbasics-black.png black A plain black texture for unlit areas, such as the bottom of deep pits.
Warning.pngWarning:Faces using this texture are still have lightmap a created for them, despite not being noticeable. Use zhlt_striprad to avoid wasting allocblock.
CZERO hlbasics-cr matbark.png cr_matbark Counter-Strike: Condition Zero Makes wood sounds when walked on, if present in 🖿sound/materials.txt. Tie to a func_wall with rendermode set to solid and renderamt set to 0 (aka invisible) to use as a clip brush and shadow caster for wooden props.
Warning.pngWarning:Invisible faces are still have lightmap a created for them, despite not being noticeable. Use zhlt_striprad to avoid wasting allocblock.
CZERO hlbasics-cr matcard.png cr_matcard Unused, likely intended for non-existent "cardboard" material.
CZERO hlbasics-cull.png cull No purpose; likely used by unreleased in-house compilers.
CZERO hlbasics-leaf.png leaf
CZERO hlbasics-loc.png loc No purpose; likely used by unreleased in-house compilers.
CZERO hlbasics-skycull.png skycull Functions like sky.

In Condition Zero Deleted Scenes Condition Zero Deleted Scenes, any exterior faces of skybox brushes must be textured with skycull for env_rain and env_snow to work properly.

Day of Defeat only

Image Name Usage / Notes
DOD hlbasics-cr mathvymetal.png cr_mathvymetal Day of Defeat Identical to CR_MATMETAL.
Icon-Bug.pngBug:Likely intended to be used for "Heavy Metal" material, available in DoD's 🖿sound/materials.txt, but not used by this texture. Use IR_PIPEM8 instead.  [todo tested in?]
DOD hlbasics-cr matsand.png cr_matsand Day of Defeat Makes sand sounds when walked on, if present in 🖿sound/materials.txt. Tie to a func_wall with rendermode set to solid and renderamt set to 0 (aka invisible) to use as a clip brush and shadow caster for sandy props, such as sandbags.
Warning.pngWarning:Invisible faces still have lightmap a created for them, despite not being noticeable. Use zhlt_striprad to avoid wasting allocblock.
DOD hlbasics-cr matwood.png cr_matwood Day of Defeat Makes wood sounds when walked on, if present in 🖿sound/materials.txt. Tie to a func_wall with rendermode set to solid and renderamt set to 0 (aka invisible) to use as a clip brush and shadow caster for wooden props.
Warning.pngWarning:Invisible faces still have lightmap a created for them, despite not being noticeable. Use zhlt_striprad to avoid wasting allocblock.
DOD hlbasics-NULL.png NULL Identical to ZHLT's NULL texture.

ZHLT.WAD

ZHLT.WAD is used for the additional features provided by the ZHLT and VHLT compilers. It does not come with any vanilla first-party GoldSrc GoldSrc title, but instead comes with ZHLT/VHLT.

Image Name Usage / Notes
HalflifeWad-AAATRIGGER.png AAATRIGGER Used for trigger brush entities.
ZHLTwad-BEVEL.png BEVEL Fixes clipping errors caused by uneven terrain or brushes. This texture is experimental and is essentially replaced by the CSG parameter -cliptype precise.
Icon-Important.pngImportant:BEVEL is not an equivalent of NULL and can cause more clipnodes generation than NULL can! To quote Vluzacn: Bevel changes the clipnode of a brush in such a way that any player approaching the brush will not be blocked by the brush until his origin reached the plane that the BEVEL face lies on. Usage of BEVEL is not required in 99% of cases.
HalflifeWad-BLACK.png Black_HIDDEN Identical to NULL, but has a lightmap. This texture is used to correct lightmap errors. Models get their lighting information from the lightmaps of world geometry directly below them. However, lightmaps from brush entities (like func_wall) are ignored, thereby causing the model to update its lighting information multiple times when transitioning from world geometry to brush entities (therefore taking the lightmap from world geometry below that brush entity) and vice versa (see the two zombies in Unforeseen Consequences crossing a set of grates on the floor). Additionally, light_environment overrides lightmaps completely, meaning that models will not update their lighting information properly between areas. While this is fine for models that stay within one lightmap, like an Osprey, for every other models that transition between light and dark areas, their lighting information doesn't get updated. BLACK_HIDDEN can fix lighting on those models when placed strategically, thereby eliminating incorrect updates of lighting information of models.
Icon-Important.pngImportant:Proper usage of this texture is important. Set this texture to only the top face of the brush and all the other sides to skip. Tie this to a func_detail and set Passable to Yes.
Icon-Bug.pngBug:This texture is rendered in Sven Co-op Sven Co-op.  [todo tested in?]
Tip.pngTip:Any texture with the suffix _HIDDEN will behave in this manner.
ZHLTwad-BOUNDINGBOX.png BOUNDINGBOX Creates a bounding box around an object, thereby replacing an existing one, or creating one that doesn't exist.
HalflifeWad-CLIP.png CLIP See Clip texture.
Tip.pngTip:In ZHLT, VHLT, and derivatives, texturing the face of a brush with CLIP will result in allowing bullets to pass through, while still blocking everything else. This is effectively equivalent to a func_detail with zhlt_noclip set to 1 and a clip brush surrounding the brush.
ZHLTwad-CLIPBEVEL.png CLIPBEVEL Acts like BEVEL but for clipnodes.
ZHLTwad-CLIPBEVELBRUSH.png CLIPBEVELBRUSH Acts like CLIPBEVEL, but affects every single face.
ZHLTwad-CLIPHULL1.png CLIPHULL1 Like CLIP, but only affects standing-up players and regular-sized NPCs.
ZHLTwad-CLIPHULL2.png CLIPHULL2 Like CLIP, but only affects large entities (including bullsquids).
Use to create collision for these entities when using -nohull2.
ZHLTwad-CLIPHULL3.png CLIPHULL3 Like CLIP, but only affects crouching players.
ZHLTwad-CONTENTEMPTY.png CONTENTEMPTY Nodraw texture which forces a brush's contents to Empty.

Removes collision from a brush and marks it as an empty volume.

ZHLTwad-CONTENTWATER.png CONTENTWATER Nodraw texture which forces a brush's contents to Water.

Disables backface culling on all other faces of the brush. Usually used to simulate volumetric lighting.

ZHLTwad-HINT.png HINT Splits a visleaf. Applied to one or two faces. Used in combination with skip.
ZHLTwad-NOCLIP.png NOCLIP Not drawn in game, and disables hull 1-3 collision for all faces on the brush. May also be titled NULLNOCLIP.

Unlike CONTENTEMPTY, noclip is still solid to pointhull traces, such as hitscan bullets.

DOD hlbasics-NULL.png NULL Not drawn in game, seals leaks, and is skipped by HLRAD. 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.
Note.pngNote:While no lightmap data is generated on NULL faces, NULL brushes still cast shadows, unless tied to a func_wall.
Tip.pngTip:Despite common misconception, it is not necessary to use NULL on faces that don't touch visleaves, as these are automatically removed by HLCSG. This means faces that are outside the map and faces that are flush with another one.
HalflifeWad-ORIGIN.png ORIGIN Treated as the origin point for rotating entities, such as func_door_rotating.
CZERO+DOD hlbasics-SKIP.png SKIP Tells the compiler to completely skip this face.
Icon-Important.pngImportant:It is different from NULL! Skip does not seal the world and is non solid. Null still creates a plane and is solid in the world.
HalflifeWad-SKY.png sky Used for displaying the skybox.
Icon-Bug.pngBug:VHLT expects the sky tool texture to be lowercase and will not compile skies correctly if the tool texture does not fit these critera.  [todo tested in?]
ZHLTwad-SOLIDHINT.png SOLIDHINT SOLIDHINT can be used to fix faces getting split by the visibility engine (can be seen with gl_wireframe 2) due to uneven, rotated or more generally, complex brushwork that is not nicely square. Usually useful on terrain where a lot of vertex manipulation happens. Apply SOLIDHINT to the unseen part of the brush, where NULL would normally go.

Missing ZHLT tool textures

ZHLT supports some additional tool textures that aren't found in ZHLT.WAD or any official WAD file.

Image Name Usage / Notes
N/A !cur_0 Water which acts like a func_pushable with a speed of 2048 units on +X (going east). Always fullbright.
N/A !cur_90 Water which acts like a func_pushable with a speed of 2048 units on +Y (going north). Always fullbright.
N/A !cur_180 Water which acts like a func_pushable with a speed of 2048 units on -X (going west). Always fullbright.
N/A !cur_270 Water which acts like a func_pushable with a speed of 2048 units on -Y (going south). Always fullbright.
N/A !cur_dwn Water which acts like a func_pushable with a speed of 2048 units on -Z (going down). Always fullbright.
N/A !cur_up Water which acts like a func_pushable with a speed of 2048 units on +Z (going up). Always fullbright.
N/A CONTENTSOLID Nodraw texture which forces a brush's contents to Solid.
N/A CONTENTSKY Nodraw texture which forces a brush's contents to Sky.
N/A SPLITFACE Brushes with this texture will subdivide faces they touch. It can be used to eliminate bad lighting caused by opaque entities.
Note.pngNote:The !cur_* textures also work on the original compilers, and can be used as prefixes.

External links