From bd1a9dacf6a45e6aa6954eeb490d55ebcc80ace8 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sat, 5 Jan 2002 20:51:12 +0000 Subject: Vertex program checkpoint commit: converted all vertex attributes (color, normal, texcoords, fogcoord, secondary color, etc) to GLfloat[4] datatype. Aliasing of glVertex, glNormal, glColor, glFogCoord, etc. to glVertexAttrib now complete. --- src/mesa/main/mtypes.h | 7 ++++--- src/mesa/main/varray.c | 9 ++++++--- 2 files changed, 10 insertions(+), 6 deletions(-) (limited to 'src/mesa/main') diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index f597c1d..e97ba8c 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -1,4 +1,4 @@ -/* $Id: mtypes.h,v 1.56 2001/12/18 04:06:45 brianp Exp $ */ +/* $Id: mtypes.h,v 1.57 2002/01/05 20:51:12 brianp Exp $ */ /* * Mesa 3-D graphics library @@ -314,11 +314,12 @@ struct gl_colorbuffer_attrib { #define VERT_ATTRIB_TEX5 13 #define VERT_ATTRIB_TEX6 14 #define VERT_ATTRIB_TEX7 15 +#define VERT_ATTRIB_MAX 16 struct gl_current_attrib { /* These values valid only when FLUSH_VERTICES has been called. */ - GLfloat Attrib[8 + MAX_TEXTURE_UNITS][4]; /* Current vertex attributes */ + GLfloat Attrib[VERT_ATTRIB_MAX][4]; /* Current vertex attributes */ /* indexed by VERT_ATTRIB_* */ GLuint Index; /* Current color index */ GLboolean EdgeFlag; /* Current edge flag */ @@ -1132,7 +1133,7 @@ struct gl_evaluators { #define VP_MAX_INSTRUCTIONS 128 -#define VP_NUM_INPUT_REGS 16 +#define VP_NUM_INPUT_REGS VERT_ATTRIB_MAX #define VP_NUM_OUTPUT_REGS 15 #define VP_NUM_TEMP_REGS 12 #define VP_NUM_PROG_REGS 96 diff --git a/src/mesa/main/varray.c b/src/mesa/main/varray.c index 54e471a..31b0b9b 100644 --- a/src/mesa/main/varray.c +++ b/src/mesa/main/varray.c @@ -1,10 +1,10 @@ -/* $Id: varray.c,v 1.39 2001/03/12 00:48:39 gareth Exp $ */ +/* $Id: varray.c,v 1.40 2002/01/05 20:51:12 brianp Exp $ */ /* * Mesa 3-D graphics library - * Version: 3.5 + * Version: 4.1 * - * Copyright (C) 1999-2001 Brian Paul All Rights Reserved. + * Copyright (C) 1999-2002 Brian Paul All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -137,6 +137,7 @@ _mesa_NormalPointer(GLenum type, GLsizei stride, const GLvoid *ptr ) return; } } + ctx->Array.Normal.Size = 3; ctx->Array.Normal.Type = type; ctx->Array.Normal.Stride = stride; ctx->Array.Normal.Ptr = (void *) ptr; @@ -239,6 +240,7 @@ _mesa_FogCoordPointerEXT(GLenum type, GLsizei stride, const GLvoid *ptr) return; } } + ctx->Array.FogCoord.Size = 1; ctx->Array.FogCoord.Type = type; ctx->Array.FogCoord.Stride = stride; ctx->Array.FogCoord.Ptr = (void *) ptr; @@ -284,6 +286,7 @@ _mesa_IndexPointer(GLenum type, GLsizei stride, const GLvoid *ptr) return; } } + ctx->Array.Index.Size = 1; ctx->Array.Index.Type = type; ctx->Array.Index.Stride = stride; ctx->Array.Index.Ptr = (void *) ptr; -- cgit v1.1