summaryrefslogtreecommitdiff
path: root/src/gallium/state_trackers/vega/vg_context.c
diff options
context:
space:
mode:
authorRoland Scheidegger <sroland@vmware.com>2010-01-25 16:52:14 +0100
committerRoland Scheidegger <sroland@vmware.com>2010-01-25 16:52:14 +0100
commit0d3a6a505d537b879f31be0ed14fa8577717efaf (patch)
tree8c76d097724044c597cb1b146fc76ae688191b6e /src/gallium/state_trackers/vega/vg_context.c
parentdbc0e24ab866ce8bdd974b52e050dd022620b146 (diff)
vega: don't enable blending if not necessary
In some places blending was enabled even though it wasn't necessary. Also remove a (bogus) reenabling of color writes, which wasn't really used.
Diffstat (limited to 'src/gallium/state_trackers/vega/vg_context.c')
-rw-r--r--src/gallium/state_trackers/vega/vg_context.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/gallium/state_trackers/vega/vg_context.c b/src/gallium/state_trackers/vega/vg_context.c
index f05a5e68c6..64207d97ba 100644
--- a/src/gallium/state_trackers/vega/vg_context.c
+++ b/src/gallium/state_trackers/vega/vg_context.c
@@ -286,8 +286,6 @@ static void update_clip_state(struct vg_context *ctx)
renderer_draw_quad(ctx->renderer, minx, miny, maxx, maxy, 0.0f);
}
- blend->rt[0].colormask = PIPE_MASK_R; /*enable colorwrites*/
- /* XXX really only for red channel? */
cso_restore_blend(ctx->cso_context);
cso_restore_fragment_shader(ctx->cso_context);
@@ -311,7 +309,7 @@ void vg_validate_state(struct vg_context *ctx)
blend->rt[0].alpha_src_factor = PIPE_BLENDFACTOR_ONE;
blend->rt[0].rgb_dst_factor = PIPE_BLENDFACTOR_ZERO;
blend->rt[0].alpha_dst_factor = PIPE_BLENDFACTOR_ZERO;
- /* could disable blending ? */
+ blend->rt[0].blend_enable = 0;
break;
case VG_BLEND_SRC_OVER:
blend->rt[0].rgb_src_factor = PIPE_BLENDFACTOR_SRC_ALPHA;
@@ -345,7 +343,7 @@ void vg_validate_state(struct vg_context *ctx)
blend->rt[0].alpha_src_factor = PIPE_BLENDFACTOR_ONE;
blend->rt[0].rgb_dst_factor = PIPE_BLENDFACTOR_ZERO;
blend->rt[0].alpha_dst_factor = PIPE_BLENDFACTOR_ZERO;
- /* could disable blending ? */
+ blend->rt[0].blend_enable = 0;
break;
case VG_BLEND_ADDITIVE:
blend->rt[0].rgb_src_factor = PIPE_BLENDFACTOR_ONE;