diff options
author | George Kyriazis <[email protected]> | 2017-01-24 17:19:55 -0600 |
---|---|---|
committer | Tim Rowley <[email protected]> | 2017-01-25 10:02:50 -0600 |
commit | e259efd805b35250e05b56dc727252544d6d4abb (patch) | |
tree | aab41a98e1f5253188cc1ace634c346291f929bf | |
parent | cff199ceb7c68db51efc85f34cd45ccede790d4a (diff) |
swr: Update fs texture & sampler state logic
In swr_update_derived() update texture and sampler state on a new fragment
shader. GALLIUM_HUD can update fs using a previously bound texture and
sampler.
Reviewed-by: Bruce Cherniak <[email protected]>
-rw-r--r-- | src/gallium/drivers/swr/swr_state.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/gallium/drivers/swr/swr_state.cpp b/src/gallium/drivers/swr/swr_state.cpp index 41e03560b17..f1f4963c259 100644 --- a/src/gallium/drivers/swr/swr_state.cpp +++ b/src/gallium/drivers/swr/swr_state.cpp @@ -1283,7 +1283,8 @@ swr_update_derived(struct pipe_context *pipe, SwrSetPixelShaderState(ctx->swrContext, &psState); /* JIT sampler state */ - if (ctx->dirty & SWR_NEW_SAMPLER) { + if (ctx->dirty & (SWR_NEW_SAMPLER | + SWR_NEW_FS)) { swr_update_sampler_state(ctx, PIPE_SHADER_FRAGMENT, key.nr_samplers, @@ -1291,7 +1292,9 @@ swr_update_derived(struct pipe_context *pipe, } /* JIT sampler view state */ - if (ctx->dirty & (SWR_NEW_SAMPLER_VIEW | SWR_NEW_FRAMEBUFFER)) { + if (ctx->dirty & (SWR_NEW_SAMPLER_VIEW | + SWR_NEW_FRAMEBUFFER | + SWR_NEW_FS)) { swr_update_texture_state(ctx, PIPE_SHADER_FRAGMENT, key.nr_sampler_views, |