浏览代码

swrast: fix color masking for glAccum(GL_RETURN)

Should fix fdo bug 25837.
tags/7.8-rc1
Brian Paul 15 年前
父节点
当前提交
b841c2756e
共有 1 个文件被更改,包括 4 次插入4 次删除
  1. 4
    4
      src/mesa/swrast/s_accum.c

+ 4
- 4
src/mesa/swrast/s_accum.c 查看文件

@@ -436,10 +436,6 @@ accum_return(GLcontext *ctx, GLfloat value,
struct gl_renderbuffer *accumRb = fb->Attachment[BUFFER_ACCUM].Renderbuffer;
const GLboolean directAccess
= (accumRb->GetPointer(ctx, accumRb, 0, 0) != NULL);
const GLboolean masking = (!ctx->Color.ColorMask[RCOMP] ||
!ctx->Color.ColorMask[GCOMP] ||
!ctx->Color.ColorMask[BCOMP] ||
!ctx->Color.ColorMask[ACOMP]);

static GLchan multTable[32768];
static GLfloat prevMult = 0.0;
@@ -527,6 +523,10 @@ accum_return(GLcontext *ctx, GLfloat value,
/* store colors */
for (buffer = 0; buffer < fb->_NumColorDrawBuffers; buffer++) {
struct gl_renderbuffer *rb = fb->_ColorDrawBuffers[buffer];
const GLboolean masking = (!ctx->Color.ColorMask[buffer][RCOMP] ||
!ctx->Color.ColorMask[buffer][GCOMP] ||
!ctx->Color.ColorMask[buffer][BCOMP] ||
!ctx->Color.ColorMask[buffer][ACOMP]);
if (masking) {
_swrast_mask_rgba_span(ctx, rb, &span, buffer);
}

正在加载...
取消
保存