销毁呈现表面
译者注:示例代码点击此处
呈现表面代表我们应用程序的窗口。除其他目的外,它还在交换链创建时使用。这就是为什么应该在基于给定表面的交换链销毁完成之后再销毁呈现表面。
怎么做...
1.准备Vulkan实例的句柄并将其储存在VkInstance类型实例的变量中。
2.获取呈现表面的句柄,将其储存在名为presentation_surface的VkSurfaceKHR类型变量中。
3.调用vkDestroySurfaceKHR( instance, presentation_surface, nullptr )第一个参数提供实例句柄,第二个参数提供要销毁的呈现表面句柄,最后一个为nullptr。
4.出于安全原因,请为presentation_surface变量分配VK_NULL_HANDLE值。
这个怎么运作...
呈现表面的销毁与迄今为止的其他Vulkan资源的销毁非常相似。我们确保他不是VK_NULL_HANDLE值,并调用vkDestroySurfaceKHR()值,之后我们为presentation_surface变量分配VK_NULL_HANDLE值。
if( presentation_surface ) {
vkDestroySurfaceKHR( instance, presentation_surface, nullptr );
presentation_surface = VK_NULL_HANDLE;
}