记录命令缓冲区后 Vulkan 删除管道

问题描述

首先预先记录命令缓冲区然后处理它使用的管道是否安全?那么在创建命令缓冲区期间使用的其他组件呢?

解决方法

vkDestroyPipeline 的有效使用规则 clearly state

所有提交的引用 pipeline 的命令必须已完成执行

所以不,您不能因为将管道的一些使用记录到 CB 中就直接扔掉它。几乎所有记录到 CB 中的对象都是如此。