aboutsummaryrefslogtreecommitdiff
path: root/mp/src/public/materialsystem/ishadersystem_declarations.h
diff options
context:
space:
mode:
authorJohn Schoenick <[email protected]>2015-09-09 18:35:41 -0700
committerJohn Schoenick <[email protected]>2015-09-09 18:35:41 -0700
commit0d8dceea4310fde5706b3ce1c70609d72a38efdf (patch)
treec831ef32c2c801a5c5a80401736b52c7b5a528ec /mp/src/public/materialsystem/ishadersystem_declarations.h
parentUpdated the SDK with the latest code from the TF and HL2 branches. (diff)
downloadsource-sdk-2013-master.tar.xz
source-sdk-2013-master.zip
Updated the SDK with the latest code from the TF and HL2 branches.HEADmaster
Diffstat (limited to 'mp/src/public/materialsystem/ishadersystem_declarations.h')
-rw-r--r--mp/src/public/materialsystem/ishadersystem_declarations.h131
1 files changed, 131 insertions, 0 deletions
diff --git a/mp/src/public/materialsystem/ishadersystem_declarations.h b/mp/src/public/materialsystem/ishadersystem_declarations.h
new file mode 100644
index 00000000..3c54edca
--- /dev/null
+++ b/mp/src/public/materialsystem/ishadersystem_declarations.h
@@ -0,0 +1,131 @@
+//===== Copyright � Valve Corporation, All rights reserved. ======//
+#ifndef ISHADER_DECLARATIONS_HDR
+#define ISHADER_DECLARATIONS_HDR
+
+//-----------------------------------------------------------------------------
+// Standard vertex shader constants
+//-----------------------------------------------------------------------------
+enum
+{
+ // Standard vertex shader constants
+ VERTEX_SHADER_MATH_CONSTANTS0 = 0,
+ VERTEX_SHADER_MATH_CONSTANTS1 = 1,
+ VERTEX_SHADER_CAMERA_POS = 2,
+ VERTEX_SHADER_FLEXSCALE = 3, // DX9 only
+ VERTEX_SHADER_LIGHT_INDEX = 3, // DX8 only
+ VERTEX_SHADER_MODELVIEWPROJ = 4,
+ VERTEX_SHADER_VIEWPROJ = 8,
+ VERTEX_SHADER_MODELVIEWPROJ_THIRD_ROW = 12,
+ VERTEX_SHADER_VIEWPROJ_THIRD_ROW = 13,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_10 = 14,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_11 = 15,
+ VERTEX_SHADER_FOG_PARAMS = 16,
+ VERTEX_SHADER_VIEWMODEL = 17,
+ VERTEX_SHADER_AMBIENT_LIGHT = 21,
+ VERTEX_SHADER_LIGHTS = 27,
+ VERTEX_SHADER_LIGHT0_POSITION = 29,
+ VERTEX_SHADER_MODULATION_COLOR = 47,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_0 = 48,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_1 = 49,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_2 = 50,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_3 = 51,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_4 = 52,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_5 = 53,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_6 = 54,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_7 = 55,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_8 = 56,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_9 = 57,
+ VERTEX_SHADER_MODEL = 58,
+ //
+ // We reserve up through 216 for the 53 bones supported on DX9
+ //
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_13 = 217,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_14 = 218,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_15 = 219,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_16 = 220,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_17 = 221,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_18 = 222,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_19 = 223,
+ VERTEX_SHADER_SHADER_SPECIFIC_CONST_12 = 224,
+
+ // 226 ClipPlane0 |------ OpenGL will jam clip planes into these two
+ // 227 ClipPlane1 |
+
+
+ VERTEX_SHADER_FLEX_WEIGHTS = 1024,
+ VERTEX_SHADER_MAX_FLEX_WEIGHT_COUNT = 512,
+};
+
+//-----------------------------------------------------------------------------
+// forward declarations
+//-----------------------------------------------------------------------------
+class IMaterialVar;
+class IShaderShadow;
+class IShaderDynamicAPI;
+class IShaderInit;
+class CBasePerMaterialContextData;
+
+
+//-----------------------------------------------------------------------------
+// Shader flags
+//-----------------------------------------------------------------------------
+enum ShaderFlags_t
+{
+ SHADER_NOT_EDITABLE = 0x1
+};
+
+
+//-----------------------------------------------------------------------------
+// Shader parameter flags
+//-----------------------------------------------------------------------------
+enum ShaderParamFlags_t
+{
+ SHADER_PARAM_NOT_EDITABLE = 0x1
+};
+
+
+
+//-----------------------------------------------------------------------------
+// Standard vertex shader constants
+//-----------------------------------------------------------------------------
+enum
+{
+ // Standard vertex shader constants
+ VERTEX_SHADER_LIGHT_ENABLE_BOOL_CONST = 0,
+ VERTEX_SHADER_LIGHT_ENABLE_BOOL_CONST_COUNT = 4,
+
+ VERTEX_SHADER_SHADER_SPECIFIC_BOOL_CONST_0 = 4,
+ VERTEX_SHADER_SHADER_SPECIFIC_BOOL_CONST_1 = 5,
+ VERTEX_SHADER_SHADER_SPECIFIC_BOOL_CONST_2 = 6,
+ VERTEX_SHADER_SHADER_SPECIFIC_BOOL_CONST_3 = 7,
+ VERTEX_SHADER_SHADER_SPECIFIC_BOOL_CONST_4 = 8,
+ VERTEX_SHADER_SHADER_SPECIFIC_BOOL_CONST_5 = 9,
+ VERTEX_SHADER_SHADER_SPECIFIC_BOOL_CONST_6 = 10,
+ VERTEX_SHADER_SHADER_SPECIFIC_BOOL_CONST_7 = 11,
+};
+
+
+//-----------------------------------------------------------------------------
+// Shader dictionaries defined in DLLs
+//-----------------------------------------------------------------------------
+enum PrecompiledShaderType_t
+{
+ PRECOMPILED_VERTEX_SHADER = 0,
+ PRECOMPILED_PIXEL_SHADER,
+
+ PRECOMPILED_SHADER_TYPE_COUNT,
+};
+
+
+//-----------------------------------------------------------------------------
+// Flags field of PrecompiledShader_t
+//-----------------------------------------------------------------------------
+enum
+{
+ // runtime flags
+ SHADER_IS_ASM = 0x1,
+ SHADER_FAILED_LOAD = 0x2,
+};
+
+
+#endif \ No newline at end of file