From b78c6f71277ccab806d1dfc321c67f3c8ee92a87 Mon Sep 17 00:00:00 2001 From: kd-11 Date: Sat, 22 Apr 2017 17:56:54 +0300 Subject: [PATCH] clear up a spec misunderstanding --- rpcs3/Emu/RSX/VK/VKGSRender.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/rpcs3/Emu/RSX/VK/VKGSRender.cpp b/rpcs3/Emu/RSX/VK/VKGSRender.cpp index 106554c2e0..ae265ab92d 100644 --- a/rpcs3/Emu/RSX/VK/VKGSRender.cpp +++ b/rpcs3/Emu/RSX/VK/VKGSRender.cpp @@ -676,9 +676,7 @@ void VKGSRender::begin() { std::chrono::time_point submit_start = steady_clock::now(); - //??Should we wait for the queue to actually render to the GPU? or just flush the queue? - //Needs investigation to determine what drivers expect here, bottom_of_pipe is guaranteed to work, but will be too slow - close_and_submit_command_buffer({}, m_submit_fence, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT); + close_and_submit_command_buffer({}, m_submit_fence); CHECK_RESULT(vkWaitForFences((*m_device), 1, &m_submit_fence, VK_TRUE, ~0ULL)); vkResetDescriptorPool(*m_device, descriptor_pool, 0); @@ -1057,7 +1055,7 @@ void VKGSRender::copy_render_targets_to_dma_location() } } - close_and_submit_command_buffer({}, m_submit_fence, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT); + close_and_submit_command_buffer({}, m_submit_fence); CHECK_RESULT(vkWaitForFences((*m_device), 1, &m_submit_fence, VK_TRUE, ~0ULL)); CHECK_RESULT(vkResetFences(*m_device, 1, &m_submit_fence)); @@ -1069,7 +1067,7 @@ void VKGSRender::do_local_task() { if (m_flush_commands) { - close_and_submit_command_buffer({}, m_submit_fence, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT); + close_and_submit_command_buffer({}, m_submit_fence); CHECK_RESULT(vkWaitForFences((*m_device), 1, &m_submit_fence, VK_TRUE, ~0ULL)); CHECK_RESULT(vkResetFences(*m_device, 1, &m_submit_fence));