| 1529 | } |
| 1530 | |
| 1531 | void DestroyRenderTarget(VkDevice vk_device, VulkanRenderTarget::VulkanHandle* handle) |
| 1532 | { |
| 1533 | DestroyFrameBuffer(vk_device, handle->m_Framebuffer); |
| 1534 | DestroyRenderPass(vk_device, handle->m_RenderPass); |
| 1535 | // Only destroy CLEAR variants if they are distinct objects. For the main RT both alias |
| 1536 | // context->m_MainRenderPass, which is destroyed by the context teardown instead. |
| 1537 | if (handle->m_RenderPassClear != VK_NULL_HANDLE && handle->m_RenderPassClear != handle->m_RenderPass) |
| 1538 | { |
| 1539 | DestroyRenderPass(vk_device, handle->m_RenderPassClear); |
| 1540 | } |
| 1541 | if (handle->m_RenderPassClearColorDepth != VK_NULL_HANDLE && |
| 1542 | handle->m_RenderPassClearColorDepth != handle->m_RenderPass && |
| 1543 | handle->m_RenderPassClearColorDepth != handle->m_RenderPassClear) |
| 1544 | { |
| 1545 | DestroyRenderPass(vk_device, handle->m_RenderPassClearColorDepth); |
| 1546 | } |
| 1547 | handle->m_Framebuffer = VK_NULL_HANDLE; |
| 1548 | handle->m_RenderPass = VK_NULL_HANDLE; |
| 1549 | handle->m_RenderPassClear = VK_NULL_HANDLE; |
| 1550 | handle->m_RenderPassClearColorDepth = VK_NULL_HANDLE; |
| 1551 | } |
| 1552 | |
| 1553 | void DestroyDeviceBuffer(VkDevice vk_device, DeviceBuffer::VulkanHandle* handle) |
| 1554 | { |
nothing calls this directly
no test coverage detected