diff options
author | Marek Olšák <[email protected]> | 2017-06-10 01:07:59 +0200 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2017-06-22 01:51:02 +0200 |
commit | b677e96078889140ad1549cb7b94b0a33c10f7ba (patch) | |
tree | e11326c728215c9609b80f2bdde5d4d15a27c4bb /src/mesa/state_tracker | |
parent | 37b834923d31bb170ffbfac882476659060b78b2 (diff) |
mesa: use DriverFlags.NewAlphaTest to communicate alphatest changes to st/mesa
Now AlphaFunc avoids the blend state update in st/mesa and avoids
_mesa_update_state_locked.
The GL_ALPHA_TEST enable won't trigger blend state updates in st/mesa
after st/mesa stops relying on _NEW_COLOR.
Reviewed-by: Nicolai Hähnle <[email protected]>
Reviewed-by: Brian Paul <[email protected]>
Reviewed-by: Timothy Arceri <[email protected]>
Diffstat (limited to 'src/mesa/state_tracker')
-rw-r--r-- | src/mesa/state_tracker/st_context.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mesa/state_tracker/st_context.c b/src/mesa/state_tracker/st_context.c index dff40c67604..cdcc4ddaf48 100644 --- a/src/mesa/state_tracker/st_context.c +++ b/src/mesa/state_tracker/st_context.c @@ -237,8 +237,7 @@ st_invalidate_state(struct gl_context * ctx) st->dirty |= ST_NEW_CLIP_STATE; if (new_state & _NEW_COLOR) - st->dirty |= ST_NEW_BLEND | - ST_NEW_DSA; + st->dirty |= ST_NEW_BLEND; if (new_state & _NEW_PIXEL) st->dirty |= ST_NEW_PIXEL_TRANSFER; @@ -519,6 +518,7 @@ static void st_init_driver_flags(struct st_context *st) f->NewFramebufferSRGB = ST_NEW_FB_STATE; f->NewScissorRect = ST_NEW_SCISSOR; f->NewScissorTest = ST_NEW_SCISSOR | ST_NEW_RASTERIZER; + f->NewAlphaTest = ST_NEW_DSA; f->NewDepth = ST_NEW_DSA; f->NewStencil = ST_NEW_DSA; } |