diff options
author | Keith Whitwell <[email protected]> | 2000-12-26 05:09:27 +0000 |
---|---|---|
committer | Keith Whitwell <[email protected]> | 2000-12-26 05:09:27 +0000 |
commit | cab974cf6c2dbfbf5dd5d291e1aae0f8eeb34290 (patch) | |
tree | 45385bd755d8e3876c54b2b0113636f5ceb7976a /src/mesa/main/context.c | |
parent | d1ff1f6798b003a820f5de9fad835ff352f31afe (diff) |
Major rework of tnl module
New array_cache module
Support 8 texture units in core mesa (now support 8 everywhere)
Rework core mesa statechange operations to avoid flushing on many
noop statechanges.
Diffstat (limited to 'src/mesa/main/context.c')
-rw-r--r-- | src/mesa/main/context.c | 29 |
1 files changed, 10 insertions, 19 deletions
diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c index 2d5b6569cd1..12eb9b791af 100644 --- a/src/mesa/main/context.c +++ b/src/mesa/main/context.c @@ -1,4 +1,4 @@ -/* $Id: context.c,v 1.113 2000/12/16 00:21:28 brianp Exp $ */ +/* $Id: context.c,v 1.114 2000/12/26 05:09:28 keithw Exp $ */ /* * Mesa 3-D graphics library @@ -77,7 +77,6 @@ int MESA_VERBOSE = 0 /* | VERBOSE_API */ /* | VERBOSE_DRIVER */ /* | VERBOSE_STATE */ -/* | VERBOSE_CULL */ /* | VERBOSE_DISPLAY_LIST */ ; #endif @@ -603,7 +602,7 @@ init_light( struct gl_light *l, GLuint n ) ASSIGN_4V( l->EyePosition, 0.0, 0.0, 1.0, 0.0 ); ASSIGN_3V( l->EyeDirection, 0.0, 0.0, -1.0 ); l->SpotExponent = 0.0; - gl_compute_spot_exp_table( l ); + gl_invalidate_spot_exp_table( l ); l->SpotCutoff = 180.0; l->_CosCutoff = 0.0; /* KW: -ve values not admitted */ l->ConstantAttenuation = 1.0; @@ -993,15 +992,6 @@ init_attrib_groups( GLcontext *ctx ) s->refcount = 0; insert_at_tail( ctx->_ShineTabList, s ); } - for (i = 0 ; i < 4 ; i++) { - ctx->_ShineTable[i] = ctx->_ShineTabList->prev; - ctx->_ShineTable[i]->refcount++; - } - - gl_compute_shine_table( ctx, 0, ctx->Light.Material[0].Shininess ); - gl_compute_shine_table( ctx, 2, ctx->Light.Material[0].Shininess * .5 ); - gl_compute_shine_table( ctx, 1, ctx->Light.Material[1].Shininess ); - gl_compute_shine_table( ctx, 3, ctx->Light.Material[1].Shininess * .5 ); /* Line group */ @@ -1105,10 +1095,9 @@ init_attrib_groups( GLcontext *ctx ) ctx->Polygon.CullFlag = GL_FALSE; ctx->Polygon.CullFaceMode = GL_BACK; ctx->Polygon.FrontFace = GL_CCW; - ctx->Polygon.FrontBit = 0; + ctx->Polygon._FrontBit = 0; ctx->Polygon.FrontMode = GL_FILL; ctx->Polygon.BackMode = GL_FILL; - ctx->Polygon._Unfilled = GL_FALSE; ctx->Polygon.SmoothFlag = GL_FALSE; ctx->Polygon.StippleFlag = GL_FALSE; ctx->Polygon.OffsetFactor = 0.0F; @@ -1848,7 +1837,7 @@ _mesa_get_current_context( void ) void _mesa_swapbuffers(GLcontext *ctx) { - FLUSH_TNL( ctx, FLUSH_STORED_VERTICES ); + FLUSH_VERTICES( ctx, 0 ); } @@ -1989,7 +1978,7 @@ void _mesa_Finish( void ) { GET_CURRENT_CONTEXT(ctx); - ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx, "glFinish"); + ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); if (ctx->Driver.Finish) { (*ctx->Driver.Finish)( ctx ); } @@ -2001,7 +1990,7 @@ void _mesa_Flush( void ) { GET_CURRENT_CONTEXT(ctx); - ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx, "glFlush"); + ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); if (ctx->Driver.Flush) { (*ctx->Driver.Flush)( ctx ); } @@ -2009,7 +1998,7 @@ _mesa_Flush( void ) -const char *_mesa_prim_name[GL_POLYGON+2] = { +const char *_mesa_prim_name[GL_POLYGON+4] = { "GL_POINTS", "GL_LINES", "GL_LINE_LOOP", @@ -2020,7 +2009,9 @@ const char *_mesa_prim_name[GL_POLYGON+2] = { "GL_QUADS", "GL_QUAD_STRIP", "GL_POLYGON", - "culled primitive" + "outside begin/end", + "inside unkown primitive", + "unknown state" }; |