summaryrefslogtreecommitdiff
path: root/src/mesa/main/context.c
diff options
context:
space:
mode:
authorKeith Whitwell <keith@tungstengraphics.com>2000-12-26 05:09:27 +0000
committerKeith Whitwell <keith@tungstengraphics.com>2000-12-26 05:09:27 +0000
commitcab974cf6c2dbfbf5dd5d291e1aae0f8eeb34290 (patch)
tree45385bd755d8e3876c54b2b0113636f5ceb7976a /src/mesa/main/context.c
parentd1ff1f6798b003a820f5de9fad835ff352f31afe (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.c29
1 files changed, 10 insertions, 19 deletions
diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c
index 2d5b6569cd..12eb9b791a 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"
};