vulkan: Clear swapchain before usage.

Fix VkQueuePresentKHR error messages
This commit is contained in:
Vincent Lejeune 2016-03-15 18:58:16 +01:00
parent 3b3fffa962
commit 61de5e8835
1 changed files with 9 additions and 1 deletions

View File

@ -192,8 +192,16 @@ VKGSRender::VKGSRender() : GSRender(frame_type::Vulkan)
for (u32 i = 0; i < m_swap_chain->get_swap_image_count(); ++i)
{
vk::change_image_layout(m_command_buffer, m_swap_chain->get_swap_chain_image(i),
VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_PRESENT_SRC_KHR,
VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_GENERAL,
VK_IMAGE_ASPECT_COLOR_BIT);
VkClearColorValue clear_color{};
auto range = vk::default_image_subresource_range();
vkCmdClearColorImage(m_command_buffer, m_swap_chain->get_swap_chain_image(i), VK_IMAGE_LAYOUT_GENERAL, &clear_color, 1, &range);
vk::change_image_layout(m_command_buffer, m_swap_chain->get_swap_chain_image(i),
VK_IMAGE_LAYOUT_GENERAL, VK_IMAGE_LAYOUT_PRESENT_SRC_KHR,
VK_IMAGE_ASPECT_COLOR_BIT);
}
CHECK_RESULT(vkEndCommandBuffer(m_command_buffer));