Index: src/mesa/swrast/s_triangle.c =================================================================== RCS file: /cvs/mesa/Mesa/src/mesa/swrast/s_triangle.c,v retrieving revision 1.82 diff -u -d -r1.82 s_triangle.c --- src/mesa/swrast/s_triangle.c 25 May 2004 22:29:52 -0000 1.82 +++ src/mesa/swrast/s_triangle.c 21 Jun 2004 16:24:46 -0000 @@ -909,10 +909,36 @@ #define DO_OCCLUSION_TEST #define INTERP_Z 1 #define DEPTH_TYPE DEFAULT_SOFTWARE_DEPTH_TYPE + +#ifdef XFree86Server +#define SETUP_CODE \ + xf86DrvMsg( 0, "(II)", "in %s\n", __func__ ); \ + if (ctx->OcclusionResult && !ctx->Occlusion.Active) { \ + xf86DrvMsg( 0, "(II)", "early out from %s\n", __func__ ); \ + return; \ + } +#else #define SETUP_CODE \ if (ctx->OcclusionResult && !ctx->Occlusion.Active) { \ return; \ } +#endif + +#ifdef XFree86Server +#define RENDER_SPAN( span ) \ + GLuint i; \ + for (i = 0; i < span.end; i++) { \ + GLdepth z = FixedToDepth(span.z); \ + xf86DrvMsg( 0, "(II)", "span.z = %x, z = %x, zRow[%u] = %x\n", \ + span.z, z, i, zRow[i]);\ + if (z < zRow[i]) { \ + xf86DrvMsg( 0, "(II)", "occlusion result is true!\n");\ + ctx->OcclusionResult = GL_TRUE; \ + ctx->Occlusion.PassedCounter++; \ + } \ + span.z += span.zStep; \ + } +#else #define RENDER_SPAN( span ) \ GLuint i; \ for (i = 0; i < span.end; i++) { \ @@ -923,6 +949,8 @@ } \ span.z += span.zStep; \ } +#endif + #include "s_tritemp.h" @@ -1053,6 +1081,18 @@ ctx->Color.ColorMask[3] == 0) || (!rgbmode && ctx->Color.IndexMask == 0)) { +#ifdef XFree86Server + xf86DrvMsg( 0, "(II)", "%c, %c, %x, %c, (%c, %x, %x, %x, %x)\n", + ctx->Depth.Test ? 'T' : 'F', + ctx->Depth.Mask ? 'T' : 'F', + ctx->Depth.Func, + ctx->Stencil.Enabled ? 'T' : 'F', + rgbmode ? 'T' : 'F', + ctx->Color.ColorMask[0], + ctx->Color.ColorMask[1], + ctx->Color.ColorMask[2], + ctx->Color.ColorMask[3] ); +#endif USE(occlusion_zless_triangle); return; }