summaryrefslogtreecommitdiff
path: root/src/gallium/state_trackers/vega/vg_context.h
diff options
context:
space:
mode:
authorChia-I Wu <olv@lunarg.com>2011-01-30 22:54:40 +0800
committerChia-I Wu <olv@lunarg.com>2011-01-30 23:22:40 +0800
commit3f0a966807f03a364edea0272ddf45f08ab7ce4f (patch)
treeb6d5fee2968cc39727752aa37e7734da0c26bee0 /src/gallium/state_trackers/vega/vg_context.h
parente919dee1edd469c174c5c07c95efd4932a674b67 (diff)
st/vega: Disable blending when the paint is opaque.
When the paint is opaque (currently, solid color with alpha 1.0f), no blending is needed for VG_BLEND_SRC_OVER. This eliminates the serious performance hit introduced by 859106f196ade77f59f8787b071739901cd1a843 for a common scenario.
Diffstat (limited to 'src/gallium/state_trackers/vega/vg_context.h')
-rw-r--r--src/gallium/state_trackers/vega/vg_context.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/gallium/state_trackers/vega/vg_context.h b/src/gallium/state_trackers/vega/vg_context.h
index 45e5985c4b..71491a5aa2 100644
--- a/src/gallium/state_trackers/vega/vg_context.h
+++ b/src/gallium/state_trackers/vega/vg_context.h
@@ -81,10 +81,12 @@ enum dirty_state {
BLEND_DIRTY = 1 << 0,
FRAMEBUFFER_DIRTY = 1 << 1,
DEPTH_STENCIL_DIRTY = 1 << 2,
+ PAINT_DIRTY = 1 << 3,
ALL_DIRTY = BLEND_DIRTY |
FRAMEBUFFER_DIRTY |
- DEPTH_STENCIL_DIRTY
+ DEPTH_STENCIL_DIRTY |
+ PAINT_DIRTY
};
struct vg_context