-/* $Id: vtxfmt.c,v 1.8 2001/12/04 23:43:31 brianp Exp $ */
+/* $Id: vtxfmt.c,v 1.13 2002/10/24 23:57:21 brianp Exp $ */
/*
* Mesa 3-D graphics library
#include "glheader.h"
#include "api_loopback.h"
#include "context.h"
+#include "imports.h"
#include "mtypes.h"
#include "state.h"
#include "vtxfmt.h"
{ \
GET_CURRENT_CONTEXT(ctx); \
struct gl_tnl_module *tnl = &(ctx->TnlModule); \
- const GLuint new_state = ctx->NewState; \
- \
- if ( new_state ) \
- _mesa_update_state( ctx ); \
- \
- /* Validate the current tnl module. */ \
- if ( new_state & ctx->Driver.NeedValidate ) \
- ctx->Driver.ValidateTnlModule( ctx, new_state ); \
\
ASSERT( tnl->Current ); \
ASSERT( tnl->SwapCount < NUM_VERTEX_FORMAT_ENTRIES ); \
tnl->SwapCount++; \
\
if ( 0 ) \
- fprintf( stderr, " swapping gl" #FUNC"...\n" ); \
+ _mesa_debug(ctx, " swapping gl" #FUNC"...\n" ); \
\
/* Install the tnl function pointer. */ \
ctx->Exec->FUNC = tnl->Current->FUNC; \
tab->Vertex3fv = vfmt->Vertex3fv;
tab->Vertex4f = vfmt->Vertex4f;
tab->Vertex4fv = vfmt->Vertex4fv;
+ tab->CallList = vfmt->CallList;
tab->Begin = vfmt->Begin;
tab->End = vfmt->End;
-
-/* tab->NewList = vfmt->NewList; */
- tab->CallList = vfmt->CallList;
-
+ tab->VertexAttrib4fNV = vfmt->VertexAttrib4fNV;
tab->Rectf = vfmt->Rectf;
tab->DrawArrays = vfmt->DrawArrays;
tab->DrawElements = vfmt->DrawElements;
tab->DrawRangeElements = vfmt->DrawRangeElements;
tab->EvalMesh1 = vfmt->EvalMesh1;
tab->EvalMesh2 = vfmt->EvalMesh2;
+ assert(tab->EvalMesh2);
}
void _mesa_init_exec_vtxfmt( GLcontext *ctx )
{
install_vtxfmt( ctx->Exec, &neutral_vtxfmt );
+ ctx->TnlModule.SwapCount = 0;
}