MCPcopy Create free account
hub / github.com/ValveSoftware/openvr / Cleanup

Method Cleanup

samples/hellovr_vulkan/hellovr_vulkan_main.cpp:3689–3765  ·  view source on GitHub ↗

----------------------------------------------------------------------------- Purpose: Frees the Vulkan resources for a render model -----------------------------------------------------------------------------

Source from the content-addressed store, hash-verified

3687// Purpose: Frees the Vulkan resources for a render model
3688//-----------------------------------------------------------------------------
3689void VulkanRenderModel::Cleanup()
3690{
3691 if ( m_pVertexBuffer != VK_NULL_HANDLE )
3692 {
3693 vkDestroyBuffer( m_pDevice, m_pVertexBuffer, nullptr );
3694 m_pVertexBuffer = VK_NULL_HANDLE;
3695 }
3696
3697 if ( m_pVertexBufferMemory != VK_NULL_HANDLE )
3698 {
3699 vkFreeMemory( m_pDevice, m_pVertexBufferMemory, nullptr );
3700 m_pVertexBufferMemory = VK_NULL_HANDLE;
3701 }
3702
3703 if ( m_pIndexBuffer != VK_NULL_HANDLE )
3704 {
3705 vkDestroyBuffer( m_pDevice, m_pIndexBuffer, nullptr );
3706 m_pIndexBuffer = VK_NULL_HANDLE;
3707 }
3708
3709 if ( m_pIndexBufferMemory != VK_NULL_HANDLE )
3710 {
3711 vkFreeMemory( m_pDevice, m_pIndexBufferMemory, nullptr );
3712 m_pIndexBufferMemory = VK_NULL_HANDLE;
3713 }
3714
3715 if ( m_pImage != VK_NULL_HANDLE )
3716 {
3717 vkDestroyImage( m_pDevice, m_pImage, nullptr );
3718 m_pImage = VK_NULL_HANDLE;
3719 }
3720
3721 if ( m_pImageMemory != VK_NULL_HANDLE )
3722 {
3723 vkFreeMemory( m_pDevice, m_pImageMemory, nullptr );
3724 m_pImageMemory = VK_NULL_HANDLE;
3725 }
3726
3727 if ( m_pImageView != VK_NULL_HANDLE )
3728 {
3729 vkDestroyImageView( m_pDevice, m_pImageView, nullptr );
3730 m_pImageView = VK_NULL_HANDLE;
3731 }
3732
3733 if ( m_pImageStagingBuffer != VK_NULL_HANDLE )
3734 {
3735 vkDestroyBuffer( m_pDevice, m_pImageStagingBuffer, nullptr );
3736 m_pImageStagingBuffer = VK_NULL_HANDLE;
3737 }
3738
3739 if ( m_pImageStagingBufferMemory != VK_NULL_HANDLE )
3740 {
3741 vkFreeMemory( m_pDevice, m_pImageStagingBufferMemory, nullptr );
3742 m_pImageStagingBufferMemory = VK_NULL_HANDLE;
3743 }
3744
3745 for ( uint32_t nEye = 0; nEye < 2; nEye++ )
3746 {

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected