wined3d: Add preliminary support for constant boolean and integer registers in GLSL.
- Separate the declaration phase of the shader string generator into
the arb and glsl specific files.
- Add declarations and recognition for application-sent constant
integers and booleans (locally defined ones will follow).
- Standardize capitilization of pixel/vertex specific variable names.
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index 10accc6..eee7fc3 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -1255,6 +1255,8 @@
#define MAX_REG_OUTPUT 12
#define MAX_ATTRIBS 16
#define MAX_CONST_F 256
+#define MAX_CONST_I 16
+#define MAX_CONST_B 16
typedef struct shader_reg_maps {
@@ -1266,8 +1268,9 @@
char attributes[MAX_ATTRIBS]; /* vertex */
char constantsF[MAX_CONST_F]; /* pixel, vertex */
- /* TODO: Integer and bool constants */
-
+ char constantsI[MAX_CONST_I]; /* pixel & vertex >= 2.0 */
+ char constantsB[MAX_CONST_B]; /* pixel & vertex >= 2.0 */
+
/* Semantics maps (semantic -> reg_token)
* Use 0 as default (bit 31 is always 1 on a valid token) */
DWORD* semantics_in; /* vertex, pixel */