Half-Life 2 Shader Fallbacks
Jump to navigation
Jump to search
Note:These DirectX shader fallbacks have been removed and replaced by the shader and effect detail systems since
Left 4 Dead. Furthermore,
Source 2013 also no longer support anything below DirectX 8, so it would be unnecessary to create shader fallbacks below DX8.
This is list of the shader fallbacks that shipped with Source 2004 to
Source 2013 (which includes Half-Life 2). See Material optimization and DirectX Versions for more details.



LightmappedGeneric
LightmappedGeneric_HDR_DX9
- DX9 with HDR
LightmappedGeneric_DX9
- DX9
LightmappedGeneric_DX8
- DX8.0, DX8.1
LightmappedGeneric_NoBump_DX8
- DX8.0, DX8.1, but only used when
mat_reducefillrate 1
is set (usually by dxsupport.cfg). Note that this fallback doesn't actually cause the shader code to do anything different, it's only there to allow a material to specify different parameters. LightmappedGeneric_DX6
- DX6, DX7
VertexLitGeneric
VertexLitGeneric_HDR_DX9
- DX9 with HDR
VertexLitGeneric_DX9
- DX9
VertexLitGeneric_DX8
- DX8.0, DX8.1
VertexLitGeneric_DX7
- DX7
VertexLitGeneric_DX6
- DX6
UnlitGeneric
UnlitGeneric_DX9
- DX9
UnlitGeneric_DX8
- DX8.0, DX8.1
UnlitGeneric_DX6
- DX6, DX7
Refract
Refract_DX90
- DX9
Refract_DX80
- DX8.0, DX8.1
Refract_DX60
- DX6, DX7: refraction isn't supported under DX6 and DX7, this fallback shader is only defined to allow you to use the
$fallbackmaterial
feature to cause the material system to use a different material under DX6 and DX7. UnlitGeneric_DX6
- DX6, DX7: If you neglect to define a fallback shader, unlit generic is used.
ShatteredGlass
ShatteredGlass
- DX9
ShatteredGlass_DX8
- DX8.0, DX8.1
ShatteredGlass_DX7
- DX7
Wireframe
- DX6: Shattered glass isn't supported under DX6.
Water
Water_HDR_DX90
- DX9 with HDR
Water_DX90
- DX9
Water_DX81
- DX8.1
Water_DX80
- DX8.0
Water_DX60
- DX7/DX6: this fallback shader is only defined to allow you to use the
$fallbackmaterial
feature to cause the material system to use a different material under DX6 and DX7. LightmappedGeneric_DX6
- DX7/DX6: This is used if you neglect to define a fallback shader.
WorldTwoTextureBlend
WorldTwoTextureBlend
- DX9
WorldTwoTextureBlend_DX8
- DX8.0, DX8.1
WorldTwoTextureBlend_DX6
- DX6, DX7
WorldVertexTransition
WorldVertexTransition_DX9
- DX9
WorldVertexTransition_DX8
- DX8.0, DX8.1
WorldVertexTransition_DX6
- DX6, DX7
WorldVertexAlpha
WorldVertexAlpha
- DX9
WorldVertexAlpha_DX8
- DX8.0, DX8.1: Note this shader has no fallbacks to DX7 or below.
Cable
Cable
- DX8.0, DX8.1, DX9
UnlitGeneric_DX6
- DX6, DX7
Eyes
Eyes
- DX9
Eyes_dx8
- DX8.0, DX8.1
Eyes_dx6
- DX6, DX7
EyeRefract
EyeRefract
- DX9
Eyes_dx8
- DX8.0, DX8.1
Eyes_dx6
- DX6, DX7
Modulate
Modulate
- DX8.0, DX8.1, DX9
Modulate_DX6
- DX6, DX7
MonitorScreen
MonitorScreen
- DX8.0, DX8.1, DX9
LightmappedGeneric_DX6
- DX6, DX7
Predator
Predator_DX80
- DX8.0, DX8.1, DX9
Predator_DX60
- DX6, DX7: this fallback shader is only defined to allow you to use the
$fallbackmaterial
feature to cause the material system to use a different material under DX6 and DX7. UnlitGeneric_DX6
- DX6, DX7: This is used if you neglect to define a fallback shader.
Sprite
Sprite_DX8
- DX8.0, DX8.1, DX9
Sprite_DX6
- DX6, DX7
Teeth
Teeth
- DX9
Teeth_DX8
- DX8.0, DX8.1
Teeth_DX6
- DX6, DX7
UnlitTwoTexture
UnlitTwoTexture
- DX8.0, DX8.1, DX9
UnlitTwoTexture_DX6
- DX6, DX7
VortWarp
VortWarp
- DX9
VortWarp_DX8
- DX8.0, DX8.1
VortWarp_DX7
- DX7
VertexLitGeneric_DX6
- DX6
WriteZ
WriteZ
- DX8.0, DX8.1, DX9
WriteZ_DX6
- DX6, DX7
WindowImposter
WindowImposter_DX80
- DX8.0, DX8.1, DX9
WindowImposter_DX60
- DX6, DX7: this fallback shader is only defined to allow you to use the
$fallbackmaterial
feature to cause the material system to use a different material under DX6 and DX7. UnlitGeneric_DX6
- DX6, DX7: This is used if you neglect to define a fallback shader