From db81116faed577282f63e0e2d5747f9de948d7d2 Mon Sep 17 00:00:00 2001 From: baldurk Date: Fri, 24 May 2019 20:03:53 +0100 Subject: [PATCH] Image clears should still dirty on vulkan * Even though a clear feels like it shouldn't dirty the image, it still means a write to the image which we need to be sure to save as initial contents. --- renderdoc/driver/vulkan/wrappers/vk_draw_funcs.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/renderdoc/driver/vulkan/wrappers/vk_draw_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_draw_funcs.cpp index 94b0e9097..f19707d12 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_draw_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_draw_funcs.cpp @@ -2098,6 +2098,7 @@ void WrappedVulkan::vkCmdClearColorImage(VkCommandBuffer commandBuffer, VkImage record->AddChunk(scope.Get()); record->MarkResourceFrameReferenced(GetResID(image), eFrameRef_PartialWrite); record->MarkResourceFrameReferenced(GetRecord(image)->baseResource, eFrameRef_Read); + record->cmdInfo->dirtied.insert(GetResID(image)); if(GetRecord(image)->resInfo) record->cmdInfo->sparse.insert(GetRecord(image)->resInfo); } @@ -2205,6 +2206,7 @@ void WrappedVulkan::vkCmdClearDepthStencilImage(VkCommandBuffer commandBuffer, V record->AddChunk(scope.Get()); record->MarkResourceFrameReferenced(GetResID(image), eFrameRef_PartialWrite); record->MarkResourceFrameReferenced(GetRecord(image)->baseResource, eFrameRef_Read); + record->cmdInfo->dirtied.insert(GetResID(image)); if(GetRecord(image)->resInfo) record->cmdInfo->sparse.insert(GetRecord(image)->resInfo); }