Vulkan重置栅栏

Vulkan重置栅栏
信号是通过自动方式重置的,但是当栅栏的状态变为已发出后,就会由应用程序负责将栅栏重置回未发出状态。

具体处理过程

(1)将已创建逻辑设备的句柄存储到一个VkDevice类型的变量中,将该变量命名为logical_device。
(2)创建一个vector容器变量,将该变量中的元素类型设置为VkFence,将其命名为fences,该变量用于存储所有应该重置的栅栏的句柄。
(3)调用vkResetFences(logical_device,static_cast<uint32_t>(fences.size()),&fences[0])函数。将第一个参数设置为logical_device变量;将第二个参数设置为vector容器变量fences中含有元素的数量;将第三个参数设置为指向vector容器变量fences中第一个元素的指针。
通过查明该函数调用操作的返回值等于VK_SUCCESS,确认该函数调用操作成功完成。

具体运行情况

当想要了解已提交的命令是否已经被执行完时,可以使用栅栏,但是不能使用已经切换到已发出状态的栅栏。要使用这种栅栏必须先重置它们,这意味着将栅栏的状态从已发出状态切换为未发出状态。与自动重置的信号不同,可以通过应用程序以显式方式重置栅栏,使用下列代码可以重置栅栏。
Vulkan重置栅栏

酷客网相关文章:

赞(0)

评论 抢沙发

评论前必须登录!

 

Vulkan实战