Material Flags
		
		
		
		
		
		Jump to navigation
		Jump to search
		
		
	
Material $flags and $flags2 parameters control how the material is rendered. $flag can be changed in real-time to allow changes in rendering, but $flags2 is read-only and assists the engine or other code in using the material correctly. Enumerations found in 
public/materialsystem/imaterial.h
The flags can also be set via the .vmt Example:
#Sets the MATERIAL_VAR_VERTEXCOLOR and MATERIAL_VAR_VERTEXALPHA flag
UnlitGeneric
{
$basetexture brick/brickwall003a
$vertexcolor 1
$vertexalpha 1
}
$flags
$flags can contain the following flags:
| Flag | Hex Value | Dec Value | Comment | 
| MATERIAL_VAR_DEBUG | 0x0001 | 1 | $debug | 
| MATERIAL_VAR_NO_DEBUG_OVERRIDE | 0x0002 | 2 | $no_fullbright | 
| MATERIAL_VAR_NO_DRAW | 0x0004 | 4 | $no_draw | 
| MATERIAL_VAR_USE_IN_FILLRATE_MODE | 0x0008 | 8 | $use_in_fillrate_mode | 
| MATERIAL_VAR_VERTEXCOLOR | 0x0010 | 16 | $vertexcolor | 
| MATERIAL_VAR_VERTEXALPHA | 0x0020 | 32 | $vertexalpha | 
| MATERIAL_VAR_SELFILLUM | 0x0040 | 64 | $selfillum | 
| MATERIAL_VAR_ADDITIVE | 0x0080 | 128 | $additive | 
| MATERIAL_VAR_ALPHATEST | 0x0100 | 256 | $alphatest | 
| MATERIAL_VAR_MULTIPASS | 0x0200 | 512 | $multipass | 
| MATERIAL_VAR_ZNEARER | 0x0400 | 1024 | $znearer | 
| MATERIAL_VAR_MODEL | 0x0800 | 2048 | $model | 
| MATERIAL_VAR_FLAT | 0x1000 | 4096 | $flat | 
| MATERIAL_VAR_NOCULL | 0x2000 | 8192 | $nocull | 
| MATERIAL_VAR_NOFOG | 0x4000 | 16384 | $nofog | 
| MATERIAL_VAR_IGNOREZ | 0x8000 | 32768 | $ignorez | 
| MATERIAL_VAR_DECAL | 0x10000 | 65536 | $decal | 
| MATERIAL_VAR_ENVMAPSPHERE | 0x20000 | 131072 | $envmapsphere | 
| MATERIAL_VAR_NOALPHAMOD | 0x40000 | 262144 | $noalphamod | 
| MATERIAL_VAR_ENVMAPCAMERASPACE | 0x80000 | 524288 | $envmapcameraspace | 
| MATERIAL_VAR_BASEALPHAENVMAPMASK | 0x100000 | 1048576 | $basealphaenvmapmask | 
| MATERIAL_VAR_TRANSLUCENT | 0x200000 | 2097152 | $translucent | 
| MATERIAL_VAR_NORMALMAPALPHAENVMAPMASK | 0x400000 | 4194304 | $normalmapalphaenvmapmask | 
| MATERIAL_VAR_NEEDS_SOFTWARE_SKINNING | 0x800000 | 8388608 | $softwareskin | 
| MATERIAL_VAR_OPAQUETEXTURE | 0x1000000 | 16777216 | $opaquetexture | 
| MATERIAL_VAR_ENVMAPMODE | 0x2000000 | 33554432 | $envmapmode | 
| MATERIAL_VAR_SUPPRESS_DECALS | 0x4000000 | 67108864 | $nodecal | 
| MATERIAL_VAR_HALFLAMBERT | 0x8000000 | 134217728 | $halflambert | 
| MATERIAL_VAR_WIREFRAME | 0x10000000 | 268435456 | $wireframe | 
| MATERIAL_VAR_ALLOWALPHATOCOVERAGE | 0x20000000 | 536870912 | $allowalphatocoverage | 
| MATERIAL_VAR_IGNORE_ALPHA_MODULATION | 0x40000000 | 1073741824 | 
$flags2
$flags2 can contain the following flags:
| Flag | Dec Value | Comment | 
| MATERIAL_VAR2_LIGHTING_UNLIT | 0 | |
| MATERIAL_VAR2_LIGHTING_VERTEX_LIT | 1 | |
| MATERIAL_VAR2_LIGHTING_LIGHTMAP0 | 2 | |
| MATERIAL_VAR2_LIGHTING_BUMPED_LIGHTMAP | 4 | |
| MATERIAL_VAR2_LIGHTING_MASK | 7 | Sum of 3 above | 
| MATERIAL_VAR2_DIFFUSE_BUMPMAPPED_MODEL | 8 | |
| MATERIAL_VAR2_USES_ENV_CUBEMAP | 16 | |
| MATERIAL_VAR2_NEEDS_TANGENT_SPACES | 32 | |
| MATERIAL_VAR2_NEEDS_SOFTWARE_LIGHTING | 64 | |
| MATERIAL_VAR2_BLEND_WITH_LIGHTMAP_ALPHA | 128 | |
| MATERIAL_VAR2_NEEDS_BAKED_LIGHTING_SNAPSHOTS | 256 | |
| MATERIAL_VAR2_USE_FLASHLIGHT | 512 | |
| MATERIAL_VAR2_USE_FIXED_FUNCTION_BAKED_LIGHTING | 1024 | |
| MATERIAL_VAR2_NEEDS_FIXED_FUNCTION_FLASHLIGHT | 2048 | |
| MATERIAL_VAR2_USE_EDITOR | 4096 | |
| MATERIAL_VAR2_NEEDS_POWER_OF_TWO_FRAME_BUFFER_TEXTURE | 8192 | |
| MATERIAL_VAR2_NEEDS_FULL_FRAME_BUFFER_TEXTURE | 16384 | |
| MATERIAL_VAR2_IS_SPRITECARD | 32768 | |
| MATERIAL_VAR2_USES_VERTEXID | 65536 | |
| MATERIAL_VAR2_SUPPORTS_HW_SKINNING | 131072 | |
| MATERIAL_VAR2_SUPPORTS_FLASHLIGHT | 262144 |