diff options
author | Jason Ekstrand <jason.ekstrand@intel.com> | 2016-03-04 11:07:27 -0800 |
---|---|---|
committer | Jason Ekstrand <jason.ekstrand@intel.com> | 2016-03-04 12:03:00 -0800 |
commit | d61dcec64dc66fea7f15f296212c68f18fe5aaa0 (patch) | |
tree | 55e66384f90afeeaccb86d9f85042667111b6109 /src/intel/vulkan/anv_meta_clear.c | |
parent | ec18fef88d8a7a1a3541b0d40708a6637412f50e (diff) |
anv/clear: Pull the stencil write mask from the pipeline
The stencil write mask wasn't getting set at all so we were using whatever
write mask happend to be left over by the application.
Diffstat (limited to 'src/intel/vulkan/anv_meta_clear.c')
-rw-r--r-- | src/intel/vulkan/anv_meta_clear.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/intel/vulkan/anv_meta_clear.c b/src/intel/vulkan/anv_meta_clear.c index 227f8f35115..c052b8b11f6 100644 --- a/src/intel/vulkan/anv_meta_clear.c +++ b/src/intel/vulkan/anv_meta_clear.c @@ -45,7 +45,8 @@ meta_clear_begin(struct anv_meta_saved_state *saved_state, anv_meta_save(saved_state, cmd_buffer, (1 << VK_DYNAMIC_STATE_VIEWPORT) | (1 << VK_DYNAMIC_STATE_SCISSOR) | - (1 << VK_DYNAMIC_STATE_STENCIL_REFERENCE)); + (1 << VK_DYNAMIC_STATE_STENCIL_REFERENCE) | + (1 << VK_DYNAMIC_STATE_STENCIL_WRITE_MASK)); cmd_buffer->state.dynamic.viewport.count = 0; cmd_buffer->state.dynamic.scissor.count = 0; @@ -193,6 +194,7 @@ create_pipeline(struct anv_device *device, .sType = VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO, .dynamicStateCount = 9, .pDynamicStates = (VkDynamicState[]) { + /* Everything except stencil write mask */ VK_DYNAMIC_STATE_VIEWPORT, VK_DYNAMIC_STATE_SCISSOR, VK_DYNAMIC_STATE_LINE_WIDTH, @@ -200,7 +202,6 @@ create_pipeline(struct anv_device *device, VK_DYNAMIC_STATE_BLEND_CONSTANTS, VK_DYNAMIC_STATE_DEPTH_BOUNDS, VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK, - VK_DYNAMIC_STATE_STENCIL_WRITE_MASK, VK_DYNAMIC_STATE_STENCIL_REFERENCE, }, }, |