summaryrefslogtreecommitdiff
path: root/src/mesa/main/mtypes.h
diff options
context:
space:
mode:
authorBrian Paul <brian.paul@tungstengraphics.com>2003-04-17 01:48:19 +0000
committerBrian Paul <brian.paul@tungstengraphics.com>2003-04-17 01:48:19 +0000
commit451f31093e950e2c76e8d7dee3cb097049a906b5 (patch)
tree84e85ea7c447acce7e3516c9d4d4dc9fadc8392d /src/mesa/main/mtypes.h
parent2db8041ffed9db2e68c55f18eedeaa95c23ac761 (diff)
checkpoint: more infrastructure for GL_ARB_vertex/fragment_program.
Diffstat (limited to 'src/mesa/main/mtypes.h')
-rw-r--r--src/mesa/main/mtypes.h31
1 files changed, 26 insertions, 5 deletions
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index e2569f05e2..e931f49de8 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -1081,6 +1081,7 @@ struct gl_client_array {
void *Ptr;
GLuint Flags;
GLuint Enabled; /* one of the _NEW_ARRAY_ bits */
+ GLboolean Normalized; /* GL_ARB_vertex_program */
};
@@ -1267,8 +1268,11 @@ struct fragment_program
GLuint InputsRead; /* Bitmask of which input regs are read */
GLuint OutputsWritten; /* Bitmask of which output regs are written to */
GLuint TexturesUsed[MAX_TEXTURE_IMAGE_UNITS]; /* TEXTURE_x_INDEX bitmask */
- GLuint NumParameters;
+ GLuint NumAluInstructions; /* GL_ARB_fragment_program */
+ GLuint NumTexInstructions;
+ GLuint NumTexIndirections;
struct program_parameter *Parameters; /* array [NumParameters] */
+ GLuint NumParameters;
};
@@ -1282,7 +1286,7 @@ struct program_state {
/*
- * State for GL_NV_vertex_program
+ * State for GL_ARB/NV_vertex_program
*/
struct vertex_program_state
{
@@ -1298,7 +1302,7 @@ struct vertex_program_state
/*
- * State for GL_NV_fragment_program
+ * State for GL_ARB/NV_fragment_program
*/
struct fragment_program_state
{
@@ -1327,6 +1331,12 @@ struct gl_shared_state {
/* GL_NV_vertex/_program */
struct _mesa_HashTable *Programs;
+#if FEATURE_ARB_vertex_program
+ struct program *DefaultVertexProgram;
+#endif
+#if FEATURE_ARB_fragment_program
+ struct program *DefaultFragmentProgram;
+#endif
void *DriverData; /* Device driver shared state */
};
@@ -1398,11 +1408,22 @@ struct gl_constants {
GLuint MaxClipPlanes;
GLuint MaxLights;
/* GL_ARB_vertex_program */
- GLuint MaxVertexProgramParams;
GLuint MaxVertexProgramInstructions;
+ GLuint MaxVertexProgramAttribs;
+ GLuint MaxVertexProgramTemps;
+ GLuint MaxVertexProgramLocalParams;
+ GLuint MaxVertexProgramEnvParams;
+ GLuint MaxVertexProgramAddressRegs;
/* GL_ARB_fragment_program */
- GLuint MaxFragmentProgramParams;
GLuint MaxFragmentProgramInstructions;
+ GLuint MaxFragmentProgramAttribs;
+ GLuint MaxFragmentProgramTemps;
+ GLuint MaxFragmentProgramLocalParams;
+ GLuint MaxFragmentProgramEnvParams;
+ GLuint MaxFragmentProgramAddressRegs;
+ GLuint MaxFragmentProgramAluInstructions;
+ GLuint MaxFragmentProgramTexInstructions;
+ GLuint MaxFragmentProgramTexIndirections;
};