@@ -1,4 +1,4 @@ | |||
/* $Id: t_imm_dlist.c,v 1.2 2000/12/26 07:41:32 keithw Exp $ */ | |||
/* $Id: t_imm_dlist.c,v 1.3 2000/12/27 21:49:40 keithw Exp $ */ | |||
/* | |||
* Mesa 3-D graphics library | |||
@@ -187,8 +187,6 @@ execute_compiled_cassette( GLcontext *ctx, void *data ) | |||
TNLvertexcassette *node = (TNLvertexcassette *)data; | |||
struct immediate *IM = node->IM; | |||
/* FLUSH_VERTICES( ctx, 0 ); */ | |||
if (ctx->NewState) | |||
gl_update_state(ctx); | |||
@@ -214,7 +212,12 @@ execute_compiled_cassette( GLcontext *ctx, void *data ) | |||
fprintf(stderr, "Run cassette %d, rows %d..%d, beginstate %x ", | |||
IM->id, | |||
IM->Start, IM->Count, IM->BeginState); | |||
/* _tnl_print_vert_flags("orflag", IM->OrFlag); */ | |||
_tnl_print_vert_flags("orflag", IM->OrFlag); | |||
} | |||
if (IM->Count == IM->Start) { | |||
_tnl_run_empty_cassette( ctx, IM ); | |||
return; | |||
} | |||
if (IM->SavedBeginState) { | |||
@@ -227,7 +230,6 @@ execute_compiled_cassette( GLcontext *ctx, void *data ) | |||
} | |||
/* Lazy optimization of the cassette. | |||
*/ | |||
/* if (ctx->Transform.Normalize && !node->have_normal_lengths) { */ |
@@ -1,4 +1,4 @@ | |||
/* $Id: t_imm_exec.c,v 1.1 2000/12/26 05:09:32 keithw Exp $ */ | |||
/* $Id: t_imm_exec.c,v 1.2 2000/12/27 21:49:40 keithw Exp $ */ | |||
/* | |||
* Mesa 3-D graphics library | |||
@@ -358,14 +358,10 @@ static void exec_elt_cassette( GLcontext *ctx, struct immediate *IM ) | |||
/* Called for cassettes where CopyStart == Count -- no need to run the | |||
* pipeline. | |||
*/ | |||
static void exec_empty_cassette( GLcontext *ctx, struct immediate *IM ) | |||
void _tnl_run_empty_cassette( GLcontext *ctx, struct immediate *IM ) | |||
{ | |||
GLuint start = IM->CopyStart; | |||
if (IM->OrFlag & VERT_ELT) | |||
_tnl_translate_array_elts( ctx, IM, start, start ); | |||
_tnl_fixup_input( ctx, IM ); /* shouldn't be needed? (demos/fire) */ | |||
copy_to_current( ctx, IM, IM->OrFlag ); | |||
if (IM->OrFlag & VERT_MATERIAL) | |||
@@ -428,7 +424,11 @@ void _tnl_execute_cassette( GLcontext *ctx, struct immediate *IM ) | |||
_tnl_get_exec_copy_verts( ctx, IM ); | |||
if (IM->CopyStart == IM->Count) { | |||
exec_empty_cassette( ctx, IM ); | |||
if (IM->OrFlag & VERT_ELT) | |||
_tnl_translate_array_elts( ctx, IM, IM->CopyStart, IM->CopyStart ); | |||
_tnl_fixup_input( ctx, IM ); /* shouldn't be needed? (demos/fire) */ | |||
_tnl_run_empty_cassette( ctx, IM ); | |||
} | |||
else if ((IM->OrFlag & VERT_DATA) == VERT_ELT && | |||
ctx->Array.LockCount && |
@@ -1,4 +1,4 @@ | |||
/* $Id: t_imm_exec.h,v 1.1 2000/12/26 05:09:32 keithw Exp $ */ | |||
/* $Id: t_imm_exec.h,v 1.2 2000/12/27 21:49:40 keithw Exp $ */ | |||
/* | |||
* Mesa 3-D graphics library | |||
@@ -43,6 +43,7 @@ extern void _tnl_flush_immediate( struct immediate *IM ); | |||
/* Called from imm_dlist.c and _tnl_flush_immediate: | |||
*/ | |||
extern void _tnl_run_cassette( GLcontext *ctx, struct immediate *IM ); | |||
extern void _tnl_run_empty_cassette( GLcontext *ctx, struct immediate *IM ); | |||
/* Initialize some stuff: | |||
*/ |
@@ -1,4 +1,4 @@ | |||
/* $Id: t_vb_cliptmp.h,v 1.2 2000/12/27 19:57:37 keithw Exp $ */ | |||
/* $Id: t_vb_cliptmp.h,v 1.3 2000/12/27 21:49:40 keithw Exp $ */ | |||
/* | |||
* Mesa 3-D graphics library | |||
@@ -132,19 +132,11 @@ static GLuint TAG(userclip_polygon)( GLcontext *ctx, | |||
*/ | |||
GLfloat t = dp / (dp - dpPrev); | |||
newvert = interp( ctx, t, idx, idxPrev, GL_TRUE ); | |||
/* fprintf(stderr,"Goint out: in: %d/%d out: %d/%d new: %d/%d\n", */ | |||
/* idxPrev, VB->EdgeFlagPtr->data[idxPrev], */ | |||
/* idx, VB->EdgeFlagPtr->data[idx], */ | |||
/* newvert, VB->EdgeFlagPtr->data[newvert]); */ | |||
} else { | |||
/* Coming back in. | |||
*/ | |||
GLfloat t = dpPrev / (dpPrev - dp); | |||
newvert = interp( ctx, t, idxPrev, idx, GL_FALSE ); | |||
/* fprintf(stderr,"coming in: in: %d/%d out: %d/%d new: %d/%d\n", */ | |||
/* idx, VB->EdgeFlagPtr->data[idx], */ | |||
/* idxPrev, VB->EdgeFlagPtr->data[idxPrev], */ | |||
/* newvert, VB->EdgeFlagPtr->data[newvert]); */ | |||
} | |||
clipmask[newvert] = 0; | |||
outlist[outcount++] = newvert; | |||
@@ -173,10 +165,6 @@ static GLuint TAG(userclip_polygon)( GLcontext *ctx, | |||
vlist[i] = inlist[i]; | |||
} | |||
/* fprintf(stderr, "%s: finally:\n", __FUNCTION__); */ | |||
/* for (i = 0 ; i < n ; i++) */ | |||
/* fprintf(stderr, "%d: %d\n", vlist[i], VB->EdgeFlagPtr->data[vlist[i]]); */ | |||
return n; | |||
} | |||
@@ -1,4 +1,4 @@ | |||
/* $Id: t_vb_render.c,v 1.2 2000/12/27 19:57:37 keithw Exp $ */ | |||
/* $Id: t_vb_render.c,v 1.3 2000/12/27 21:49:40 keithw Exp $ */ | |||
/* | |||
* Mesa 3-D graphics library | |||
@@ -562,6 +562,9 @@ static GLboolean run_render( GLcontext *ctx, | |||
length= VB->PrimitiveLength[i]; | |||
ASSERT(length || (flags & PRIM_LAST)); | |||
ASSERT((flags & PRIM_MODE_MASK) <= GL_POLYGON+1); | |||
/* fprintf(stderr, "render %s %d..%d\n", */ | |||
/* _mesa_prim_name[flags & PRIM_MODE_MASK], */ | |||
/* i, i+length); */ | |||
if (length) | |||
tab[flags & PRIM_MODE_MASK]( ctx, i, i + length, flags ); | |||
} |