X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fbackends%2Fvulkan%2Fpipelinecache.cpp;h=22356c7388248937179196b93cb5e55211f20567;hp=3f8e55008223484036b3e5c4760ae5c5bd09d047;hb=026b0ea00684868f3ddb6650b5fbffc95fa7ec63;hpb=53c15ccd0318a8f5428184eef19a350b6adf4c0c diff --git a/source/backends/vulkan/pipelinecache.cpp b/source/backends/vulkan/pipelinecache.cpp index 3f8e5500..22356c73 100644 --- a/source/backends/vulkan/pipelinecache.cpp +++ b/source/backends/vulkan/pipelinecache.cpp @@ -62,6 +62,7 @@ VkRenderPass PipelineCache::get_render_pass(const FrameFormat &format, bool clea depth_stencil_ref.attachment = VK_ATTACHMENT_UNUSED; VkSampleCountFlagBits vk_samples = static_cast(get_vulkan_samples(format.get_samples())); + VkImageLayout default_layout = (to_present ? VK_IMAGE_LAYOUT_PRESENT_SRC_KHR : VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL); unsigned i = 0; unsigned color_count = 0; @@ -73,8 +74,8 @@ VkRenderPass PipelineCache::get_render_pass(const FrameFormat &format, bool clea attachments[i].storeOp = VK_ATTACHMENT_STORE_OP_STORE; attachments[i].stencilLoadOp = VK_ATTACHMENT_LOAD_OP_LOAD; attachments[i].stencilStoreOp = VK_ATTACHMENT_STORE_OP_STORE; - attachments[i].initialLayout = (clear ? VK_IMAGE_LAYOUT_UNDEFINED : VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL); - attachments[i].finalLayout = (to_present ? VK_IMAGE_LAYOUT_PRESENT_SRC_KHR : VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL); + attachments[i].initialLayout = (clear ? VK_IMAGE_LAYOUT_UNDEFINED : default_layout); + attachments[i].finalLayout = default_layout; unsigned attach_pt = get_attach_point(a); if(attach_pt==get_attach_point(COLOR_ATTACHMENT))