Vulkan销毁逻辑设备

销毁逻辑设备
我们编写的应用程序在完成工作后,应将现场恢复原样。尽管当Vulkan实例被销毁时驱动程序会自动释放所有资源,但我们仍然应该遵守良好的编程指导原则,在应用程序中以显式方式释放这些资源。应按照与占用资源相反的次序释放资源。
TIP 释放资源的次序应与占用资源的次序相反。

在本章中,逻辑设备是最后一个被创建的对象,因此应该最先销毁(释放)它。

具体处理过程
(1)逻辑设备的句柄存储在一个类型为VkDevice、名为logical_device的变量中,应获取该逻辑设备的句柄。
(2)调用vkDestroyDevice(logical_device,nullptr)函数,将第一个参数设置为logical_device,将第二个参数设置为nullptr。
(3)为安全起见,应将VK_NULL_HANDLE(代表空句柄的常量)赋予logical_device变量。

具体运行情况
销毁逻辑设备的实现代码非常简单:

Vulkan销毁逻辑设备
首先,应查明逻辑设备的句柄是否合法,因为不应该销毁不是由我们创建的逻辑对象。然后,通过调用vkDestroyDevice()函数销毁逻辑设备,并将VK_NULL_HANDLE赋予用于存储逻辑设备句柄的变量。这样做的目的是预防意外出错,防止销毁同一个逻辑对象两次。
注意,销毁逻辑对象后,就不能再使用通过该逻辑设备获取的设备级函数。

酷客网相关文章:

赞(0)

评论 抢沙发

评论前必须登录!

 

Vulkan实战