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();