// Copyright 2020-2021 The Khronos Group Inc. // // SPDX-License-Identifier: CC-BY-4.0 // Common Valid Usage // Common to subpass description structures * [[VUID-{refpage}-attachment-06912]] If the pname:attachment member of an element of pname:pInputAttachments is not ename:VK_ATTACHMENT_UNUSED, its pname:layout member must: not be ename:VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL or ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL * [[VUID-{refpage}-attachment-06913]] If the pname:attachment member of an element of pname:pColorAttachments is not ename:VK_ATTACHMENT_UNUSED, its pname:layout member must: not be ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL or ename:VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL * [[VUID-{refpage}-attachment-06914]] If the pname:attachment member of an element of pname:pResolveAttachments is not ename:VK_ATTACHMENT_UNUSED, its pname:layout member must: not be ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL or ename:VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL * [[VUID-{refpage}-attachment-06915]] If the pname:attachment member of pname:pDepthStencilAttachment is not ename:VK_ATTACHMENT_UNUSED, ts pname:layout member must: not be ename:VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL or ename:VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL ifdef::VK_VERSION_1_1,VK_KHR_maintenance2[] * [[VUID-{refpage}-attachment-06916]] If the pname:attachment member of an element of pname:pColorAttachments is not ename:VK_ATTACHMENT_UNUSED, its pname:layout member must: not be ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL or ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL * [[VUID-{refpage}-attachment-06917]] If the pname:attachment member of an element of pname:pResolveAttachments is not ename:VK_ATTACHMENT_UNUSED, its pname:layout member must: not be ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL or ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL endif::VK_VERSION_1_1,VK_KHR_maintenance2[] ifdef::VK_VERSION_1_2,VK_KHR_separate_depth_stencil_layouts[] * [[VUID-{refpage}-attachment-06918]] If the pname:attachment member of an element of pname:pInputAttachments is not ename:VK_ATTACHMENT_UNUSED, its pname:layout member must: not be ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL or ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL * [[VUID-{refpage}-attachment-06919]] If the pname:attachment member of an element of pname:pColorAttachments is not ename:VK_ATTACHMENT_UNUSED, its pname:layout member must: not be ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL, ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL, ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL * [[VUID-{refpage}-attachment-06920]] If the pname:attachment member of an element of pname:pResolveAttachments is not ename:VK_ATTACHMENT_UNUSED, its pname:layout member must: not be ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL, ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL, ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL endif::VK_VERSION_1_2,VK_KHR_separate_depth_stencil_layouts[] ifdef::VK_KHR_synchronization2[] * [[VUID-{refpage}-attachment-06921]] If the pname:attachment member of an element of pname:pInputAttachments is not ename:VK_ATTACHMENT_UNUSED, its pname:layout member must: not be ename:VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR * [[VUID-{refpage}-attachment-06922]] If the pname:attachment member of an element of pname:pColorAttachments is not ename:VK_ATTACHMENT_UNUSED, its pname:layout member must: not be ename:VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR * [[VUID-{refpage}-attachment-06923]] If the pname:attachment member of an element of pname:pResolveAttachments is not ename:VK_ATTACHMENT_UNUSED, its pname:layout member must: not be ename:VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR endif::VK_KHR_synchronization2[] // Common Valid Usage