Browse Source

return old logic

metroid-shodows
PavelBARABANOV 4 days ago
parent
commit
29523e6dd2
  1. 4
      src/video_core/renderer_vulkan/vk_query_cache.cpp

4
src/video_core/renderer_vulkan/vk_query_cache.cpp

@ -859,18 +859,18 @@ private:
return; return;
} }
has_flushed_end_pending = true; has_flushed_end_pending = true;
// Refresh buffers state before beginning transform feedback so counters are up-to-date
UpdateBuffers();
if (!has_started || buffers_count == 0) { if (!has_started || buffers_count == 0) {
// No counter buffers available: begin without counters // No counter buffers available: begin without counters
scheduler.Record([](vk::CommandBuffer cmdbuf) { scheduler.Record([](vk::CommandBuffer cmdbuf) {
cmdbuf.BeginTransformFeedbackEXT(0, 0, nullptr, nullptr); cmdbuf.BeginTransformFeedbackEXT(0, 0, nullptr, nullptr);
}); });
UpdateBuffers();
return; return;
} }
scheduler.Record([this, total = static_cast<u32>(buffers_count)](vk::CommandBuffer cmdbuf) { scheduler.Record([this, total = static_cast<u32>(buffers_count)](vk::CommandBuffer cmdbuf) {
cmdbuf.BeginTransformFeedbackEXT(0, total, counter_buffers.data(), offsets.data()); cmdbuf.BeginTransformFeedbackEXT(0, total, counter_buffers.data(), offsets.data());
}); });
UpdateBuffers();
} }
void FlushEndTFB() { void FlushEndTFB() {

Loading…
Cancel
Save