diff options
author | Chia-I Wu <olv@lunarg.com> | 2011-01-30 22:54:40 +0800 |
---|---|---|
committer | Chia-I Wu <olv@lunarg.com> | 2011-01-30 23:22:40 +0800 |
commit | 3f0a966807f03a364edea0272ddf45f08ab7ce4f (patch) | |
tree | b6d5fee2968cc39727752aa37e7734da0c26bee0 /src/gallium/state_trackers/vega/vg_context.h | |
parent | e919dee1edd469c174c5c07c95efd4932a674b67 (diff) | |
download | external_mesa3d-3f0a966807f03a364edea0272ddf45f08ab7ce4f.zip external_mesa3d-3f0a966807f03a364edea0272ddf45f08ab7ce4f.tar.gz external_mesa3d-3f0a966807f03a364edea0272ddf45f08ab7ce4f.tar.bz2 |
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.h | 4 |
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 45e5985..71491a5 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 |