• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2020-2021 The Khronos Group Inc.
2//
3// SPDX-License-Identifier: CC-BY-4.0
4// Common Valid Usage
5// Common to attachment description structures
6  * [[VUID-{refpage}-format-06698]]
7    pname:format must: not be VK_FORMAT_UNDEFINED
8  * [[VUID-{refpage}-format-06699]]
9    If pname:format includes a color or depth aspect and pname:loadOp is
10    ename:VK_ATTACHMENT_LOAD_OP_LOAD, then pname:initialLayout must: not be
11    ename:VK_IMAGE_LAYOUT_UNDEFINED
12  * [[VUID-{refpage}-finalLayout-00843]]
13    pname:finalLayout must: not be ename:VK_IMAGE_LAYOUT_UNDEFINED or
14    ename:VK_IMAGE_LAYOUT_PREINITIALIZED
15  * [[VUID-{refpage}-format-03280]]
16    If pname:format is a color format, pname:initialLayout must: not be
17    ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL or
18    ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL
19  * [[VUID-{refpage}-format-03281]]
20    If pname:format is a depth/stencil format, pname:initialLayout must: not
21    be ename:VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
22  * [[VUID-{refpage}-format-03282]]
23    If pname:format is a color format, pname:finalLayout must: not be
24    ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL or
25    ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL
26  * [[VUID-{refpage}-format-03283]]
27    If pname:format is a depth/stencil format, pname:finalLayout must: not
28    be ename:VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
29ifdef::VK_VERSION_1_1,VK_KHR_maintenance2[]
30  * [[VUID-{refpage}-format-06487]]
31    If pname:format is a color format, pname:initialLayout must: not be
32    ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL or
33    ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
34  * [[VUID-{refpage}-format-06488]]
35    If pname:format is a color format, pname:finalLayout must: not be
36    ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL or
37    ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL
38endif::VK_VERSION_1_1,VK_KHR_maintenance2[]
39ifdef::VK_VERSION_1_2,VK_KHR_separate_depth_stencil_layouts[]
40  * [[VUID-{refpage}-separateDepthStencilLayouts-03284]]
41    If the <<features-separateDepthStencilLayouts,
42    pname:separateDepthStencilLayouts>> feature is not enabled,
43    pname:initialLayout must: not be
44    ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
45    ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
46    ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
47    ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL,
48  * [[VUID-{refpage}-separateDepthStencilLayouts-03285]]
49    If the <<features-separateDepthStencilLayouts,
50    pname:separateDepthStencilLayouts>> feature is not enabled,
51    pname:finalLayout must: not be
52    ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
53    ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
54    ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
55    ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL,
56  * [[VUID-{refpage}-format-03286]]
57    If pname:format is a color format, pname:initialLayout must: not be
58    ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
59    ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
60    ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
61    ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
62  * [[VUID-{refpage}-format-03287]]
63    If pname:format is a color format, pname:finalLayout must: not be
64    ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
65    ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
66    ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, or
67    ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
68  * [[VUID-{refpage}-format-06906]]
69    If pname:format is a depth/stencil format which includes both depth and
70    stencil aspects, pname:initialLayout must: not be
71    ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL or
72    ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
73  * [[VUID-{refpage}-format-06907]]
74    If pname:format is a depth/stencil format which includes both depth and
75    stencil aspects, pname:finalLayout must: not be
76    ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL or
77    ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
78  * [[VUID-{refpage}-format-03290]]
79    If pname:format is a depth/stencil format which includes only the depth
80    aspect, pname:initialLayout must: not be
81    ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL or
82    ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
83  * [[VUID-{refpage}-format-03291]]
84    If pname:format is a depth/stencil format which includes only the depth
85    aspect, pname:finalLayout must: not be
86    ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL or
87    ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL
88endif::VK_VERSION_1_2,VK_KHR_separate_depth_stencil_layouts[]
89ifdef::VK_KHR_synchronization2[]
90  * [[VUID-{refpage}-synchronization2-06908]]
91    If the <<features-synchronization2, pname:synchronization2>> feature is
92    not enabled, pname:initialLayout must: not be
93    ename:VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR or
94    ename:VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR
95  * [[VUID-{refpage}-synchronization2-06909]]
96    If the <<features-synchronization2, pname:synchronization2>> feature is
97    not enabled, pname:finalLayout must: not be
98    ename:VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR or
99    ename:VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR
100endif::VK_KHR_synchronization2[]
101ifdef::VK_EXT_attachment_feedback_loop_layout[]
102  * [[VUID-{refpage}-attachmentFeedbackLoopLayout-07309]]
103    If the <<features-attachmentFeedbackLoopLayout,
104    pname:attachmentFeedbackLoopLayout>> feature is not enabled,
105    pname:initialLayout must: not be
106    ename:VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT
107  * [[VUID-{refpage}-attachmentFeedbackLoopLayout-07310]]
108    If the <<features-attachmentFeedbackLoopLayout,
109    pname:attachmentFeedbackLoopLayout>> feature is not enabled,
110    pname:finalLayout must: not be
111    ename:VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT
112endif::VK_EXT_attachment_feedback_loop_layout[]
113// Common Valid Usage
114