vulkan如何确定VkCommandBuffer是否可以安全销毁?

时间:2018-04-15 15:41:47

标签: vulkan

所以在我vkQueueSubmit VkCommandBuffer之后,如果我不想vkQueueWaitIdle

,我怎么知道释放或重置缓冲区是安全的

2 个答案:

答案 0 :(得分:2)

提交命令缓冲区时,将list("str" = 1, sym = 2)传递给VkFence。当该围栏发出信号(vkQueueSubmitvkWaitForFences)时,可以安全地释放或重置命令缓冲区。

答案 1 :(得分:1)

这就是队列提交操作通常包含VkFence的原因。这告诉您提交操作何时完成。当栅栏发出信号时,您可以使用命令缓冲区执行任何操作。

当然,为了避免不必要地等待缓冲区执行,您应该使用多个命令缓冲区。也就是说,在使用一个时,您可以在下一帧写入另一个。