Closed gamagan closed 1 month ago
The correct VU would be that in subpass 0, we look at vkCmdBeginRenderPass as stated, in subpass 1+ we look at the parameter in vkCmdNextSubpass. I'll look into a spec fix.
This should be fixed in the 1.3.287 spec update.
validation fix - https://github.com/KhronosGroup/Vulkan-ValidationLayers/pull/8131
Bad description of VUID
VUID-vkCmdExecuteCommands-contents-06018
:This is only true when the
vkCmdExecuteCommands
is being used in the first subpass. IfvkCmdExecuteCommands
is being used in a non-first subpass of the given RenderPass, then the correct value for the RenderPass isVK_SUBPASS_CONTENTS_INLINE
orVK_SUBPASS_CONTENTS_INLINE_AND_SECONDARY_COMMAND_BUFFERS_EXT
This particular VUID mistake tripped me up for a long time, because it makes it sound like it's not possible to have some subpasses made of primary command buffers, while other subpasses are made up of secondary command buffers. That is, it makes it sound like a RenderPass is either made up entirely of subpasses of primary level, or made up entirely of subpass of secondary level, but not both. In fact, it is possible to have mixed subpasses like that.