From a1d2a75e3babf465207d7dd4d77935bd4c23a9b0 Mon Sep 17 00:00:00 2001 From: baldurk Date: Sun, 7 Feb 2016 17:20:24 +0100 Subject: [PATCH] Fix for 'Ref all resources' on vulkan - don't ref baked cmd buffers --- renderdoc/driver/vulkan/vk_manager.cpp | 2 +- renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/renderdoc/driver/vulkan/vk_manager.cpp b/renderdoc/driver/vulkan/vk_manager.cpp index b5a314d3b..7eb9bc103 100644 --- a/renderdoc/driver/vulkan/vk_manager.cpp +++ b/renderdoc/driver/vulkan/vk_manager.cpp @@ -37,7 +37,7 @@ void Serialiser::Serialise(const char *name, ImageRegionState &el) bool VulkanResourceManager::SerialisableResource(ResourceId id, VkResourceRecord *record) { - if(id == m_Core->GetContextResourceID()) + if(record->SpecialResource || id == m_Core->GetContextResourceID()) return false; return true; } diff --git a/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp index b519f68d9..9ccfb64a6 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp @@ -450,6 +450,7 @@ VkResult WrappedVulkan::vkBeginCommandBuffer( record->bakedCommands->Delete(GetResourceManager()); record->bakedCommands = GetResourceManager()->AddResourceRecord(ResourceIDGen::GetNewUniqueID()); + record->bakedCommands->SpecialResource = true; record->bakedCommands->Resource = (WrappedVkRes *)commandBuffer; record->bakedCommands->cmdInfo = new CmdBufferRecordingInfo();