diff options
author | Brian Paul <[email protected]> | 2012-07-27 08:22:44 -0600 |
---|---|---|
committer | Brian Paul <[email protected]> | 2012-07-27 14:53:16 -0600 |
commit | 906febaf8bd37fffa4fc14c56eda1dd6e4b4dcda (patch) | |
tree | 75614800f4389229e2651d963434616bf5436656 | |
parent | a80b7407f3724ddac96167d640a0f9a91d60ac5f (diff) |
meta: fix glDrawPixels fallback test, stencil drawing
Remove the check for pixel transfer ops. If any RGB/depth scale/bias
is in effect, it'll be applied in the glTexImage step.
If drawing stencil pixels we need to disable pixel transfer so that
alpha scale/bias are not applied to the stencil data.
These issues were spotted by Roland.
Fixes Blender performance issues reported in
http://bugs.freedesktop.org/show_bug.cgi?id=47375
NOTE: This is a candidate for the 8.0 branch.
Tested-by: Barto <[email protected]>
Reviewed-by: Roland Scheidegger <[email protected]>
-rw-r--r-- | src/mesa/drivers/common/meta.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c index fa154238201..bf4d7180178 100644 --- a/src/mesa/drivers/common/meta.c +++ b/src/mesa/drivers/common/meta.c @@ -2281,8 +2281,7 @@ _mesa_meta_DrawPixels(struct gl_context *ctx, * Determine if we can do the glDrawPixels with texture mapping. */ fallback = GL_FALSE; - if (ctx->_ImageTransferState || - ctx->Fog.Enabled) { + if (ctx->Fog.Enabled) { fallback = GL_TRUE; } @@ -2317,6 +2316,7 @@ _mesa_meta_DrawPixels(struct gl_context *ctx, texIntFormat = GL_ALPHA; metaExtraSave = (MESA_META_COLOR_MASK | MESA_META_DEPTH_TEST | + MESA_META_PIXEL_TRANSFER | MESA_META_SHADER | MESA_META_STENCIL_TEST); } |