コード例 #1
0
ファイル: VulkanContext.cpp プロジェクト: Tilka/dolphin
void VulkanContext::DisableDebugReports()
{
  if (m_debug_report_callback != VK_NULL_HANDLE)
  {
    vkDestroyDebugReportCallbackEXT(m_instance, m_debug_report_callback, nullptr);
    m_debug_report_callback = VK_NULL_HANDLE;
  }
}
コード例 #2
0
ファイル: SwapchainRendererBase.cpp プロジェクト: Ryp/Reaper
void vulkan_destroy_debug_callback(VulkanBackend& backend)
{
    Assert(backend.debugCallback != nullptr);

#if defined(REAPER_DEBUG)
    vkDestroyDebugReportCallbackEXT(backend.instance, backend.debugCallback, nullptr);
#endif

    backend.debugCallback = nullptr;
}
コード例 #3
0
ファイル: vkcontext.cpp プロジェクト: VoxlEngine/Voxl
			void VkContext::Destroy() {
				vkDeviceWaitIdle(dev);

				// Free command buffers
				if (drawCmdBuffers.size() > 0) {
					vkFreeCommandBuffers(dev, cmdPool, (u32)drawCmdBuffers.size(),
						&drawCmdBuffers[0]);
				}

				// Destroy command pools
				vkDestroyCommandPool(dev, cmdPool, nullptr);

				// Destroy semaphores
				vkDestroySemaphore(dev, acquireCompleteSemaphore, nullptr);
				vkDestroySemaphore(dev, renderCompleteSemaphore, nullptr);

				// Destroy swapchain image views
				for (u32 i = 0; i < swapchainImageViews.size(); i++) {
					vkDestroyImageView(dev, swapchainImageViews[i], nullptr);
				}

				// Destroy swapchain
				if (swapchain) {
					vkDestroySwapchainKHR(dev, swapchain, nullptr);
				}

				// Destroy surface
				if (surf) {
					vkDestroySurfaceKHR(instance, surf, nullptr);
				}

				// Destroy device
				if (dev) {
					vkDestroyDevice(dev, nullptr);
				}

#ifdef VOXL_DEBUG
				// Destroy debug report callback
				if (msgCallback != VK_NULL_HANDLE) {
					vkDestroyDebugReportCallbackEXT(instance, msgCallback, nullptr);
				}
#endif

				// Destroy instance
				if (instance) {
					vkDestroyInstance(instance, nullptr);
				}

				// Terminate GLFW
				glfwTerminate();
			}
コード例 #4
0
ファイル: C9.cpp プロジェクト: twinaphex/SchaeferGL
C9::~C9()
{
	if (mPhysicalDevices != nullptr)
	{
		delete[]	 mPhysicalDevices;
	}

#ifdef _DEBUG
	if(mCallback != VK_NULL_HANDLE)
	{
		vkDestroyDebugReportCallbackEXT(mInstance, mCallback, nullptr);
	}
#endif

	if (mInstance != VK_NULL_HANDLE)
	{
		vkDestroyInstance(mInstance, nullptr);
	}	
}