Shader Types and Parameters
From Valve Developer Community
This article is a stub. You can help by adding to it.
Contents |
Shader types
Shaders according to folders
The following list of shaders is partially categorized according to the folders found in the unpacked Source Materials.gcf. This is to eliminate listing many folder/material exclusive shaders, to prevent beginners from being overwhelmed with unnecessary shader names. (See the talk-page of this article for a rationale.)
If you are looking for a single (though currently incomplete) reference list, you can instead find it here.
Note that many folders are not yet categorized. In order to add a new entry, please search each material in the folder for shaders (by manually opening them and checking their contents). It may be very tedious work, but it is the only way to discover the more rare shaders.
Main list
This is a list of common shaders, and shaders not yet categorized according to folder. (Check the folders before adding new shaders. We do not want duplicate entries.)
| Shader Name | Description | Parameter Notes |
|---|---|---|
| Eyeball | ||
| eyes | Used for realistic eyeballs for models. | |
| LightmappedGeneric | The most common texture. A basetexture is multiplied by a lightmap. | Only the $basetexture line is required.
$albedo, $selfillumtint, $detail, $detailframe (dx9), $detailscale, $envmap, $envmapframe, $envmapmask, $envmaskframe, $envmapmasktransform (dx9), $envmapmaskscale (dx8), $envmaptint, $bumpmap, $bumpframe, $bumptransform, $envmapcontrast, $envmapsaturation, $fresnelreflection, $nodiffusebumplighting (dx9), $bumpmap2 (dx9), $bumpmapframe2 (dx9), $frame2 (dx9), $basetexturenoenvmap (dx9), $basetexture2noenvmap (dx9), $detail_alpha_mask_base_texture (dx9) |
| LightmappedGeneric_DX8 | ||
| LightmappedGeneric_DX9 | ||
| LightmappedGeneric_NoBump_DX8 | ||
| Modulate | ||
| Refract | Refracts the light behind it according to a dudvmap and bumpmap. Only works correctly on models. | If used on a model, Set "$model" 1 |
| Refract_DX60 | ||
| Refract_DX80 | ||
| Refract_DX90 | ||
| Teeth | ||
| UnlitGeneric | A basetexture appears at full brightness. | If used on a model, set "$model" 1. |
| UnlitGeneric_DX8 | ||
| UnlitGeneric_DX9 | ||
| UnlitGeneric_HDR_DX9 | ||
| UnlitTwoTexture | Two textures are mixed evenly and appear at full brightness. | |
| VertexLitGeneric | A basetexture with vertex lighting. | $albedo (dx9), $selfillumtint, $detail, $detailframe (dx9), $detailscale, $envmap, $envmapframe, $envmapmask, $envmaptransform (dx9), $envmapmaskscale (dx8), $envmaptint, $bumpmap, $bumpmapframe, $bumptransform, $envmapcontrast, $envmapsaturation |
| VertexLitGeneric_DX8 | ||
| VertexLitGeneric_DX9 | ||
| Water | For fallbacks for this shader, see Shaders in Nature\. | |
| WorldTwoTextureBlend | A partially transparent detail texture is blended on top of the base texture, according to the alpha channel of the detail texture. | $basetexture <texture>, $detail <texture>, $detailscale <float>, $surfaceprop <type>. |
Fully verified folders
These folders are those in which every single VMT file has been searched for shaders (as of 31-01-2008).
- Shaders in cable\
- Shaders in Debug\
- Shaders in Decals\
- Shaders in Dev\
- Shaders in Editor\
- Shaders in Engine\
- Shaders in Glass\
- Shaders in hlmv\
- Shaders in HUD\
- Shaders in Lights\
- Shaders in Nature\
- Shaders in particle\
- Shaders in scripted\
- Shaders in shadertest\
- Shaders in Sprites\
- Shaders in Tools\
- Shaders in VGUI\
Unknown shaders
Many shaders previously listed on this page came from a very old list that lists shaders that isn't used by any current materials in source materials.gcf. It is uncertain if these shaders are working, or how to use them. This is why they are in this separate list.
