繁体   English   中英

VK_IMAGE_LAYOUT_UNDEFINED与VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL作为帧缓冲区附件的初始布局

[英]VK_IMAGE_LAYOUT_UNDEFINED vs VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL as initial layout for Framebuffer attachment

我看到建议将初始布局设置为VK_IMAGE_LAYOUT_UNDEFINED,因为当将其用作下一个渲染过程的目标时,我们真的不在乎其内容。

但是,如果我知道要附加图像以作为颜色目标,将它设置为VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL更好吗,它会告诉驾驶员确切的含义?

渲染通道附件的初始布局是图像在渲染通道开始之前所处的布局。 您并不是在说“将图像放入此布局”; 您说的是“图像已经在此布局中”。 因此,除非该图像已经在颜色附件布局中,否则这不是设置为初始布局的适当布局。 如果将布局设置为“未定义”,则基本上是在说“我不在乎”。

每个子通道指定其使用的附件将在该子通道中放入的布局。 因此,当使用该附件的第一个子通道开始时,它将执行从初始布局到子通道的布局的布局转换。

如果渲染过程清除了图像,则图像的初始布局无关紧要。 清除操作将覆盖纹理的数据(请注意,不会进行任何实际的写入操作),并且当使用附件的第一个子通道开始时,写入的数据将位于该子通道的布局中。

它不应该比在初始布局和第一个子通道布局中使用相同的布局慢。 只要您要清除图像。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM