vulkan - VK_SUBPASS_EXTERNAL 到底是什么?
问题描述
我最近在学习 Vulkan API,但无法理解VK_SUBPASS_EXTERNAL
(分配给VkSubpassDependency::srcSubpass
or VkSubpassDependency::dstSubpass
)是什么意思。官方文档指出:“如果 srcSubpass 等于 VK_SUBPASS_EXTERNAL,则第一个同步范围包括在提交顺序中比用于开始渲染通道实例的 vkCmdBeginRenderPass 更早出现的命令。”
这是否意味着一个子通道可以依赖于位于其他渲染通道中的另一个子通道?还是别的什么?
解决方案
VK_SUBPASS_EXTERNAL
表示给定渲染通道范围之外的任何内容。当用于srcSubpass
它指定渲染通道之前发生的任何事情。当用于它时,dstSubpass
它指定了渲染过程之后发生的任何事情。
这是否意味着一个子通道可以依赖于位于其他渲染通道中的另一个子通道?
这意味着同步机制需要包括在渲染过程之前或之后发生的操作。它可能是另一个渲染通道,但也可能是其他一些操作,不一定与渲染通道相关。
推荐阅读
- java - 在一个类中组合属性
- java - 在另一个项目中使用您自己的 Java 库?
- asp.net - 在 Asp mvc 中更改日期格式
- c++ - (C ++)在小循环中使用加法运算符的无限零
- r - prcomp.default(data, scale = FALSE, center = FALSE) 中的错误:无法将常量/零列重新缩放为单位方差
- c - 指针和 .txt 文件
- matrix - 如何对包含整数的列表列表中的每个元素应用算术运算?
- r - 在 R 中具有二项分布和空间自相关的 GAM
- speech-recognition - SpeechRecognition 无法识别正确的单词或字母
- python - DJANGO - 按类别小计和按项目总计