Mesa (master): Revert "g3dvl: Preserve previously rendered components for MC output."

Younes Manton ymanton at kemper.freedesktop.org
Fri Jul 22 00:09:02 UTC 2011


Module: Mesa
Branch: master
Commit: a87afba50529c6ae6762a3da68d4f31bc431e064
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a87afba50529c6ae6762a3da68d4f31bc431e064

Author: Younes Manton <younes.m at gmail.com>
Date:   Thu Jul 21 13:53:34 2011 -0400

Revert "g3dvl: Preserve previously rendered components for MC output."

This reverts commit b56daf71d2f63d044d4c53ab49c6f87e02991a28.

The bug is actually in softpipe's blend and writemask interaction.

---

 src/gallium/auxiliary/vl/vl_mc.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/gallium/auxiliary/vl/vl_mc.c b/src/gallium/auxiliary/vl/vl_mc.c
index 81a05b5..e5ae0f7 100644
--- a/src/gallium/auxiliary/vl/vl_mc.c
+++ b/src/gallium/auxiliary/vl/vl_mc.c
@@ -591,7 +591,7 @@ vl_mc_set_surface(struct vl_mc_buffer *buffer, struct pipe_surface *surface)
 }
 
 static void
-prepare_pipe_4_rendering(struct vl_mc_buffer *buffer, unsigned component, unsigned mask)
+prepare_pipe_4_rendering(struct vl_mc_buffer *buffer, unsigned mask)
 {
    struct vl_mc *renderer;
 
@@ -600,7 +600,7 @@ prepare_pipe_4_rendering(struct vl_mc_buffer *buffer, unsigned component, unsign
    renderer = buffer->renderer;
    renderer->pipe->bind_rasterizer_state(renderer->pipe, renderer->rs_state);
 
-   if (buffer->surface_cleared || component > 0)
+   if (buffer->surface_cleared)
       renderer->pipe->bind_blend_state(renderer->pipe, renderer->blend_add[mask]);
    else
       renderer->pipe->bind_blend_state(renderer->pipe, renderer->blend_clear[mask]);
@@ -616,7 +616,7 @@ vl_mc_render_ref(struct vl_mc_buffer *buffer, struct pipe_sampler_view *ref)
 
    assert(buffer && ref);
 
-   prepare_pipe_4_rendering(buffer, 0, PIPE_MASK_R | PIPE_MASK_G | PIPE_MASK_B);
+   prepare_pipe_4_rendering(buffer, PIPE_MASK_R | PIPE_MASK_G | PIPE_MASK_B);
 
    renderer = buffer->renderer;
 
@@ -644,7 +644,7 @@ vl_mc_render_ycbcr(struct vl_mc_buffer *buffer, unsigned component, unsigned num
    if (num_instances == 0)
       return;
 
-   prepare_pipe_4_rendering(buffer, component, mask);
+   prepare_pipe_4_rendering(buffer, mask);
 
    renderer = buffer->renderer;
 




More information about the mesa-commit mailing list