diff --git a/renderdoc/driver/vulkan/vk_core.h b/renderdoc/driver/vulkan/vk_core.h index b5877a7c1..9f89b6b67 100644 --- a/renderdoc/driver/vulkan/vk_core.h +++ b/renderdoc/driver/vulkan/vk_core.h @@ -376,6 +376,19 @@ private: void BeginCaptureFrame(); void FinishCapture(); void EndCaptureFrame(VkImage presentImage); + + template + void WrapResource(realtype &obj) + { + RDCASSERT(obj != VK_NULL_HANDLE); + + ResourceId id = ResourceIDGen::GetNewUniqueID(); + typename UnwrapHelper::Outer *wrapped = new typename UnwrapHelper::Outer(obj, id); + + GetResourceManager()->AddCurrentResource(id, wrapped); + + obj = UnwrapHelper::ToHandle((uint64_t)(uintptr_t)wrapped); + } // replay