src/mesa/drivers/dri/i965/brw_clip.c | 3 ++- src/mesa/drivers/dri/intel/intel_pixel_bitmap.c | 6 ++++++ src/mesa/drivers/dri/radeon/radeon_screen.c | 4 ++-- 3 files changed, 10 insertions(+), 3 deletions(-)
New commits: commit a6b314150c141f4c73e408b114181e57237540d9 Author: Eric Anholt <[email protected]> Date: Thu Jul 2 19:21:22 2009 -0700 intel: Fall back on glBitmap with fog enabled. We would have to build the program with the appropriate fog mode, and also supply the fog coordinate if appropriate. Bug #19413. (cherry picked from commit 8ae02a3919bf31bd33f86208472e100eedb58497) diff --git a/src/mesa/drivers/dri/intel/intel_pixel_bitmap.c b/src/mesa/drivers/dri/intel/intel_pixel_bitmap.c index a2ccae1..d137aef 100644 --- a/src/mesa/drivers/dri/intel/intel_pixel_bitmap.c +++ b/src/mesa/drivers/dri/intel/intel_pixel_bitmap.c @@ -409,6 +409,12 @@ intel_texture_bitmap(GLcontext * ctx, return GL_FALSE; } + if (ctx->Fog.Enabled) { + if (INTEL_DEBUG & DEBUG_FALLBACKS) + fprintf(stderr, "glBitmap() fallback: fog\n"); + return GL_FALSE; + } + /* Check that we can load in a texture this big. */ if (width > (1 << (ctx->Const.MaxTextureLevels - 1)) || height > (1 << (ctx->Const.MaxTextureLevels - 1))) { commit 1b445f96737cf5a1a28e81ff94a2e07b2cac3a96 Author: Eric Anholt <[email protected]> Date: Mon Jul 20 17:58:12 2009 -0700 i965: Don't clip everything if FRONT_AND_BACK culling while culling disabled. Fixes everything-black with meta_clear_tris on quake4-mpdemo and doom3-demo. Bug #18844, 22077. (cherry picked from commit 81d555068408d4343d7627c8bedda5675f09bd21) diff --git a/src/mesa/drivers/dri/i965/brw_clip.c b/src/mesa/drivers/dri/i965/brw_clip.c index 5cffceb..8fc9f89 100644 --- a/src/mesa/drivers/dri/i965/brw_clip.c +++ b/src/mesa/drivers/dri/i965/brw_clip.c @@ -152,7 +152,8 @@ static void upload_clip_prog(struct brw_context *brw) /* _NEW_POLYGON */ if (key.primitive == GL_TRIANGLES) { - if (ctx->Polygon.CullFaceMode == GL_FRONT_AND_BACK) + if (ctx->Polygon.CullFlag && + ctx->Polygon.CullFaceMode == GL_FRONT_AND_BACK) key.clip_mode = BRW_CLIPMODE_REJECT_ALL; else { GLuint fill_front = CLIP_CULL; commit 5ed440400573631f540701f3efd479d8c1592007 Author: Michel Dänzer <[email protected]> Date: Mon Jul 20 20:26:28 2009 +0200 radeon: With DRI1, if we have HW stencil, only expose fbconfigs with stencil. Otherwise simple apps like glxgears pick up a DirectColor visual since the X server mixes the depth 32 visual in with the other GLX visuals, and this seems to result in a (mostly) black screen due to a bad ColorMap for a lot of people. The bad ColorMap may be a bug in the apps, the X server or X driver, and regardless of that I think the X server should ideally make the depth 32 GLX visual separate from the rest again, but in the meantime this makes us cope. (depth_bits is either 16 or 24, never 0) diff --git a/src/mesa/drivers/dri/radeon/radeon_screen.c b/src/mesa/drivers/dri/radeon/radeon_screen.c index 791f598..a977bed 100644 --- a/src/mesa/drivers/dri/radeon/radeon_screen.c +++ b/src/mesa/drivers/dri/radeon/radeon_screen.c @@ -283,12 +283,12 @@ radeonFillInModes( __DRIscreenPrivate *psp, * with a stencil buffer. It will be a sw fallback, but some apps won't * care about that. */ - stencil_bits_array[0] = 0; + stencil_bits_array[0] = stencil_bits; stencil_bits_array[1] = (stencil_bits == 0) ? 8 : stencil_bits; msaa_samples_array[0] = 0; - depth_buffer_factor = ((depth_bits != 0) || (stencil_bits != 0)) ? 2 : 1; + depth_buffer_factor = (stencil_bits == 0) ? 2 : 1; back_buffer_factor = (have_back_buffer) ? 2 : 1; if (pixel_bits == 16) { -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected]

