【发布时间】:2016-06-26 10:08:28
【问题描述】:
是否有可能有一个不写入通道的所有颜色附件的管道(带有适当的片段着色器)?例如Pass 有 2xColor + 1depth 附件。有的fragment程序可能同时写color01+depth,有的只写color0+depth。
仅将未使用附件的 colorWriteMask 设置为 none 是不成功的。我一直无法找到将通过验证层的管道配置。它总是抱怨额外的附件不是由片段着色器编写的。
【问题讨论】:
-
正如 Nicol 所说,规范中没有明确允许这样做的内容,因此这可能是错误的验证。您使用的是最新的验证层还是 SDK 中的那些?我缺少两件事:您是否使用子通行证?您是否收到验证错误或警告?如果您确定这是一个错误的验证,最好在at the valdation layer repo 报告问题。
-
如果我们不知道层报告的什么,“未通过验证”也无济于事。此外,查看一些失败尝试的代码也会很有帮助。
-
已阐明 Vulkan 规范;有关详细信息,请参阅我的答案。简短版:是的,这是一个验证层错误。