The 'paint' that is applied to solids in maps. They are fundamental to level design, just behind the geometry itself. Textures are found in WAD files, which can be browsed from within Hammer and edited using tools like Wally and PAKScape.
Shift+T applies the currently selected texture to the currently selected object(s), while pressing
Shift+A brings up a dialog that gives you more control over texture scaling and alignment.
Consult the
Texture Application tutorial for more information on texture application.
Texture types
There are several types of textures with different properties. Usually it's defined by a prefix or suffix.
- Normal textures are anything not covered by other entries in this list.
!
-prefixed textures are water/liquid textures. These are rendered differently in the game. If the game is running in software more, a special caustic effect is applied. If in GL mode, the surface will be composed of wavy polygons instead of static polygons.
{
-prefixed textures can be either:
- textures with a transparency index such as railings and ladders. The transparent colour is in palette index #255, and by convention is assigned blue. Note that it's the palette index that matter, not the pureness of the blue (or any colour).
- monochromatic decal textures from
decals.wad
. This is monochromatic save for the last palette index #255, which specifies the colour to apply for the whole decal. Use the infodecal
entity to apply decals.
+0
– +9
and +A
– +J
prefixes are 2 related animating sets of textures. For example, applying a +0
-prefixed texture to a face on a func_wall
or func_button
will make it animate through the number set initially, and when triggered would switch to the alphabet set. Usually the alphabet set is composed of only one item, +A
.
-0
– -9
prefix are random tiling textures. If a -0
-prefixed texture is applied to a face, the game engine will apply a random collage of the set when rendering the map. It is randomized every map load.
- Note: random texture rendering is kinda broken in modern GL mode as of 2024, in that it tends to split over face subdivisions rather than applying uniformly.
~
is used by convention to denote textures that emit light.
- In Quake these textures have certain palette ranges that are full-bright, but that property was lost in GoldSource.
SCROLL
prefixes are textures that scroll towards the right. Used in flowing water and conveyor belt textures. The texture must be applied in the correct orientation for it to scroll in that direction. Apply the texture to a func_conveyor
to set the texture's scroll speed.
- Several tool textures are used by the compiler for specific, quasi- or non-textural applications. Some common examples include
AAATRIGGER
, CLIP
, NULL
, ORIGIN
, and SKY
.
_HIDDEN
suffix makes the texture invisible. This is useful to fix model lighting, as these faces retain lighting data. See: Tutorial: models and lighting. This works on some tool textures too, that are otherwise visible. But for most applications, you only ever need black_HIDDEN
.
@
prefix is rarely used. It creates an opaque boundary between spaces that blocks visibility, but no collision. The faces are visible on both outsides and insides of the brush.
Textures and materials
A texture is just one part of the material system in 3D rendering. In GoldSource this material system is used to impart materialistic properties for the textures in question, such as footstep sounds and sounds and decals when hit with a crowbar or bullets. But unlike modern game engines, the material system of GoldSrc consists simply of the
materials.txt file listing the materials of each texture set.
GoldSource vs Source (and more modern engines)
The GoldSource engine's concept of textures are only in the sense of "images applied to a surface," with name affixes and special names dictating special properties. Apart from (or in addition to) the texture types listed above, render properties (such as opacity) are applied using the
render properties of the
brush entity where the texture is applied.
In Source, a surface is instead assigned a
material described in a text-based .vmt files, and that material file in turn has lists its own intrinsic properties e.g. being water or animated, material sounds and decals replacing the system described in the previous section, and associated texture or textures.
Furthermore, a texture in GoldSource is composed of only the colour + shadows baked into one image, while in Source and other more modern engines a material has more information about shininess, bumpiness, etc.