From 20b54f308687b66f5a93ac55e9844ad13131c715 Mon Sep 17 00:00:00 2001 From: kd-11 Date: Thu, 12 Jun 2025 14:58:03 +0300 Subject: [PATCH] vk: Correctly initialize descriptor copy data --- rpcs3/Emu/RSX/VK/VKProgramPipeline.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/rpcs3/Emu/RSX/VK/VKProgramPipeline.cpp b/rpcs3/Emu/RSX/VK/VKProgramPipeline.cpp index 27caf615d2..fb8450a166 100644 --- a/rpcs3/Emu/RSX/VK/VKProgramPipeline.cpp +++ b/rpcs3/Emu/RSX/VK/VKProgramPipeline.cpp @@ -496,6 +496,8 @@ namespace vk }; m_copy_cmds.clear(); + rsx::flags32_t type_mask = 0u; + for (unsigned i = 0; i < m_descriptor_slots.size(); ++i) { if (m_descriptors_dirty[i]) @@ -514,9 +516,11 @@ namespace vk .dstBinding = i, .descriptorCount = 1 }); + + type_mask |= (1u << m_descriptor_types[i]); } - m_descriptor_set.push(m_copy_cmds); // Write previous state + m_descriptor_set.push(m_copy_cmds, type_mask); // Write previous state m_previous_set = m_descriptor_set.value(); m_descriptor_set = allocate_descriptor_set();