清理

VkInstance应该在应用程序结束前进行清除操作。我们可以在cleanup中调用vkDestroyInstance函数完成清除工作:

void cleanup() {
    vkDestroyInstance(instance, nullptr);

    glfwDestroyWindow(window);

    glfwTerminate();
}

vkDestroyInstance函数的参数非常直白。之前提到,Vulkan对象的分配和清除函数都有一个可选的分配器回调参数,在本教程,我们没有自定义的分配器,所以,将其设置为nullptr。除了Vulkan实例,其余我们使用Vulkan API创建的对象也需要被清除,且应该在Vulkan实例清除之前被清除。

创建Vulkan实例后,在进行更复杂的操作之前,我们先熟悉一下校验层来帮助我们进行应用程序的调试。

本章节代码:

C++:

https://vulkan-tutorial.com/code/01_instance_creation.cpp