Material Flags: Difference between revisions
Jump to navigation
Jump to search
TeamSpen210 (talk | contribs) (All of the material flags which change properties.) |
No edit summary |
||
Line 1: | Line 1: | ||
Material <code>$flags</code> and <code>$flags2</code> parameters control how the material is rendered. <code>$flag</code> can be changed in real-time to allow changes in rendering, but <code>$flags2</code> is read-only and assists the engine or other code in using the material correctly. | |||
The flags can also be set via the .vmt | |||
Example: | Example: | ||
#Sets the MATERIAL_VAR_VERTEXCOLOR and MATERIAL_VAR_VERTEXALPHA flag | |||
UnlitGeneric | |||
{ | { | ||
$basetexture | $basetexture brick/brickwall003a | ||
$vertexcolor 1 | |||
$vertexalpha 1 | |||
} | } | ||
== | == $flags == | ||
$flags can contain the following flags: | |||
= | {| class=standard-table | ||
| '''Flag''' || '''Value''' || '''Comment''' | |||
|- | |||
| MATERIAL_VAR_DEBUG || 0x0001 || | |||
|- | |||
| MATERIAL_VAR_NO_DEBUG_OVERRIDE || 0x0002 || | |||
|- | |||
| MATERIAL_VAR_NO_DRAW || 0x0004 || | |||
|- | |||
| MATERIAL_VAR_USE_IN_FILLRATE_MODE || 0x0008 || | |||
|- | |||
| MATERIAL_VAR_VERTEXCOLOR || 0x0010 || [[$vertexalpha]] | |||
|- | |||
| MATERIAL_VAR_VERTEXALPHA || 0x0020 || [[$vertexalpha]] | |||
|- | |||
| MATERIAL_VAR_SELFILLUM || 0x0040 || | |||
|- | |||
| MATERIAL_VAR_ADDITIVE || 0x0080 || | |||
|- | |||
| MATERIAL_VAR_ALPHATEST || 0x0100 || | |||
|- | |||
| MATERIAL_VAR_MULTIPASS || 0x0200 || | |||
|- | |||
| MATERIAL_VAR_ZNEARER || 0x0400 || | |||
|- | |||
| MATERIAL_VAR_MODEL || 0x0800 || | |||
|- | |||
| MATERIAL_VAR_FLAT || 0x1000 || | |||
|- | |||
| MATERIAL_VAR_NOCULL || 0x2000 || | |||
|- | |||
| MATERIAL_VAR_NOFOG || 0x4000 || | |||
|- | |||
| MATERIAL_VAR_IGNOREZ || 0x8000 || | |||
|- | |||
| MATERIAL_VAR_DECAL || 0x10000 || | |||
|- | |||
| MATERIAL_VAR_ENVMAPSPHERE || 0x20000 || | |||
|- | |||
| MATERIAL_VAR_NOALPHAMOD || 0x40000 || | |||
|- | |||
| MATERIAL_VAR_ENVMAPCAMERASPACE || 0x80000 || | |||
|- | |||
| MATERIAL_VAR_BASEALPHAENVMAPMASK || 0x100000 || | |||
|- | |||
| MATERIAL_VAR_TRANSLUCENT || 0x200000 || | |||
|- | |||
| MATERIAL_VAR_NORMALMAPALPHAENVMAPMASK || 0x400000 || | |||
|- | |||
| MATERIAL_VAR_NEEDS_SOFTWARE_SKINNING || 0x800000 || | |||
|- | |||
| MATERIAL_VAR_OPAQUETEXTURE || 0x1000000 || | |||
|- | |||
| MATERIAL_VAR_ENVMAPMODE || 0x2000000 || | |||
|- | |||
| MATERIAL_VAR_SUPPRESS_DECALS || 0x4000000 || | |||
|- | |||
| MATERIAL_VAR_HALFLAMBERT || 0x8000000 || | |||
|- | |||
| MATERIAL_VAR_WIREFRAME || 0x10000000 || | |||
|- | |||
| MATERIAL_VAR_ALLOWALPHATOCOVERAGE || 0x20000000 || | |||
|- | |||
| MATERIAL_VAR_IGNORE_ALPHA_MODULATION || 0x40000000 || | |||
|} | |||
== | == $flags2 == | ||
$flags2 can contain the following flags: | |||
= | {| class=standard-table | ||
| '''Flag''' || '''Value''' || '''Comment''' | |||
|- | |||
| MATERIAL_VAR2_LIGHTING_UNLIT || 0x0000 || | |||
|- | |||
| MATERIAL_VAR2_LIGHTING_VERTEX_LIT || 0x0001 || | |||
|- | |||
| MATERIAL_VAR2_LIGHTING_LIGHTMAP0 || 0x0002 || | |||
|- | |||
| MATERIAL_VAR2_LIGHTING_BUMPED_LIGHTMAP || 0x0004 || | |||
|- | |||
| MATERIAL_VAR2_LIGHTING_MASK 0x0001 + 0x0002 + 0x0004 | |||
|- | |||
| MATERIAL_VAR2_DIFFUSE_BUMPMAPPED_MODEL || 0x0008 || | |||
|- | |||
| MATERIAL_VAR2_USES_ENV_CUBEMAP || 0x0010 || | |||
|- | |||
| MATERIAL_VAR2_NEEDS_TANGENT_SPACES || 0x0020 || | |||
|- | |||
| MATERIAL_VAR2_NEEDS_SOFTWARE_LIGHTING || 0x0040 || | |||
|- | |||
| MATERIAL_VAR2_BLEND_WITH_LIGHTMAP_ALPHA || 0x0080 || | |||
|- | |||
| MATERIAL_VAR2_NEEDS_BAKED_LIGHTING_SNAPSHOTS || 0x0100 || | |||
|- | |||
| MATERIAL_VAR2_USE_FLASHLIGHT || 0x0200 || | |||
|- | |||
| MATERIAL_VAR2_USE_FIXED_FUNCTION_BAKED_LIGHTING || 0x0400 || | |||
|- | |||
| MATERIAL_VAR2_NEEDS_FIXED_FUNCTION_FLASHLIGHT || 0x0800 || | |||
|- | |||
| MATERIAL_VAR2_USE_EDITOR || 0x1000 || | |||
|- | |||
| MATERIAL_VAR2_NEEDS_POWER_OF_TWO_FRAME_BUFFER_TEXTURE || 0x2000 || | |||
|- | |||
| MATERIAL_VAR2_NEEDS_FULL_FRAME_BUFFER_TEXTURE || 0x4000 || | |||
|- | |||
| MATERIAL_VAR2_IS_SPRITECARD || 0x8000 || | |||
|- | |||
| MATERIAL_VAR2_USES_VERTEXID || 0x10000 || | |||
|- | |||
| MATERIAL_VAR2_SUPPORTS_HW_SKINNING || 0x20000 || | |||
|- | |||
| MATERIAL_VAR2_SUPPORTS_FLASHLIGHT || 0x40000 || | |||
|} | |||
[[Category:Material System]] | [[Category:Material System]] | ||
[[Category:List of Shader Parameters]] | [[Category:List of Shader Parameters]] |
Revision as of 10:53, 14 May 2018
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.
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 | Value | Comment |
MATERIAL_VAR_DEBUG | 0x0001 | |
MATERIAL_VAR_NO_DEBUG_OVERRIDE | 0x0002 | |
MATERIAL_VAR_NO_DRAW | 0x0004 | |
MATERIAL_VAR_USE_IN_FILLRATE_MODE | 0x0008 | |
MATERIAL_VAR_VERTEXCOLOR | 0x0010 | $vertexalpha |
MATERIAL_VAR_VERTEXALPHA | 0x0020 | $vertexalpha |
MATERIAL_VAR_SELFILLUM | 0x0040 | |
MATERIAL_VAR_ADDITIVE | 0x0080 | |
MATERIAL_VAR_ALPHATEST | 0x0100 | |
MATERIAL_VAR_MULTIPASS | 0x0200 | |
MATERIAL_VAR_ZNEARER | 0x0400 | |
MATERIAL_VAR_MODEL | 0x0800 | |
MATERIAL_VAR_FLAT | 0x1000 | |
MATERIAL_VAR_NOCULL | 0x2000 | |
MATERIAL_VAR_NOFOG | 0x4000 | |
MATERIAL_VAR_IGNOREZ | 0x8000 | |
MATERIAL_VAR_DECAL | 0x10000 | |
MATERIAL_VAR_ENVMAPSPHERE | 0x20000 | |
MATERIAL_VAR_NOALPHAMOD | 0x40000 | |
MATERIAL_VAR_ENVMAPCAMERASPACE | 0x80000 | |
MATERIAL_VAR_BASEALPHAENVMAPMASK | 0x100000 | |
MATERIAL_VAR_TRANSLUCENT | 0x200000 | |
MATERIAL_VAR_NORMALMAPALPHAENVMAPMASK | 0x400000 | |
MATERIAL_VAR_NEEDS_SOFTWARE_SKINNING | 0x800000 | |
MATERIAL_VAR_OPAQUETEXTURE | 0x1000000 | |
MATERIAL_VAR_ENVMAPMODE | 0x2000000 | |
MATERIAL_VAR_SUPPRESS_DECALS | 0x4000000 | |
MATERIAL_VAR_HALFLAMBERT | 0x8000000 | |
MATERIAL_VAR_WIREFRAME | 0x10000000 | |
MATERIAL_VAR_ALLOWALPHATOCOVERAGE | 0x20000000 | |
MATERIAL_VAR_IGNORE_ALPHA_MODULATION | 0x40000000 |
$flags2
$flags2 can contain the following flags:
Flag | Value | Comment |
MATERIAL_VAR2_LIGHTING_UNLIT | 0x0000 | |
MATERIAL_VAR2_LIGHTING_VERTEX_LIT | 0x0001 | |
MATERIAL_VAR2_LIGHTING_LIGHTMAP0 | 0x0002 | |
MATERIAL_VAR2_LIGHTING_BUMPED_LIGHTMAP | 0x0004 | |
MATERIAL_VAR2_LIGHTING_MASK 0x0001 + 0x0002 + 0x0004 | ||
MATERIAL_VAR2_DIFFUSE_BUMPMAPPED_MODEL | 0x0008 | |
MATERIAL_VAR2_USES_ENV_CUBEMAP | 0x0010 | |
MATERIAL_VAR2_NEEDS_TANGENT_SPACES | 0x0020 | |
MATERIAL_VAR2_NEEDS_SOFTWARE_LIGHTING | 0x0040 | |
MATERIAL_VAR2_BLEND_WITH_LIGHTMAP_ALPHA | 0x0080 | |
MATERIAL_VAR2_NEEDS_BAKED_LIGHTING_SNAPSHOTS | 0x0100 | |
MATERIAL_VAR2_USE_FLASHLIGHT | 0x0200 | |
MATERIAL_VAR2_USE_FIXED_FUNCTION_BAKED_LIGHTING | 0x0400 | |
MATERIAL_VAR2_NEEDS_FIXED_FUNCTION_FLASHLIGHT | 0x0800 | |
MATERIAL_VAR2_USE_EDITOR | 0x1000 | |
MATERIAL_VAR2_NEEDS_POWER_OF_TWO_FRAME_BUFFER_TEXTURE | 0x2000 | |
MATERIAL_VAR2_NEEDS_FULL_FRAME_BUFFER_TEXTURE | 0x4000 | |
MATERIAL_VAR2_IS_SPRITECARD | 0x8000 | |
MATERIAL_VAR2_USES_VERTEXID | 0x10000 | |
MATERIAL_VAR2_SUPPORTS_HW_SKINNING | 0x20000 | |
MATERIAL_VAR2_SUPPORTS_FLASHLIGHT | 0x40000 |