summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--include/vulkan/vk_platform.h12
-rw-r--r--include/vulkan/vulkan.h12
-rw-r--r--include/vulkan/vulkan.hpp2
-rw-r--r--include/vulkan/vulkan_core.h2
-rw-r--r--registry/generator.py3
-rwxr-xr-xregistry/genvk.py3
-rw-r--r--registry/validusage.json1482
-rw-r--r--registry/vk.xml2
8 files changed, 787 insertions, 731 deletions
diff --git a/include/vulkan/vk_platform.h b/include/vulkan/vk_platform.h
index dbb0112..048322d 100644
--- a/include/vulkan/vk_platform.h
+++ b/include/vulkan/vk_platform.h
@@ -4,17 +4,7 @@
/*
** Copyright (c) 2014-2020 The Khronos Group Inc.
**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-** http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
+** SPDX-License-Identifier: Apache-2.0
*/
diff --git a/include/vulkan/vulkan.h b/include/vulkan/vulkan.h
index 20ecd10..cb65358 100644
--- a/include/vulkan/vulkan.h
+++ b/include/vulkan/vulkan.h
@@ -4,17 +4,7 @@
/*
** Copyright (c) 2015-2020 The Khronos Group Inc.
**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-** http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
+** SPDX-License-Identifier: Apache-2.0
*/
#include "vk_platform.h"
diff --git a/include/vulkan/vulkan.hpp b/include/vulkan/vulkan.hpp
index d7842c4..0786a48 100644
--- a/include/vulkan/vulkan.hpp
+++ b/include/vulkan/vulkan.hpp
@@ -53,7 +53,7 @@
#endif
-static_assert( VK_HEADER_VERSION == 143 , "Wrong VK_HEADER_VERSION!" );
+static_assert( VK_HEADER_VERSION == 144 , "Wrong VK_HEADER_VERSION!" );
// 32-bit vulkan is not typesafe for handles, so don't allow copy constructors on this platform by default.
// To enable this feature on 32-bit platforms please define VULKAN_HPP_TYPESAFE_CONVERSION
diff --git a/include/vulkan/vulkan_core.h b/include/vulkan/vulkan_core.h
index 18795bf..e6ffd27 100644
--- a/include/vulkan/vulkan_core.h
+++ b/include/vulkan/vulkan_core.h
@@ -43,7 +43,7 @@ extern "C" {
#define VK_API_VERSION_1_0 VK_MAKE_VERSION(1, 0, 0)// Patch version should always be set to 0
// Version of this file
-#define VK_HEADER_VERSION 143
+#define VK_HEADER_VERSION 144
// Complete version of this file
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_VERSION(1, 2, VK_HEADER_VERSION)
diff --git a/registry/generator.py b/registry/generator.py
index e563209..22269f2 100644
--- a/registry/generator.py
+++ b/registry/generator.py
@@ -662,7 +662,8 @@ class OutputGenerator:
directory = Path(self.genOpts.directory)
if not Path.exists(directory):
os.makedirs(directory)
- shutil.move(self.outFile.name, self.genOpts.directory + '/' + self.genOpts.filename)
+ shutil.copy(self.outFile.name, self.genOpts.directory + '/' + self.genOpts.filename)
+ os.remove(self.outFile.name)
self.genOpts = None
def beginFeature(self, interface, emit):
diff --git a/registry/genvk.py b/registry/genvk.py
index 32243c8..961d9a4 100755
--- a/registry/genvk.py
+++ b/registry/genvk.py
@@ -96,11 +96,12 @@ def makeGenOpts(args):
featuresPat = makeREstring(features, allFeatures)
# Copyright text prefixing all headers (list of strings).
+ # The SPDX formatting below works around constraints of the 'reuse' tool
prefixStrings = [
'/*',
'** Copyright (c) 2015-2020 The Khronos Group Inc.',
'**',
- '** SPDX-License-Identifier: Apache-2.0',
+ '** SPDX' + '-License-Identifier: Apache-2.0',
'*/',
''
]
diff --git a/registry/validusage.json b/registry/validusage.json
index 1c2df93..2a4d52c 100644
--- a/registry/validusage.json
+++ b/registry/validusage.json
@@ -1,9 +1,9 @@
{
"version info": {
"schema version": 2,
- "api version": "1.2.143",
- "comment": "from git branch: github-master commit: f6a10a5af095938e2a6ac8581b7f848a4b324f46",
- "date": "2020-06-08 10:51:25Z"
+ "api version": "1.2.144",
+ "comment": "from git branch: github-master commit: 9d84b7e4992f764224b9d64a61105123a0860967",
+ "date": "2020-06-15 07:56:44Z"
},
"validation": {
"vkGetInstanceProcAddr": {
@@ -2761,16 +2761,16 @@
"vkCmdSetEvent": {
"core": [
{
- "vuid": "VUID-vkCmdSetEvent-None-04090",
- "text": " If the <a href=\"#features-geometryShader\">geometry shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT</code>"
+ "vuid": "VUID-vkCmdSetEvent-stageMask-04090",
+ "text": " If the <a href=\"#features-geometryShader\">geometry shaders</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT</code>"
},
{
- "vuid": "VUID-vkCmdSetEvent-None-04091",
- "text": " If the <a href=\"#features-tessellationShader\">tessellation shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT</code> or <code>VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT</code>"
+ "vuid": "VUID-vkCmdSetEvent-stageMask-04091",
+ "text": " If the <a href=\"#features-tessellationShader\">tessellation shaders</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT</code> or <code>VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT</code>"
},
{
- "vuid": "VUID-vkCmdSetEvent-queueFamilyIndex-4098",
- "text": " Any pipeline stage included in pname:{stageMaskName} <strong class=\"purple\">must</strong> be supported by the capabilities of the queue family specified by the <code>queueFamilyIndex</code> member of the <a href=\"#VkCommandPoolCreateInfo\">VkCommandPoolCreateInfo</a> structure that was used to create the <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from, as specified in the <a href=\"#synchronization-pipeline-stages-supported\">table of supported pipeline stages</a>"
+ "vuid": "VUID-vkCmdSetEvent-stageMask-4098",
+ "text": " Any pipeline stage included in pname:stageMask <strong class=\"purple\">must</strong> be supported by the capabilities of the queue family specified by the <code>queueFamilyIndex</code> member of the <a href=\"#VkCommandPoolCreateInfo\">VkCommandPoolCreateInfo</a> structure that was used to create the <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from, as specified in the <a href=\"#synchronization-pipeline-stages-supported\">table of supported pipeline stages</a>"
},
{
"vuid": "VUID-vkCmdSetEvent-stageMask-01149",
@@ -2811,36 +2811,36 @@
],
"(VK_EXT_conditional_rendering)": [
{
- "vuid": "VUID-vkCmdSetEvent-None-04092",
- "text": " If the <a href=\"#features-conditionalRendering\">conditional rendering</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdSetEvent-stageMask-04092",
+ "text": " If the <a href=\"#features-conditionalRendering\">conditional rendering</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT</code>"
}
],
"(VK_EXT_fragment_density_map)": [
{
- "vuid": "VUID-vkCmdSetEvent-None-04093",
- "text": " If the <a href=\"#features-fragmentDensityMap\">fragment density map</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdSetEvent-stageMask-04093",
+ "text": " If the <a href=\"#features-fragmentDensityMap\">fragment density map</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT</code>"
}
],
"(VK_EXT_transform_feedback)": [
{
- "vuid": "VUID-vkCmdSetEvent-None-04094",
- "text": " If the <a href=\"#features-transformFeedback\">transform feedback</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdSetEvent-stageMask-04094",
+ "text": " If the <a href=\"#features-transformFeedback\">transform feedback</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT</code>"
}
],
"(VK_NV_mesh_shader)": [
{
- "vuid": "VUID-vkCmdSetEvent-None-04095",
- "text": " If the <a href=\"#features-meshShader\">mesh shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV</code>"
+ "vuid": "VUID-vkCmdSetEvent-stageMask-04095",
+ "text": " If the <a href=\"#features-meshShader\">mesh shaders</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV</code>"
},
{
- "vuid": "VUID-vkCmdSetEvent-None-04096",
- "text": " If the <a href=\"#features-taskShader\">task shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV</code>"
+ "vuid": "VUID-vkCmdSetEvent-stageMask-04096",
+ "text": " If the <a href=\"#features-taskShader\">task shaders</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV</code>"
}
],
"(VK_NV_shading_rate_image)": [
{
- "vuid": "VUID-vkCmdSetEvent-None-04097",
- "text": " If the <a href=\"#features-shadingRateImage\">shading rate image</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV</code>"
+ "vuid": "VUID-vkCmdSetEvent-stageMask-04097",
+ "text": " If the <a href=\"#features-shadingRateImage\">shading rate image</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV</code>"
}
],
"(VK_VERSION_1_1,VK_KHR_device_group)": [
@@ -2853,16 +2853,16 @@
"vkCmdResetEvent": {
"core": [
{
- "vuid": "VUID-vkCmdResetEvent-None-04090",
- "text": " If the <a href=\"#features-geometryShader\">geometry shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT</code>"
+ "vuid": "VUID-vkCmdResetEvent-stageMask-04090",
+ "text": " If the <a href=\"#features-geometryShader\">geometry shaders</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT</code>"
},
{
- "vuid": "VUID-vkCmdResetEvent-None-04091",
- "text": " If the <a href=\"#features-tessellationShader\">tessellation shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT</code> or <code>VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT</code>"
+ "vuid": "VUID-vkCmdResetEvent-stageMask-04091",
+ "text": " If the <a href=\"#features-tessellationShader\">tessellation shaders</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT</code> or <code>VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT</code>"
},
{
- "vuid": "VUID-vkCmdResetEvent-queueFamilyIndex-4098",
- "text": " Any pipeline stage included in pname:{stageMaskName} <strong class=\"purple\">must</strong> be supported by the capabilities of the queue family specified by the <code>queueFamilyIndex</code> member of the <a href=\"#VkCommandPoolCreateInfo\">VkCommandPoolCreateInfo</a> structure that was used to create the <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from, as specified in the <a href=\"#synchronization-pipeline-stages-supported\">table of supported pipeline stages</a>"
+ "vuid": "VUID-vkCmdResetEvent-stageMask-4098",
+ "text": " Any pipeline stage included in pname:stageMask <strong class=\"purple\">must</strong> be supported by the capabilities of the queue family specified by the <code>queueFamilyIndex</code> member of the <a href=\"#VkCommandPoolCreateInfo\">VkCommandPoolCreateInfo</a> structure that was used to create the <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from, as specified in the <a href=\"#synchronization-pipeline-stages-supported\">table of supported pipeline stages</a>"
},
{
"vuid": "VUID-vkCmdResetEvent-stageMask-01153",
@@ -2907,36 +2907,36 @@
],
"(VK_EXT_conditional_rendering)": [
{
- "vuid": "VUID-vkCmdResetEvent-None-04092",
- "text": " If the <a href=\"#features-conditionalRendering\">conditional rendering</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdResetEvent-stageMask-04092",
+ "text": " If the <a href=\"#features-conditionalRendering\">conditional rendering</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT</code>"
}
],
"(VK_EXT_fragment_density_map)": [
{
- "vuid": "VUID-vkCmdResetEvent-None-04093",
- "text": " If the <a href=\"#features-fragmentDensityMap\">fragment density map</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdResetEvent-stageMask-04093",
+ "text": " If the <a href=\"#features-fragmentDensityMap\">fragment density map</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT</code>"
}
],
"(VK_EXT_transform_feedback)": [
{
- "vuid": "VUID-vkCmdResetEvent-None-04094",
- "text": " If the <a href=\"#features-transformFeedback\">transform feedback</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdResetEvent-stageMask-04094",
+ "text": " If the <a href=\"#features-transformFeedback\">transform feedback</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT</code>"
}
],
"(VK_NV_mesh_shader)": [
{
- "vuid": "VUID-vkCmdResetEvent-None-04095",
- "text": " If the <a href=\"#features-meshShader\">mesh shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV</code>"
+ "vuid": "VUID-vkCmdResetEvent-stageMask-04095",
+ "text": " If the <a href=\"#features-meshShader\">mesh shaders</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV</code>"
},
{
- "vuid": "VUID-vkCmdResetEvent-None-04096",
- "text": " If the <a href=\"#features-taskShader\">task shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV</code>"
+ "vuid": "VUID-vkCmdResetEvent-stageMask-04096",
+ "text": " If the <a href=\"#features-taskShader\">task shaders</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV</code>"
}
],
"(VK_NV_shading_rate_image)": [
{
- "vuid": "VUID-vkCmdResetEvent-None-04097",
- "text": " If the <a href=\"#features-shadingRateImage\">shading rate image</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV</code>"
+ "vuid": "VUID-vkCmdResetEvent-stageMask-04097",
+ "text": " If the <a href=\"#features-shadingRateImage\">shading rate image</a> feature is not enabled, pname:stageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV</code>"
}
],
"(VK_VERSION_1_1,VK_KHR_device_group)": [
@@ -2949,28 +2949,28 @@
"vkCmdWaitEvents": {
"core": [
{
- "vuid": "VUID-vkCmdWaitEvents-None-04090",
- "text": " If the <a href=\"#features-geometryShader\">geometry shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT</code>"
+ "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04090",
+ "text": " If the <a href=\"#features-geometryShader\">geometry shaders</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT</code>"
},
{
- "vuid": "VUID-vkCmdWaitEvents-None-04091",
- "text": " If the <a href=\"#features-tessellationShader\">tessellation shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT</code> or <code>VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT</code>"
+ "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04091",
+ "text": " If the <a href=\"#features-tessellationShader\">tessellation shaders</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT</code> or <code>VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT</code>"
},
{
- "vuid": "VUID-vkCmdWaitEvents-queueFamilyIndex-4098",
- "text": " Any pipeline stage included in pname:{stageMaskName} <strong class=\"purple\">must</strong> be supported by the capabilities of the queue family specified by the <code>queueFamilyIndex</code> member of the <a href=\"#VkCommandPoolCreateInfo\">VkCommandPoolCreateInfo</a> structure that was used to create the <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from, as specified in the <a href=\"#synchronization-pipeline-stages-supported\">table of supported pipeline stages</a>"
+ "vuid": "VUID-vkCmdWaitEvents-srcStageMask-4098",
+ "text": " Any pipeline stage included in pname:srcStageMask <strong class=\"purple\">must</strong> be supported by the capabilities of the queue family specified by the <code>queueFamilyIndex</code> member of the <a href=\"#VkCommandPoolCreateInfo\">VkCommandPoolCreateInfo</a> structure that was used to create the <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from, as specified in the <a href=\"#synchronization-pipeline-stages-supported\">table of supported pipeline stages</a>"
},
{
- "vuid": "VUID-vkCmdWaitEvents-None-04090",
- "text": " If the <a href=\"#features-geometryShader\">geometry shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT</code>"
+ "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04090",
+ "text": " If the <a href=\"#features-geometryShader\">geometry shaders</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT</code>"
},
{
- "vuid": "VUID-vkCmdWaitEvents-None-04091",
- "text": " If the <a href=\"#features-tessellationShader\">tessellation shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT</code> or <code>VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT</code>"
+ "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04091",
+ "text": " If the <a href=\"#features-tessellationShader\">tessellation shaders</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT</code> or <code>VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT</code>"
},
{
- "vuid": "VUID-vkCmdWaitEvents-queueFamilyIndex-4098",
- "text": " Any pipeline stage included in pname:{stageMaskName} <strong class=\"purple\">must</strong> be supported by the capabilities of the queue family specified by the <code>queueFamilyIndex</code> member of the <a href=\"#VkCommandPoolCreateInfo\">VkCommandPoolCreateInfo</a> structure that was used to create the <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from, as specified in the <a href=\"#synchronization-pipeline-stages-supported\">table of supported pipeline stages</a>"
+ "vuid": "VUID-vkCmdWaitEvents-dstStageMask-4098",
+ "text": " Any pipeline stage included in pname:dstStageMask <strong class=\"purple\">must</strong> be supported by the capabilities of the queue family specified by the <code>queueFamilyIndex</code> member of the <a href=\"#VkCommandPoolCreateInfo\">VkCommandPoolCreateInfo</a> structure that was used to create the <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from, as specified in the <a href=\"#synchronization-pipeline-stages-supported\">table of supported pipeline stages</a>"
},
{
"vuid": "VUID-vkCmdWaitEvents-srcAccessMask-02815",
@@ -3063,60 +3063,60 @@
],
"(VK_EXT_conditional_rendering)": [
{
- "vuid": "VUID-vkCmdWaitEvents-None-04092",
- "text": " If the <a href=\"#features-conditionalRendering\">conditional rendering</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04092",
+ "text": " If the <a href=\"#features-conditionalRendering\">conditional rendering</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT</code>"
},
{
- "vuid": "VUID-vkCmdWaitEvents-None-04092",
- "text": " If the <a href=\"#features-conditionalRendering\">conditional rendering</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04092",
+ "text": " If the <a href=\"#features-conditionalRendering\">conditional rendering</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT</code>"
}
],
"(VK_EXT_fragment_density_map)": [
{
- "vuid": "VUID-vkCmdWaitEvents-None-04093",
- "text": " If the <a href=\"#features-fragmentDensityMap\">fragment density map</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04093",
+ "text": " If the <a href=\"#features-fragmentDensityMap\">fragment density map</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT</code>"
},
{
- "vuid": "VUID-vkCmdWaitEvents-None-04093",
- "text": " If the <a href=\"#features-fragmentDensityMap\">fragment density map</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04093",
+ "text": " If the <a href=\"#features-fragmentDensityMap\">fragment density map</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT</code>"
}
],
"(VK_EXT_transform_feedback)": [
{
- "vuid": "VUID-vkCmdWaitEvents-None-04094",
- "text": " If the <a href=\"#features-transformFeedback\">transform feedback</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04094",
+ "text": " If the <a href=\"#features-transformFeedback\">transform feedback</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT</code>"
},
{
- "vuid": "VUID-vkCmdWaitEvents-None-04094",
- "text": " If the <a href=\"#features-transformFeedback\">transform feedback</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04094",
+ "text": " If the <a href=\"#features-transformFeedback\">transform feedback</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT</code>"
}
],
"(VK_NV_mesh_shader)": [
{
- "vuid": "VUID-vkCmdWaitEvents-None-04095",
- "text": " If the <a href=\"#features-meshShader\">mesh shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV</code>"
+ "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04095",
+ "text": " If the <a href=\"#features-meshShader\">mesh shaders</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV</code>"
},
{
- "vuid": "VUID-vkCmdWaitEvents-None-04096",
- "text": " If the <a href=\"#features-taskShader\">task shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV</code>"
+ "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04096",
+ "text": " If the <a href=\"#features-taskShader\">task shaders</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV</code>"
},
{
- "vuid": "VUID-vkCmdWaitEvents-None-04095",
- "text": " If the <a href=\"#features-meshShader\">mesh shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV</code>"
+ "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04095",
+ "text": " If the <a href=\"#features-meshShader\">mesh shaders</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV</code>"
},
{
- "vuid": "VUID-vkCmdWaitEvents-None-04096",
- "text": " If the <a href=\"#features-taskShader\">task shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV</code>"
+ "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04096",
+ "text": " If the <a href=\"#features-taskShader\">task shaders</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV</code>"
}
],
"(VK_NV_shading_rate_image)": [
{
- "vuid": "VUID-vkCmdWaitEvents-None-04097",
- "text": " If the <a href=\"#features-shadingRateImage\">shading rate image</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV</code>"
+ "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04097",
+ "text": " If the <a href=\"#features-shadingRateImage\">shading rate image</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV</code>"
},
{
- "vuid": "VUID-vkCmdWaitEvents-None-04097",
- "text": " If the <a href=\"#features-shadingRateImage\">shading rate image</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV</code>"
+ "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04097",
+ "text": " If the <a href=\"#features-shadingRateImage\">shading rate image</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV</code>"
}
],
"(VK_VERSION_1_1,VK_KHR_device_group)": [
@@ -3129,28 +3129,28 @@
"vkCmdPipelineBarrier": {
"core": [
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04090",
- "text": " If the <a href=\"#features-geometryShader\">geometry shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04090",
+ "text": " If the <a href=\"#features-geometryShader\">geometry shaders</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT</code>"
},
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04091",
- "text": " If the <a href=\"#features-tessellationShader\">tessellation shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT</code> or <code>VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04091",
+ "text": " If the <a href=\"#features-tessellationShader\">tessellation shaders</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT</code> or <code>VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT</code>"
},
{
- "vuid": "VUID-vkCmdPipelineBarrier-queueFamilyIndex-4098",
- "text": " Any pipeline stage included in pname:{stageMaskName} <strong class=\"purple\">must</strong> be supported by the capabilities of the queue family specified by the <code>queueFamilyIndex</code> member of the <a href=\"#VkCommandPoolCreateInfo\">VkCommandPoolCreateInfo</a> structure that was used to create the <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from, as specified in the <a href=\"#synchronization-pipeline-stages-supported\">table of supported pipeline stages</a>"
+ "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-4098",
+ "text": " Any pipeline stage included in pname:srcStageMask <strong class=\"purple\">must</strong> be supported by the capabilities of the queue family specified by the <code>queueFamilyIndex</code> member of the <a href=\"#VkCommandPoolCreateInfo\">VkCommandPoolCreateInfo</a> structure that was used to create the <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from, as specified in the <a href=\"#synchronization-pipeline-stages-supported\">table of supported pipeline stages</a>"
},
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04090",
- "text": " If the <a href=\"#features-geometryShader\">geometry shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04090",
+ "text": " If the <a href=\"#features-geometryShader\">geometry shaders</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT</code>"
},
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04091",
- "text": " If the <a href=\"#features-tessellationShader\">tessellation shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT</code> or <code>VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04091",
+ "text": " If the <a href=\"#features-tessellationShader\">tessellation shaders</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT</code> or <code>VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT</code>"
},
{
- "vuid": "VUID-vkCmdPipelineBarrier-queueFamilyIndex-4098",
- "text": " Any pipeline stage included in pname:{stageMaskName} <strong class=\"purple\">must</strong> be supported by the capabilities of the queue family specified by the <code>queueFamilyIndex</code> member of the <a href=\"#VkCommandPoolCreateInfo\">VkCommandPoolCreateInfo</a> structure that was used to create the <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from, as specified in the <a href=\"#synchronization-pipeline-stages-supported\">table of supported pipeline stages</a>"
+ "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-4098",
+ "text": " Any pipeline stage included in pname:dstStageMask <strong class=\"purple\">must</strong> be supported by the capabilities of the queue family specified by the <code>queueFamilyIndex</code> member of the <a href=\"#VkCommandPoolCreateInfo\">VkCommandPoolCreateInfo</a> structure that was used to create the <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from, as specified in the <a href=\"#synchronization-pipeline-stages-supported\">table of supported pipeline stages</a>"
},
{
"vuid": "VUID-vkCmdPipelineBarrier-srcAccessMask-02815",
@@ -3178,23 +3178,23 @@
},
{
"vuid": "VUID-vkCmdPipelineBarrier-pDependencies-02285",
- "text": " If fname:{refpage} is called within a render pass instance, the render pass <strong class=\"purple\">must</strong> have been created with at least one <a href=\"#VkSubpassDependency\">VkSubpassDependency</a> instance in <code>VkRenderPassCreateInfo</code>::<code>pDependencies</code> that expresses a dependency from the current subpass to itself, with <a href=\"#synchronization-dependencies-scopes\">synchronization scopes</a> and <a href=\"#synchronization-dependencies-access-scopes\">access scopes</a> that are all supersets of the scopes defined in this command"
+ "text": " If fname:vkCmdPipelineBarrier is called within a render pass instance, the render pass <strong class=\"purple\">must</strong> have been created with at least one <a href=\"#VkSubpassDependency\">VkSubpassDependency</a> instance in <code>VkRenderPassCreateInfo</code>::<code>pDependencies</code> that expresses a dependency from the current subpass to itself, with <a href=\"#synchronization-dependencies-scopes\">synchronization scopes</a> and <a href=\"#synchronization-dependencies-access-scopes\">access scopes</a> that are all supersets of the scopes defined in this command"
},
{
"vuid": "VUID-vkCmdPipelineBarrier-bufferMemoryBarrierCount-01178",
- "text": " If fname:{refpage} is called within a render pass instance, it <strong class=\"purple\">must</strong> not include any buffer memory barriers"
+ "text": " If fname:vkCmdPipelineBarrier is called within a render pass instance, it <strong class=\"purple\">must</strong> not include any buffer memory barriers"
},
{
"vuid": "VUID-vkCmdPipelineBarrier-image-04073",
- "text": " If fname:{refpage} is called within a render pass instance, the <code>image</code> member of any image memory barrier included in this command <strong class=\"purple\">must</strong> be an attachment used in the current subpass both as an input attachment, and as either a color or depth/stencil attachment"
+ "text": " If fname:vkCmdPipelineBarrier is called within a render pass instance, the <code>image</code> member of any image memory barrier included in this command <strong class=\"purple\">must</strong> be an attachment used in the current subpass both as an input attachment, and as either a color or depth/stencil attachment"
},
{
"vuid": "VUID-vkCmdPipelineBarrier-oldLayout-01181",
- "text": " If fname:{refpage} is called within a render pass instance, the <code>oldLayout</code> and <code>newLayout</code> members of any image memory barrier included in this command <strong class=\"purple\">must</strong> be equal"
+ "text": " If fname:vkCmdPipelineBarrier is called within a render pass instance, the <code>oldLayout</code> and <code>newLayout</code> members of any image memory barrier included in this command <strong class=\"purple\">must</strong> be equal"
},
{
"vuid": "VUID-vkCmdPipelineBarrier-srcQueueFamilyIndex-01182",
- "text": " If fname:{refpage} is called within a render pass instance, the <code>srcQueueFamilyIndex</code> and <code>dstQueueFamilyIndex</code> members of any image memory barrier included in this command <strong class=\"purple\">must</strong> be equal"
+ "text": " If fname:vkCmdPipelineBarrier is called within a render pass instance, the <code>srcQueueFamilyIndex</code> and <code>dstQueueFamilyIndex</code> members of any image memory barrier included in this command <strong class=\"purple\">must</strong> be equal"
},
{
"vuid": "VUID-vkCmdPipelineBarrier-commandBuffer-parameter",
@@ -3243,66 +3243,66 @@
],
"(VK_EXT_conditional_rendering)": [
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04092",
- "text": " If the <a href=\"#features-conditionalRendering\">conditional rendering</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04092",
+ "text": " If the <a href=\"#features-conditionalRendering\">conditional rendering</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT</code>"
},
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04092",
- "text": " If the <a href=\"#features-conditionalRendering\">conditional rendering</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04092",
+ "text": " If the <a href=\"#features-conditionalRendering\">conditional rendering</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT</code>"
}
],
"(VK_EXT_fragment_density_map)": [
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04093",
- "text": " If the <a href=\"#features-fragmentDensityMap\">fragment density map</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04093",
+ "text": " If the <a href=\"#features-fragmentDensityMap\">fragment density map</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT</code>"
},
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04093",
- "text": " If the <a href=\"#features-fragmentDensityMap\">fragment density map</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04093",
+ "text": " If the <a href=\"#features-fragmentDensityMap\">fragment density map</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT</code>"
}
],
"(VK_EXT_transform_feedback)": [
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04094",
- "text": " If the <a href=\"#features-transformFeedback\">transform feedback</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04094",
+ "text": " If the <a href=\"#features-transformFeedback\">transform feedback</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT</code>"
},
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04094",
- "text": " If the <a href=\"#features-transformFeedback\">transform feedback</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04094",
+ "text": " If the <a href=\"#features-transformFeedback\">transform feedback</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT</code>"
}
],
"(VK_NV_mesh_shader)": [
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04095",
- "text": " If the <a href=\"#features-meshShader\">mesh shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04095",
+ "text": " If the <a href=\"#features-meshShader\">mesh shaders</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV</code>"
},
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04096",
- "text": " If the <a href=\"#features-taskShader\">task shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04096",
+ "text": " If the <a href=\"#features-taskShader\">task shaders</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV</code>"
},
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04095",
- "text": " If the <a href=\"#features-meshShader\">mesh shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04095",
+ "text": " If the <a href=\"#features-meshShader\">mesh shaders</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV</code>"
},
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04096",
- "text": " If the <a href=\"#features-taskShader\">task shaders</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04096",
+ "text": " If the <a href=\"#features-taskShader\">task shaders</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV</code>"
}
],
"(VK_NV_shading_rate_image)": [
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04097",
- "text": " If the <a href=\"#features-shadingRateImage\">shading rate image</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04097",
+ "text": " If the <a href=\"#features-shadingRateImage\">shading rate image</a> feature is not enabled, pname:srcStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV</code>"
},
{
- "vuid": "VUID-vkCmdPipelineBarrier-None-04097",
- "text": " If the <a href=\"#features-shadingRateImage\">shading rate image</a> feature is not enabled, pname:{stageMaskName} <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV</code>"
+ "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04097",
+ "text": " If the <a href=\"#features-shadingRateImage\">shading rate image</a> feature is not enabled, pname:dstStageMask <strong class=\"purple\">must</strong> not contain <code>VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV</code>"
}
],
"(VK_VERSION_1_1,VK_KHR_multiview)": [
{
"vuid": "VUID-vkCmdPipelineBarrier-dependencyFlags-01186",
- "text": " If fname:{refpage} is called outside of a render pass instance, <code>VK_DEPENDENCY_VIEW_LOCAL_BIT</code> <strong class=\"purple\">must</strong> not be included in the dependency flags"
+ "text": " If fname:vkCmdPipelineBarrier is called outside of a render pass instance, <code>VK_DEPENDENCY_VIEW_LOCAL_BIT</code> <strong class=\"purple\">must</strong> not be included in the dependency flags"
}
]
},
@@ -4000,19 +4000,19 @@
},
{
"vuid": "VUID-VkSubpassDescription-pInputAttachments-02647",
- "text": " All attachments in <code>pInputAttachments</code> that are not <code>VK_ATTACHMENT_UNUSED</code> <strong class=\"purple\">must</strong> have formats whose features contain at least one of <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code> or <code>VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT</code>"
+ "text": " All attachments in <code>pInputAttachments</code> that are not <code>VK_ATTACHMENT_UNUSED</code> <strong class=\"purple\">must</strong> have image formats whose <a href=\"#potential-format-features\">potential format features</a> contain at least <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code> or <code>VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT</code>"
},
{
"vuid": "VUID-VkSubpassDescription-pColorAttachments-02648",
- "text": " All attachments in <code>pColorAttachments</code> that are not <code>VK_ATTACHMENT_UNUSED</code> <strong class=\"purple\">must</strong> have formats whose features contain <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code>"
+ "text": " All attachments in <code>pColorAttachments</code> that are not <code>VK_ATTACHMENT_UNUSED</code> <strong class=\"purple\">must</strong> have image formats whose <a href=\"#potential-format-features\">potential format features</a> contain <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code>"
},
{
"vuid": "VUID-VkSubpassDescription-pResolveAttachments-02649",
- "text": " All attachments in <code>pResolveAttachments</code> that are not <code>VK_ATTACHMENT_UNUSED</code> <strong class=\"purple\">must</strong> have formats whose features contain <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code>"
+ "text": " All attachments in <code>pResolveAttachments</code> that are not <code>VK_ATTACHMENT_UNUSED</code> <strong class=\"purple\">must</strong> have image formats whose <a href=\"#potential-format-features\">potential format features</a> contain <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code>"
},
{
"vuid": "VUID-VkSubpassDescription-pDepthStencilAttachment-02650",
- "text": " If <code>pDepthStencilAttachment</code> is not <code>NULL</code> and the attachment is not <code>VK_ATTACHMENT_UNUSED</code> then it <strong class=\"purple\">must</strong> have a format whose features contain <code>VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT</code>"
+ "text": " If <code>pDepthStencilAttachment</code> is not <code>NULL</code> and the attachment is not <code>VK_ATTACHMENT_UNUSED</code> then it <strong class=\"purple\">must</strong> have a image format whose <a href=\"#potential-format-features\">potential format features</a> contain <code>VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT</code>"
},
{
"vuid": "VUID-VkSubpassDescription-pDepthStencilAttachment-01418",
@@ -4510,19 +4510,19 @@
},
{
"vuid": "VUID-VkSubpassDescription2-pInputAttachments-02897",
- "text": " All attachments in <code>pInputAttachments</code> that are not <code>VK_ATTACHMENT_UNUSED</code> <strong class=\"purple\">must</strong> have formats whose features contain at least one of <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code> or <code>VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT</code>"
+ "text": " All attachments in <code>pInputAttachments</code> that are not <code>VK_ATTACHMENT_UNUSED</code> <strong class=\"purple\">must</strong> have image formats whose <a href=\"#potential-format-features\">potential format features</a> contain at least <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code> or <code>VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT</code>"
},
{
"vuid": "VUID-VkSubpassDescription2-pColorAttachments-02898",
- "text": " All attachments in <code>pColorAttachments</code> that are not <code>VK_ATTACHMENT_UNUSED</code> <strong class=\"purple\">must</strong> have formats whose features contain <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code>"
+ "text": " All attachments in <code>pColorAttachments</code> that are not <code>VK_ATTACHMENT_UNUSED</code> <strong class=\"purple\">must</strong> have image formats whose <a href=\"#potential-format-features\">potential format features</a> contain <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code>"
},
{
"vuid": "VUID-VkSubpassDescription2-pResolveAttachments-02899",
- "text": " All attachments in <code>pResolveAttachments</code> that are not <code>VK_ATTACHMENT_UNUSED</code> <strong class=\"purple\">must</strong> have formats whose features contain <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code>"
+ "text": " All attachments in <code>pResolveAttachments</code> that are not <code>VK_ATTACHMENT_UNUSED</code> <strong class=\"purple\">must</strong> have image formats whose <a href=\"#potential-format-features\">potential format features</a> contain <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code>"
},
{
"vuid": "VUID-VkSubpassDescription2-pDepthStencilAttachment-02900",
- "text": " If <code>pDepthStencilAttachment</code> is not <code>NULL</code> and the attachment is not <code>VK_ATTACHMENT_UNUSED</code> then it <strong class=\"purple\">must</strong> have a format whose features contain <code>VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT</code>"
+ "text": " If <code>pDepthStencilAttachment</code> is not <code>NULL</code> and the attachment is not <code>VK_ATTACHMENT_UNUSED</code> then it <strong class=\"purple\">must</strong> have a image format whose <a href=\"#potential-format-features\">potential format features</a> contain <code>VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT</code>"
},
{
"vuid": "VUID-VkSubpassDescription2-pDepthStencilAttachment-03071",
@@ -5237,6 +5237,22 @@
"text": " For any attachment in <code>framebuffer</code> that is used by <code>renderPass</code> and is bound to memory locations that are also bound to another attachment used by <code>renderPass</code>, and if at least one of those uses causes either attachment to be written to, both attachments <strong class=\"purple\">must</strong> have had the <code>VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT</code> set"
},
{
+ "vuid": "VUID-vkCmdBeginRenderPass-pAttachments-04102",
+ "text": " Each element of the <code>pAttachments</code> of <code>framebuffer</code> that is referenced by any element of the <code>pInputAttachments</code> of any element of <code>pSubpasses</code> of <code>renderPass</code> <strong class=\"purple\">must</strong> have <a href=\"#resources-image-view-format-features\">image view format features</a> containing at least <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code> or <code>VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT</code>"
+ },
+ {
+ "vuid": "VUID-vkCmdBeginRenderPass-pAttachments-04103",
+ "text": " Each element of the <code>pAttachments</code> of <code>framebuffer</code> that is referenced by any element of the <code>pColorAttachments</code> of any element of <code>pSubpasses</code> of <code>renderPass</code> <strong class=\"purple\">must</strong> have <a href=\"#resources-image-view-format-features\">image view format features</a> containing <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code>"
+ },
+ {
+ "vuid": "VUID-vkCmdBeginRenderPass-pAttachments-04104",
+ "text": " Each element of the <code>pAttachments</code> of <code>framebuffer</code> that is referenced by any element of the <code>pResolveAttachments</code> of any element of <code>pSubpasses</code> of <code>renderPass</code> <strong class=\"purple\">must</strong> have <a href=\"#resources-image-view-format-features\">image view format features</a> containing <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code>"
+ },
+ {
+ "vuid": "VUID-vkCmdBeginRenderPass-pAttachments-04105",
+ "text": " Each element of the <code>pAttachments</code> of <code>framebuffer</code> that is referenced by any element of the <code>pDepthStencilAttachment</code> of any element of <code>pSubpasses</code> of <code>renderPass</code> <strong class=\"purple\">must</strong> have <a href=\"#resources-image-view-format-features\">image view format features</a> containing <code>VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT</code>"
+ },
+ {
"vuid": "VUID-vkCmdBeginRenderPass-commandBuffer-parameter",
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
},
@@ -5327,6 +5343,22 @@
"text": " For any attachment in <code>framebuffer</code> that is used by <code>renderPass</code> and is bound to memory locations that are also bound to another attachment used by <code>renderPass</code>, and if at least one of those uses causes either attachment to be written to, both attachments <strong class=\"purple\">must</strong> have had the <code>VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT</code> set"
},
{
+ "vuid": "VUID-vkCmdBeginRenderPass2-pAttachments-04106",
+ "text": " Each element of the <code>pAttachments</code> of <code>framebuffer</code> that is referenced by any element of the <code>pInputAttachments</code> of any element of <code>pSubpasses</code> of <code>renderPass</code> <strong class=\"purple\">must</strong> have <a href=\"#resources-image-view-format-features\">image view format features</a> contain at least <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code> or <code>VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT</code>"
+ },
+ {
+ "vuid": "VUID-vkCmdBeginRenderPass2-pAttachments-04107",
+ "text": " Each element of the <code>pAttachments</code> of <code>framebuffer</code> that is referenced by any element of the <code>pColorAttachments</code> of any element of <code>pSubpasses</code> of <code>renderPass</code> <strong class=\"purple\">must</strong> have <a href=\"#resources-image-view-format-features\">image view format features</a> contain <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code>"
+ },
+ {
+ "vuid": "VUID-vkCmdBeginRenderPass2-pAttachments-04108",
+ "text": " Each element of the <code>pAttachments</code> of <code>framebuffer</code> that is referenced by any element of the <code>pResolveAttachments</code> of any element of <code>pSubpasses</code> of <code>renderPass</code> <strong class=\"purple\">must</strong> have <a href=\"#resources-image-view-format-features\">image view format features</a> contain <code>VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT</code>"
+ },
+ {
+ "vuid": "VUID-vkCmdBeginRenderPass2-pAttachments-04109",
+ "text": " Each element of the <code>pAttachments</code> of <code>framebuffer</code> that is referenced by any element of the <code>pDepthStencilAttachment</code> of any element of <code>pSubpasses</code> of <code>renderPass</code> <strong class=\"purple\">must</strong> have <a href=\"#resources-image-view-format-features\">image view format features</a> contain <code>VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT</code>"
+ },
+ {
"vuid": "VUID-vkCmdBeginRenderPass2-commandBuffer-parameter",
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
},
@@ -7605,7 +7637,7 @@
]
},
"vkCreateRayTracingPipelinesNV": {
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)": [
+ "core": [
{
"vuid": "VUID-vkCreateRayTracingPipelinesNV-flags-03415",
"text": " If the <code>flags</code> member of any element of <code>pCreateInfos</code> contains the <code>VK_PIPELINE_CREATE_DERIVATIVE_BIT</code> flag, and the <code>basePipelineIndex</code> member of that same element is not <code>-1</code>, <code>basePipelineIndex</code> <strong class=\"purple\">must</strong> be less than the index into <code>pCreateInfos</code> that corresponds to that element"
@@ -7613,7 +7645,15 @@
{
"vuid": "VUID-vkCreateRayTracingPipelinesNV-flags-03416",
"text": " If the <code>flags</code> member of any element of <code>pCreateInfos</code> contains the <code>VK_PIPELINE_CREATE_DERIVATIVE_BIT</code> flag, the base pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT</code> flag set"
- },
+ }
+ ],
+ "(VK_EXT_pipeline_creation_cache_control)": [
+ {
+ "vuid": "VUID-vkCreateRayTracingPipelinesNV-pipelineCache-02903",
+ "text": " If <code>pipelineCache</code> was created with <code>VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT</code>, host access to <code>pipelineCache</code> <strong class=\"purple\">must</strong> be <a href=\"#fundamentals-threadingbehavior\">externally synchronized</a>"
+ }
+ ],
+ "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)": [
{
"vuid": "VUID-vkCreateRayTracingPipelinesNV-device-parameter",
"text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle"
@@ -7642,16 +7682,10 @@
"vuid": "VUID-vkCreateRayTracingPipelinesNV-pipelineCache-parent",
"text": " If <code>pipelineCache</code> is a valid handle, it <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from <code>device</code>"
}
- ],
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)+(VK_EXT_pipeline_creation_cache_control)": [
- {
- "vuid": "VUID-vkCreateRayTracingPipelinesNV-pipelineCache-02903",
- "text": " If <code>pipelineCache</code> was created with <code>VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT</code>, host access to <code>pipelineCache</code> <strong class=\"purple\">must</strong> be <a href=\"#fundamentals-threadingbehavior\">externally synchronized</a>"
- }
]
},
"vkCreateRayTracingPipelinesKHR": {
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)": [
+ "core": [
{
"vuid": "VUID-vkCreateRayTracingPipelinesKHR-flags-03415",
"text": " If the <code>flags</code> member of any element of <code>pCreateInfos</code> contains the <code>VK_PIPELINE_CREATE_DERIVATIVE_BIT</code> flag, and the <code>basePipelineIndex</code> member of that same element is not <code>-1</code>, <code>basePipelineIndex</code> <strong class=\"purple\">must</strong> be less than the index into <code>pCreateInfos</code> that corresponds to that element"
@@ -7663,7 +7697,15 @@
{
"vuid": "VUID-vkCreateRayTracingPipelinesKHR-rayTracing-03455",
"text": " The <a href=\"#features-raytracing\"><code>rayTracing</code></a> feature <strong class=\"purple\">must</strong> be enabled"
- },
+ }
+ ],
+ "(VK_EXT_pipeline_creation_cache_control)": [
+ {
+ "vuid": "VUID-vkCreateRayTracingPipelinesKHR-pipelineCache-02903",
+ "text": " If <code>pipelineCache</code> was created with <code>VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT</code>, host access to <code>pipelineCache</code> <strong class=\"purple\">must</strong> be <a href=\"#fundamentals-threadingbehavior\">externally synchronized</a>"
+ }
+ ],
+ "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)": [
{
"vuid": "VUID-vkCreateRayTracingPipelinesKHR-device-parameter",
"text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle"
@@ -7692,16 +7734,10 @@
"vuid": "VUID-vkCreateRayTracingPipelinesKHR-pipelineCache-parent",
"text": " If <code>pipelineCache</code> is a valid handle, it <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from <code>device</code>"
}
- ],
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)+(VK_EXT_pipeline_creation_cache_control)": [
- {
- "vuid": "VUID-vkCreateRayTracingPipelinesKHR-pipelineCache-02903",
- "text": " If <code>pipelineCache</code> was created with <code>VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT</code>, host access to <code>pipelineCache</code> <strong class=\"purple\">must</strong> be <a href=\"#fundamentals-threadingbehavior\">externally synchronized</a>"
- }
]
},
"VkRayTracingPipelineCreateInfoNV": {
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)": [
+ "core": [
{
"vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03421",
"text": " If <code>flags</code> contains the <code>VK_PIPELINE_CREATE_DERIVATIVE_BIT</code> flag, and <code>basePipelineIndex</code> is <code>-1</code>, <code>basePipelineHandle</code> <strong class=\"purple\">must</strong> be a valid handle to a ray tracing <code>VkPipeline</code>"
@@ -7737,55 +7773,15 @@
{
"vuid": "VUID-VkRayTracingPipelineCreateInfoNV-maxRecursionDepth-03457",
"text": " <code>maxRecursionDepth</code> <strong class=\"purple\">must</strong> be less than or equal to <a href=\"#VkPhysicalDeviceRayTracingPropertiesNV\">VkPhysicalDeviceRayTracingPropertiesNV</a>::<code>maxRecursionDepth</code>"
- },
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-sType-sType",
- "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV</code>"
- },
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-pNext-pNext",
- "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkPipelineCreationFeedbackCreateInfoEXT\">VkPipelineCreationFeedbackCreateInfoEXT</a>"
- },
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-sType-unique",
- "text": " The <code>sType</code> value of each struct in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be unique"
- },
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-parameter",
- "text": " <code>flags</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkPipelineCreateFlagBits\">VkPipelineCreateFlagBits</a> values"
- },
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-pStages-parameter",
- "text": " <code>pStages</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>stageCount</code> valid <a href=\"#VkPipelineShaderStageCreateInfo\">VkPipelineShaderStageCreateInfo</a> structures"
- },
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-pGroups-parameter",
- "text": " <code>pGroups</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>groupCount</code> valid <a href=\"#VkRayTracingShaderGroupCreateInfoNV\">VkRayTracingShaderGroupCreateInfoNV</a> structures"
- },
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-layout-parameter",
- "text": " <code>layout</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkPipelineLayout\">VkPipelineLayout</a> handle"
- },
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-stageCount-arraylength",
- "text": " <code>stageCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
- },
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-groupCount-arraylength",
- "text": " <code>groupCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
- },
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-commonparent",
- "text": " Both of <code>basePipelineHandle</code>, and <code>layout</code> that are valid handles of non-ignored parameters <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
}
],
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)+(VK_NV_device_generated_commands)": [
+ "(VK_NV_device_generated_commands)": [
{
"vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-02904",
"text": " <code>flags</code> <strong class=\"purple\">must</strong> not include <code>VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV</code>"
}
],
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)+(VK_EXT_pipeline_creation_cache_control)": [
+ "(VK_EXT_pipeline_creation_cache_control)": [
{
"vuid": "VUID-VkRayTracingPipelineCreateInfoNV-pipelineCreationCacheControl-02905",
"text": " If the <a href=\"#features-pipelineCreationCacheControl\"><code>pipelineCreationCacheControl</code></a> feature is not enabled, <code>flags</code> <strong class=\"purple\">must</strong> not include <code>VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT</code> or <code>VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT</code>"
@@ -7795,13 +7791,13 @@
"text": " <code>flags</code> <strong class=\"purple\">must</strong> not include both <code>VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV</code> and <code>VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT</code> at the same time"
}
],
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)+(VK_KHR_pipeline_library)": [
+ "(VK_KHR_pipeline_library)": [
{
"vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03456",
"text": " <code>flags</code> <strong class=\"purple\">must</strong> not include <code>VK_PIPELINE_CREATE_LIBRARY_BIT_KHR</code>"
}
],
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)+(VK_KHR_ray_tracing)": [
+ "(VK_KHR_ray_tracing)": [
{
"vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03458",
"text": " <code>flags</code> <strong class=\"purple\">must</strong> not include <code>VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR</code>"
@@ -7826,10 +7822,52 @@
"vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03463",
"text": " <code>flags</code> <strong class=\"purple\">must</strong> not include <code>VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR</code>"
}
+ ],
+ "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)": [
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-sType-sType",
+ "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV</code>"
+ },
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-pNext-pNext",
+ "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkPipelineCreationFeedbackCreateInfoEXT\">VkPipelineCreationFeedbackCreateInfoEXT</a>"
+ },
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-sType-unique",
+ "text": " The <code>sType</code> value of each struct in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be unique"
+ },
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-parameter",
+ "text": " <code>flags</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkPipelineCreateFlagBits\">VkPipelineCreateFlagBits</a> values"
+ },
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-pStages-parameter",
+ "text": " <code>pStages</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>stageCount</code> valid <a href=\"#VkPipelineShaderStageCreateInfo\">VkPipelineShaderStageCreateInfo</a> structures"
+ },
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-pGroups-parameter",
+ "text": " <code>pGroups</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>groupCount</code> valid <a href=\"#VkRayTracingShaderGroupCreateInfoNV\">VkRayTracingShaderGroupCreateInfoNV</a> structures"
+ },
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-layout-parameter",
+ "text": " <code>layout</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkPipelineLayout\">VkPipelineLayout</a> handle"
+ },
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-stageCount-arraylength",
+ "text": " <code>stageCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
+ },
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-groupCount-arraylength",
+ "text": " <code>groupCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
+ },
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-commonparent",
+ "text": " Both of <code>basePipelineHandle</code>, and <code>layout</code> that are valid handles of non-ignored parameters <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
+ }
]
},
"VkRayTracingPipelineCreateInfoKHR": {
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)": [
+ "core": [
{
"vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-flags-03421",
"text": " If <code>flags</code> contains the <code>VK_PIPELINE_CREATE_DERIVATIVE_BIT</code> flag, and <code>basePipelineIndex</code> is <code>-1</code>, <code>basePipelineHandle</code> <strong class=\"purple\">must</strong> be a valid handle to a ray tracing <code>VkPipeline</code>"
@@ -7889,8 +7927,44 @@
{
"vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-libraries-02959",
"text": " If <code>libraries.libraryCount</code> is zero, then <code>groupCount</code> <strong class=\"purple\">must</strong> not be zero"
+ }
+ ],
+ "(VK_NV_device_generated_commands)": [
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-flags-02904",
+ "text": " <code>flags</code> <strong class=\"purple\">must</strong> not include <code>VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV</code>"
+ }
+ ],
+ "(VK_EXT_pipeline_creation_cache_control)": [
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-pipelineCreationCacheControl-02905",
+ "text": " If the <a href=\"#features-pipelineCreationCacheControl\"><code>pipelineCreationCacheControl</code></a> feature is not enabled, <code>flags</code> <strong class=\"purple\">must</strong> not include <code>VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT</code> or <code>VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT</code>"
+ }
+ ],
+ "(VK_KHR_pipeline_library)": [
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-flags-03465",
+ "text": " If <code>flags</code> includes <code>VK_PIPELINE_CREATE_LIBRARY_BIT_KHR</code>, <code>pLibraryInterface</code> <strong class=\"purple\">must</strong> not be <code>NULL</code>"
+ },
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-libraryCount-03466",
+ "text": " If the <code>libraryCount</code> member of <code>libraries</code> is greater than <code>0</code>, <code>pLibraryInterface</code> <strong class=\"purple\">must</strong> not be <code>NULL</code>"
+ },
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-pLibraries-03467",
+ "text": " Each element of the <code>pLibraries</code> member of <code>libraries</code> <strong class=\"purple\">must</strong> have been created with the value of <code>maxRecursionDepth</code> equal to that in this pipeline"
+ },
+ {
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-pLibraries-03468",
+ "text": " Each element of the <code>pLibraries</code> member of <code>libraries</code> <strong class=\"purple\">must</strong> have been created with a <code>layout</code> that is compatible with the <code>layout</code> in this pipeline"
},
{
+ "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-pLibraries-03469",
+ "text": " Each element of the <code>pLibraries</code> member of <code>libraries</code> <strong class=\"purple\">must</strong> have been created with values of the <code>maxPayloadSize</code>, <code>maxAttributeSize</code>, and <code>maxCallableSize</code> members of <code>pLibraryInterface</code> equal to those in this pipeline"
+ }
+ ],
+ "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)": [
+ {
"vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR</code>"
},
@@ -7930,40 +8004,6 @@
"vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-commonparent",
"text": " Both of <code>basePipelineHandle</code>, and <code>layout</code> that are valid handles of non-ignored parameters <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
}
- ],
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)+(VK_NV_device_generated_commands)": [
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-flags-02904",
- "text": " <code>flags</code> <strong class=\"purple\">must</strong> not include <code>VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV</code>"
- }
- ],
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)+(VK_EXT_pipeline_creation_cache_control)": [
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-pipelineCreationCacheControl-02905",
- "text": " If the <a href=\"#features-pipelineCreationCacheControl\"><code>pipelineCreationCacheControl</code></a> feature is not enabled, <code>flags</code> <strong class=\"purple\">must</strong> not include <code>VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT</code> or <code>VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT</code>"
- }
- ],
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)+(VK_KHR_pipeline_library)": [
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-flags-03465",
- "text": " If <code>flags</code> includes <code>VK_PIPELINE_CREATE_LIBRARY_BIT_KHR</code>, <code>pLibraryInterface</code> <strong class=\"purple\">must</strong> not be <code>NULL</code>"
- },
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-libraryCount-03466",
- "text": " If the <code>libraryCount</code> member of <code>libraries</code> is greater than <code>0</code>, <code>pLibraryInterface</code> <strong class=\"purple\">must</strong> not be <code>NULL</code>"
- },
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-pLibraries-03467",
- "text": " Each element of the <code>pLibraries</code> member of <code>libraries</code> <strong class=\"purple\">must</strong> have been created with the value of <code>maxRecursionDepth</code> equal to that in this pipeline"
- },
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-pLibraries-03468",
- "text": " Each element of the <code>pLibraries</code> member of <code>libraries</code> <strong class=\"purple\">must</strong> have been created with a <code>layout</code> that is compatible with the <code>layout</code> in this pipeline"
- },
- {
- "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-pLibraries-03469",
- "text": " Each element of the <code>pLibraries</code> member of <code>libraries</code> <strong class=\"purple\">must</strong> have been created with values of the <code>maxPayloadSize</code>, <code>maxAttributeSize</code>, and <code>maxCallableSize</code> members of <code>pLibraryInterface</code> equal to those in this pipeline"
- }
]
},
"VkRayTracingShaderGroupCreateInfoNV": {
@@ -8291,6 +8331,10 @@
"text": " <code>pAllocateInfo-&gt;memoryTypeIndex</code> <strong class=\"purple\">must</strong> be less than <a href=\"#VkPhysicalDeviceMemoryProperties\">VkPhysicalDeviceMemoryProperties</a>::<code>memoryTypeCount</code> as returned by <a href=\"#vkGetPhysicalDeviceMemoryProperties\">vkGetPhysicalDeviceMemoryProperties</a> for the <a href=\"#VkPhysicalDevice\">VkPhysicalDevice</a> that <code>device</code> was created from"
},
{
+ "vuid": "VUID-vkAllocateMemory-maxMemoryAllocationCount-04101",
+ "text": " There <strong class=\"purple\">must</strong> be less than <code>VkPhysicalDeviceLimits</code>::<code>maxMemoryAllocationCount</code> device memory allocations currently allocated on the device."
+ },
+ {
"vuid": "VUID-vkAllocateMemory-device-parameter",
"text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle"
},
@@ -12591,6 +12635,10 @@
"vkCreateSampler": {
"core": [
{
+ "vuid": "VUID-vkCreateSampler-maxSamplerAllocationCount-04110",
+ "text": " There <strong class=\"purple\">must</strong> be less than <code>VkPhysicalDeviceLimits</code>::<code>maxSamplerAllocationCount</code> VkSampler objects currently created on the device."
+ },
+ {
"vuid": "VUID-vkCreateSampler-device-parameter",
"text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle"
},
@@ -12702,7 +12750,7 @@
"(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)": [
{
"vuid": "VUID-VkSamplerCreateInfo-minFilter-01645",
- "text": " If <a href=\"#samplers-YCbCr-conversion\">sampler {YCbCr} conversion</a> is enabled and the <a href=\"#resources-sampler-ycbcr-conversion-format-features\">sampler {YCbCr} conversion&#8217;s features</a> do not support <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT</code>, <code>minFilter</code> and <code>magFilter</code> <strong class=\"purple\">must</strong> be equal to the sampler {YCbCr} conversion&#8217;s <code>chromaFilter</code>"
+ "text": " If <a href=\"#samplers-YCbCr-conversion\">sampler {YCbCr} conversion</a> is enabled and the <a href=\"#potential-format-features\">potential format features</a> of the sampler {YCbCr} conversion do not support <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT</code>, <code>minFilter</code> and <code>magFilter</code> <strong class=\"purple\">must</strong> be equal to the sampler {YCbCr} conversion&#8217;s <code>chromaFilter</code>"
},
{
"vuid": "VUID-VkSamplerCreateInfo-addressModeU-01646",
@@ -12884,15 +12932,15 @@
"(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)": [
{
"vuid": "VUID-VkSamplerYcbcrConversionCreateInfo-format-01650",
- "text": " The <a href=\"#resources-sampler-ycbcr-conversion-format-features\">sampler {YCbCr} conversion&#8217;s features</a> <strong class=\"purple\">must</strong> support <code>VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT</code> or <code>VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT</code>"
+ "text": " The <a href=\"#potential-format-features\">potential format features</a> of the sampler {YCbCr} conversion <strong class=\"purple\">must</strong> support <code>VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT</code> or <code>VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT</code>"
},
{
"vuid": "VUID-VkSamplerYcbcrConversionCreateInfo-xChromaOffset-01651",
- "text": " If the <a href=\"#resources-sampler-ycbcr-conversion-format-features\">sampler {YCbCr} conversion&#8217;s features</a> do not support <code>VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT</code>, <code>xChromaOffset</code> and <code>yChromaOffset</code> <strong class=\"purple\">must</strong> not be <code>VK_CHROMA_LOCATION_COSITED_EVEN</code>"
+ "text": " If the <a href=\"#potential-format-features\">potential format features</a> of the sampler {YCbCr} conversion do not support <code>VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT</code>, <code>xChromaOffset</code> and <code>yChromaOffset</code> <strong class=\"purple\">must</strong> not be <code>VK_CHROMA_LOCATION_COSITED_EVEN</code>"
},
{
"vuid": "VUID-VkSamplerYcbcrConversionCreateInfo-xChromaOffset-01652",
- "text": " If the <a href=\"#resources-sampler-ycbcr-conversion-format-features\">sampler {YCbCr} conversion&#8217;s features</a> do not support <code>VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT</code>, <code>xChromaOffset</code> and <code>yChromaOffset</code> <strong class=\"purple\">must</strong> not be <code>VK_CHROMA_LOCATION_MIDPOINT</code>"
+ "text": " If the <a href=\"#potential-format-features\">potential format features</a> of the sampler {YCbCr} conversion do not support <code>VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT</code>, <code>xChromaOffset</code> and <code>yChromaOffset</code> <strong class=\"purple\">must</strong> not be <code>VK_CHROMA_LOCATION_MIDPOINT</code>"
},
{
"vuid": "VUID-VkSamplerYcbcrConversionCreateInfo-components-02581",
@@ -12924,11 +12972,11 @@
},
{
"vuid": "VUID-VkSamplerYcbcrConversionCreateInfo-forceExplicitReconstruction-01656",
- "text": " If the <a href=\"#resources-sampler-ycbcr-conversion-format-features\">sampler {YCbCr} conversion&#8217;s features</a> do not support <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT</code> <code>forceExplicitReconstruction</code> <strong class=\"purple\">must</strong> be <code>VK_FALSE</code>"
+ "text": " If the <a href=\"#potential-format-features\">potential format features</a> of the sampler {YCbCr} conversion do not support <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT</code> <code>forceExplicitReconstruction</code> <strong class=\"purple\">must</strong> be <code>VK_FALSE</code>"
},
{
"vuid": "VUID-VkSamplerYcbcrConversionCreateInfo-chromaFilter-01657",
- "text": " If the <a href=\"#resources-sampler-ycbcr-conversion-format-features\">sampler {YCbCr} conversion&#8217;s features</a> do not support <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT</code>, <code>chromaFilter</code> <strong class=\"purple\">must</strong> not be <code>VK_FILTER_LINEAR</code>"
+ "text": " If the <a href=\"#potential-format-features\">potential format features</a> of the sampler {YCbCr} conversion do not support <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT</code>, <code>chromaFilter</code> <strong class=\"purple\">must</strong> not be <code>VK_FILTER_LINEAR</code>"
},
{
"vuid": "VUID-VkSamplerYcbcrConversionCreateInfo-sType-sType",
@@ -15021,7 +15069,7 @@
]
},
"vkCmdBeginQueryIndexedEXT": {
- "(VK_EXT_transform_feedback)": [
+ "core": [
{
"vuid": "VUID-vkCmdBeginQueryIndexedEXT-queryPool-01922",
"text": " <code>queryPool</code> <strong class=\"purple\">must</strong> have been created with a <code>queryType</code> that differs from that of any queries that are <a href=\"#queries-operation-active\">active</a> within <code>commandBuffer</code>"
@@ -15069,45 +15117,21 @@
{
"vuid": "VUID-vkCmdBeginQueryIndexedEXT-queryType-02341",
"text": " If the <code>queryType</code> used to create <code>queryPool</code> was <code>VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT</code> then <code>VkPhysicalDeviceTransformFeedbackPropertiesEXT</code>::<code>transformFeedbackQueries</code> <strong class=\"purple\">must</strong> be supported"
- },
- {
- "vuid": "VUID-vkCmdBeginQueryIndexedEXT-commandBuffer-parameter",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdBeginQueryIndexedEXT-queryPool-parameter",
- "text": " <code>queryPool</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkQueryPool\">VkQueryPool</a> handle"
- },
- {
- "vuid": "VUID-vkCmdBeginQueryIndexedEXT-flags-parameter",
- "text": " <code>flags</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkQueryControlFlagBits\">VkQueryControlFlagBits</a> values"
- },
- {
- "vuid": "VUID-vkCmdBeginQueryIndexedEXT-commandBuffer-recording",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
- },
- {
- "vuid": "VUID-vkCmdBeginQueryIndexedEXT-commandBuffer-cmdpool",
- "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics, or compute operations"
- },
- {
- "vuid": "VUID-vkCmdBeginQueryIndexedEXT-commonparent",
- "text": " Both of <code>commandBuffer</code>, and <code>queryPool</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
}
],
- "(VK_EXT_transform_feedback)+(VK_VERSION_1_1)": [
+ "(VK_VERSION_1_1)": [
{
"vuid": "VUID-vkCmdBeginQueryIndexedEXT-commandBuffer-01885",
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> not be a protected command buffer"
}
],
- "(VK_EXT_transform_feedback)+(VK_VERSION_1_1,VK_KHR_multiview)": [
+ "(VK_VERSION_1_1,VK_KHR_multiview)": [
{
"vuid": "VUID-vkCmdBeginQueryIndexedEXT-query-00808",
"text": " If called within a render pass instance, the sum of <code>query</code> and the number of bits set in the current subpass&#8217;s view mask <strong class=\"purple\">must</strong> be less than or equal to the number of queries in <code>queryPool</code>"
}
],
- "(VK_EXT_transform_feedback)+(VK_KHR_performance_query)": [
+ "(VK_KHR_performance_query)": [
{
"vuid": "VUID-vkCmdBeginQueryIndexedEXT-queryPool-03223",
"text": " If <code>queryPool</code> was created with a <code>queryType</code> of <code>VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR</code>, the <a href=\"#profiling-lock\">profiling lock</a> <strong class=\"purple\">must</strong> have been held before <a href=\"#vkBeginCommandBuffer\">vkBeginCommandBuffer</a> was called on <code>commandBuffer</code>"
@@ -15128,6 +15152,32 @@
"vuid": "VUID-vkCmdBeginQueryIndexedEXT-None-02863",
"text": " If <code>queryPool</code> was created with a <code>queryType</code> of <code>VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR</code>, this command <strong class=\"purple\">must</strong> not be recorded in a command buffer that, either directly or through secondary command buffers, also contains a <code>vkCmdResetQueryPool</code> command affecting the same query"
}
+ ],
+ "(VK_EXT_transform_feedback)": [
+ {
+ "vuid": "VUID-vkCmdBeginQueryIndexedEXT-commandBuffer-parameter",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdBeginQueryIndexedEXT-queryPool-parameter",
+ "text": " <code>queryPool</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkQueryPool\">VkQueryPool</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdBeginQueryIndexedEXT-flags-parameter",
+ "text": " <code>flags</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkQueryControlFlagBits\">VkQueryControlFlagBits</a> values"
+ },
+ {
+ "vuid": "VUID-vkCmdBeginQueryIndexedEXT-commandBuffer-recording",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
+ },
+ {
+ "vuid": "VUID-vkCmdBeginQueryIndexedEXT-commandBuffer-cmdpool",
+ "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics, or compute operations"
+ },
+ {
+ "vuid": "VUID-vkCmdBeginQueryIndexedEXT-commonparent",
+ "text": " Both of <code>commandBuffer</code>, and <code>queryPool</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
+ }
]
},
"vkCmdEndQuery": {
@@ -16295,6 +16345,20 @@
]
},
"vkCmdCopyBuffer": {
+ "(VK_VERSION_1_1)": [
+ {
+ "vuid": "VUID-vkCmdCopyBuffer-commandBuffer-01822",
+ "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>srcBuffer</code> <strong class=\"purple\">must</strong> not be a protected buffer"
+ },
+ {
+ "vuid": "VUID-vkCmdCopyBuffer-commandBuffer-01823",
+ "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>dstBuffer</code> <strong class=\"purple\">must</strong> not be a protected buffer"
+ },
+ {
+ "vuid": "VUID-vkCmdCopyBuffer-commandBuffer-01824",
+ "text": " If <code>commandBuffer</code> is a protected command buffer, then <code>dstBuffer</code> <strong class=\"purple\">must</strong> not be an unprotected buffer"
+ }
+ ],
"core": [
{
"vuid": "VUID-vkCmdCopyBuffer-srcOffset-00113",
@@ -16368,20 +16432,6 @@
"vuid": "VUID-vkCmdCopyBuffer-commonparent",
"text": " Each of <code>commandBuffer</code>, <code>dstBuffer</code>, and <code>srcBuffer</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
}
- ],
- "(VK_VERSION_1_1)": [
- {
- "vuid": "VUID-vkCmdCopyBuffer-commandBuffer-01822",
- "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>srcBuffer</code> <strong class=\"purple\">must</strong> not be a protected buffer"
- },
- {
- "vuid": "VUID-vkCmdCopyBuffer-commandBuffer-01823",
- "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>dstBuffer</code> <strong class=\"purple\">must</strong> not be a protected buffer"
- },
- {
- "vuid": "VUID-vkCmdCopyBuffer-commandBuffer-01824",
- "text": " If <code>commandBuffer</code> is a protected command buffer, then <code>dstBuffer</code> <strong class=\"purple\">must</strong> not be an unprotected buffer"
- }
]
},
"VkBufferCopy": {
@@ -16393,6 +16443,20 @@
]
},
"vkCmdCopyImage": {
+ "(VK_VERSION_1_1)": [
+ {
+ "vuid": "VUID-vkCmdCopyImage-commandBuffer-01825",
+ "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>srcImage</code> <strong class=\"purple\">must</strong> not be a protected image"
+ },
+ {
+ "vuid": "VUID-vkCmdCopyImage-commandBuffer-01826",
+ "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be a protected image"
+ },
+ {
+ "vuid": "VUID-vkCmdCopyImage-commandBuffer-01827",
+ "text": " If <code>commandBuffer</code> is a protected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be an unprotected image"
+ }
+ ],
"core": [
{
"vuid": "VUID-vkCmdCopyImage-pRegions-00124",
@@ -16549,20 +16613,6 @@
"text": " <code>dstImageLayout</code> <strong class=\"purple\">must</strong> be <code>VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL</code>, <code>VK_IMAGE_LAYOUT_GENERAL</code>, or <code>VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR</code>"
}
],
- "(VK_VERSION_1_1)": [
- {
- "vuid": "VUID-vkCmdCopyImage-commandBuffer-01825",
- "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>srcImage</code> <strong class=\"purple\">must</strong> not be a protected image"
- },
- {
- "vuid": "VUID-vkCmdCopyImage-commandBuffer-01826",
- "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be a protected image"
- },
- {
- "vuid": "VUID-vkCmdCopyImage-commandBuffer-01827",
- "text": " If <code>commandBuffer</code> is a protected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be an unprotected image"
- }
- ],
"(VK_EXT_fragment_density_map)": [
{
"vuid": "VUID-vkCmdCopyImage-dstImage-02542",
@@ -16805,6 +16855,20 @@
]
},
"vkCmdCopyBufferToImage": {
+ "(VK_VERSION_1_1)": [
+ {
+ "vuid": "VUID-vkCmdCopyBufferToImage-commandBuffer-01828",
+ "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>srcBuffer</code> <strong class=\"purple\">must</strong> not be a protected buffer"
+ },
+ {
+ "vuid": "VUID-vkCmdCopyBufferToImage-commandBuffer-01829",
+ "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be a protected image"
+ },
+ {
+ "vuid": "VUID-vkCmdCopyBufferToImage-commandBuffer-01830",
+ "text": " If <code>commandBuffer</code> is a protected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be an unprotected image"
+ }
+ ],
"core": [
{
"vuid": "VUID-vkCmdCopyBufferToImage-pRegions-00171",
@@ -16921,20 +16985,6 @@
"text": " <code>dstImageLayout</code> <strong class=\"purple\">must</strong> be <code>VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL</code>, <code>VK_IMAGE_LAYOUT_GENERAL</code>, or <code>VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR</code>"
}
],
- "(VK_VERSION_1_1)": [
- {
- "vuid": "VUID-vkCmdCopyBufferToImage-commandBuffer-01828",
- "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>srcBuffer</code> <strong class=\"purple\">must</strong> not be a protected buffer"
- },
- {
- "vuid": "VUID-vkCmdCopyBufferToImage-commandBuffer-01829",
- "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be a protected image"
- },
- {
- "vuid": "VUID-vkCmdCopyBufferToImage-commandBuffer-01830",
- "text": " If <code>commandBuffer</code> is a protected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be an unprotected image"
- }
- ],
"(VK_EXT_fragment_density_map)": [
{
"vuid": "VUID-vkCmdCopyBufferToImage-dstImage-02543",
@@ -16943,6 +16993,20 @@
]
},
"vkCmdCopyImageToBuffer": {
+ "(VK_VERSION_1_1)": [
+ {
+ "vuid": "VUID-vkCmdCopyImageToBuffer-commandBuffer-01831",
+ "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>srcImage</code> <strong class=\"purple\">must</strong> not be a protected image"
+ },
+ {
+ "vuid": "VUID-vkCmdCopyImageToBuffer-commandBuffer-01832",
+ "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>dstBuffer</code> <strong class=\"purple\">must</strong> not be a protected buffer"
+ },
+ {
+ "vuid": "VUID-vkCmdCopyImageToBuffer-commandBuffer-01833",
+ "text": " If <code>commandBuffer</code> is a protected command buffer, then <code>dstBuffer</code> <strong class=\"purple\">must</strong> not be an unprotected buffer"
+ }
+ ],
"core": [
{
"vuid": "VUID-vkCmdCopyImageToBuffer-pRegions-00182",
@@ -17059,20 +17123,6 @@
"text": " <code>srcImageLayout</code> <strong class=\"purple\">must</strong> be <code>VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR</code>, <code>VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL</code> or <code>VK_IMAGE_LAYOUT_GENERAL</code>"
}
],
- "(VK_VERSION_1_1)": [
- {
- "vuid": "VUID-vkCmdCopyImageToBuffer-commandBuffer-01831",
- "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>srcImage</code> <strong class=\"purple\">must</strong> not be a protected image"
- },
- {
- "vuid": "VUID-vkCmdCopyImageToBuffer-commandBuffer-01832",
- "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>dstBuffer</code> <strong class=\"purple\">must</strong> not be a protected buffer"
- },
- {
- "vuid": "VUID-vkCmdCopyImageToBuffer-commandBuffer-01833",
- "text": " If <code>commandBuffer</code> is a protected command buffer, then <code>dstBuffer</code> <strong class=\"purple\">must</strong> not be an unprotected buffer"
- }
- ],
"(VK_EXT_fragment_density_map)": [
{
"vuid": "VUID-vkCmdCopyImageToBuffer-srcImage-02544",
@@ -17211,6 +17261,20 @@
]
},
"vkCmdBlitImage": {
+ "(VK_VERSION_1_1)": [
+ {
+ "vuid": "VUID-vkCmdBlitImage-commandBuffer-01834",
+ "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>srcImage</code> <strong class=\"purple\">must</strong> not be a protected image"
+ },
+ {
+ "vuid": "VUID-vkCmdBlitImage-commandBuffer-01835",
+ "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be a protected image"
+ },
+ {
+ "vuid": "VUID-vkCmdBlitImage-commandBuffer-01836",
+ "text": " If <code>commandBuffer</code> is a protected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be an unprotected image"
+ }
+ ],
"core": [
{
"vuid": "VUID-vkCmdBlitImage-pRegions-00215",
@@ -17389,20 +17453,6 @@
"text": " If <code>filter</code> is <code>VK_FILTER_CUBIC_EXT</code>, <code>srcImage</code> <strong class=\"purple\">must</strong> have a <a href=\"#VkImageType\">VkImageType</a> of <code>VK_IMAGE_TYPE_2D</code>"
}
],
- "(VK_VERSION_1_1)": [
- {
- "vuid": "VUID-vkCmdBlitImage-commandBuffer-01834",
- "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>srcImage</code> <strong class=\"purple\">must</strong> not be a protected image"
- },
- {
- "vuid": "VUID-vkCmdBlitImage-commandBuffer-01835",
- "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be a protected image"
- },
- {
- "vuid": "VUID-vkCmdBlitImage-commandBuffer-01836",
- "text": " If <code>commandBuffer</code> is a protected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be an unprotected image"
- }
- ],
"(VK_EXT_fragment_density_map)": [
{
"vuid": "VUID-vkCmdBlitImage-dstImage-02545",
@@ -17483,16 +17533,22 @@
]
},
"vkCmdResolveImage": {
- "core": [
+ "(VK_VERSION_1_1)": [
{
- "vuid": "VUID-vkCmdResolveImage-pRegions-00253",
- "text": " The source region specified by each element of <code>pRegions</code> <strong class=\"purple\">must</strong> be a region that is contained within <code>srcImage</code>"
+ "vuid": "VUID-vkCmdResolveImage-commandBuffer-01837",
+ "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>srcImage</code> <strong class=\"purple\">must</strong> not be a protected image"
},
{
- "vuid": "VUID-vkCmdResolveImage-pRegions-00254",
- "text": " The destination region specified by each element of <code>pRegions</code> <strong class=\"purple\">must</strong> be a region that is contained within <code>dstImage</code>"
+ "vuid": "VUID-vkCmdResolveImage-commandBuffer-01838",
+ "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be a protected image"
},
{
+ "vuid": "VUID-vkCmdResolveImage-commandBuffer-01839",
+ "text": " If <code>commandBuffer</code> is a protected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be an unprotected image"
+ }
+ ],
+ "core": [
+ {
"vuid": "VUID-vkCmdResolveImage-pRegions-00255",
"text": " The union of all source regions, and the union of all destination regions, specified by the elements of <code>pRegions</code>, <strong class=\"purple\">must</strong> not overlap in memory"
},
@@ -17609,20 +17665,6 @@
"text": " <code>dstImageLayout</code> <strong class=\"purple\">must</strong> be <code>VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR</code>, <code>VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL</code> or <code>VK_IMAGE_LAYOUT_GENERAL</code>"
}
],
- "(VK_VERSION_1_1)": [
- {
- "vuid": "VUID-vkCmdResolveImage-commandBuffer-01837",
- "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>srcImage</code> <strong class=\"purple\">must</strong> not be a protected image"
- },
- {
- "vuid": "VUID-vkCmdResolveImage-commandBuffer-01838",
- "text": " If <code>commandBuffer</code> is an unprotected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be a protected image"
- },
- {
- "vuid": "VUID-vkCmdResolveImage-commandBuffer-01839",
- "text": " If <code>commandBuffer</code> is a protected command buffer, then <code>dstImage</code> <strong class=\"purple\">must</strong> not be an unprotected image"
- }
- ],
"(VK_EXT_fragment_density_map)": [
{
"vuid": "VUID-vkCmdResolveImage-dstImage-02546",
@@ -17695,7 +17737,7 @@
]
},
"vkCmdWriteBufferMarkerAMD": {
- "(VK_AMD_buffer_marker)": [
+ "core": [
{
"vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04074",
"text": " <code>pipelineStage</code> <strong class=\"purple\">must</strong> be a <a href=\"#synchronization-pipeline-stages-supported\">valid stage</a> for the queue family that was used to create the command pool that <code>commandBuffer</code> was allocated from"
@@ -17723,61 +17765,63 @@
{
"vuid": "VUID-vkCmdWriteBufferMarkerAMD-dstOffset-01801",
"text": " <code>dstOffset</code> <strong class=\"purple\">must</strong> be a multiple of <code>4</code>"
- },
- {
- "vuid": "VUID-vkCmdWriteBufferMarkerAMD-commandBuffer-parameter",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-parameter",
- "text": " <code>pipelineStage</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkPipelineStageFlagBits\">VkPipelineStageFlagBits</a> value"
- },
- {
- "vuid": "VUID-vkCmdWriteBufferMarkerAMD-dstBuffer-parameter",
- "text": " <code>dstBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdWriteBufferMarkerAMD-commandBuffer-recording",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
- },
- {
- "vuid": "VUID-vkCmdWriteBufferMarkerAMD-commandBuffer-cmdpool",
- "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support transfer, graphics, or compute operations"
- },
- {
- "vuid": "VUID-vkCmdWriteBufferMarkerAMD-commonparent",
- "text": " Both of <code>commandBuffer</code>, and <code>dstBuffer</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
}
],
- "(VK_AMD_buffer_marker)+(VK_EXT_conditional_rendering)": [
+ "(VK_EXT_conditional_rendering)": [
{
"vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04077",
"text": " If the <a href=\"#features-conditionalRendering\">conditional rendering</a> feature is not enabled, <code>pipelineStage</code> <strong class=\"purple\">must</strong> not be <code>VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT</code>"
}
],
- "(VK_AMD_buffer_marker)+(VK_EXT_fragment_density_map)": [
+ "(VK_EXT_fragment_density_map)": [
{
"vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04078",
"text": " If the <a href=\"#features-fragmentDensityMap\">fragment density map</a> feature is not enabled, <code>pipelineStage</code> <strong class=\"purple\">must</strong> not be <code>VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT</code>"
}
],
- "(VK_AMD_buffer_marker)+(VK_EXT_transform_feedback)": [
+ "(VK_EXT_transform_feedback)": [
{
"vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04079",
"text": " If the <a href=\"#features-transformFeedback\">transform feedback</a> feature is not enabled, <code>pipelineStage</code> <strong class=\"purple\">must</strong> not be <code>VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT</code>"
}
],
- "(VK_AMD_buffer_marker)+(VK_NV_mesh_shader)": [
+ "(VK_NV_mesh_shader)": [
{
"vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04080",
"text": " If the <a href=\"#features-meshShader\">mesh shaders</a> feature is not enabled, <code>pipelineStage</code> <strong class=\"purple\">must</strong> not be <code>VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV</code> or <code>VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV</code>"
}
],
- "(VK_AMD_buffer_marker)+(VK_NV_shading_rate_image)": [
+ "(VK_NV_shading_rate_image)": [
{
"vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04081",
"text": " If the <a href=\"#features-shadingRateImage\">shading rate image</a> feature is not enabled, <code>pipelineStage</code> <strong class=\"purple\">must</strong> not be <code>VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV</code>"
}
+ ],
+ "(VK_AMD_buffer_marker)": [
+ {
+ "vuid": "VUID-vkCmdWriteBufferMarkerAMD-commandBuffer-parameter",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-parameter",
+ "text": " <code>pipelineStage</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkPipelineStageFlagBits\">VkPipelineStageFlagBits</a> value"
+ },
+ {
+ "vuid": "VUID-vkCmdWriteBufferMarkerAMD-dstBuffer-parameter",
+ "text": " <code>dstBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdWriteBufferMarkerAMD-commandBuffer-recording",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
+ },
+ {
+ "vuid": "VUID-vkCmdWriteBufferMarkerAMD-commandBuffer-cmdpool",
+ "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support transfer, graphics, or compute operations"
+ },
+ {
+ "vuid": "VUID-vkCmdWriteBufferMarkerAMD-commonparent",
+ "text": " Both of <code>commandBuffer</code>, and <code>dstBuffer</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
+ }
]
},
"VkPipelineInputAssemblyStateCreateInfo": {
@@ -18387,7 +18431,7 @@
]
},
"vkCmdDrawIndirectCount": {
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)": [
+ "core": [
{
"vuid": "VUID-vkCmdDrawIndirectCount-None-02690",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_LINEAR</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT</code>"
@@ -18511,49 +18555,21 @@
{
"vuid": "VUID-vkCmdDrawIndirectCount-countBuffer-03122",
"text": " If the count stored in <code>countBuffer</code> is greater than <code>1</code>, <span class=\"eq\">(<code>stride</code> {times} (<code>drawCount</code> - 1) &#43; <code>offset</code> &#43; sizeof(<code>VkDrawIndirectCommand</code>))</span> <strong class=\"purple\">must</strong> be less than or equal to the size of <code>buffer</code>"
- },
- {
- "vuid": "VUID-vkCmdDrawIndirectCount-commandBuffer-parameter",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdDrawIndirectCount-buffer-parameter",
- "text": " <code>buffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdDrawIndirectCount-countBuffer-parameter",
- "text": " <code>countBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdDrawIndirectCount-commandBuffer-recording",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
- },
- {
- "vuid": "VUID-vkCmdDrawIndirectCount-commandBuffer-cmdpool",
- "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics operations"
- },
- {
- "vuid": "VUID-vkCmdDrawIndirectCount-renderpass",
- "text": " This command <strong class=\"purple\">must</strong> only be called inside of a render pass instance"
- },
- {
- "vuid": "VUID-vkCmdDrawIndirectCount-commonparent",
- "text": " Each of <code>buffer</code>, <code>commandBuffer</code>, and <code>countBuffer</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
}
],
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawIndirectCount-None-02692",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT</code>"
}
],
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawIndirectCount-None-02693",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> not have a <a href=\"#VkImageViewType\">VkImageViewType</a> of <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>"
}
],
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawIndirectCount-filterCubic-02694",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubic</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
@@ -18563,13 +18579,13 @@
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> with a reduction mode of either <code>VK_SAMPLER_REDUCTION_MODE_MIN</code> or <code>VK_SAMPLER_REDUCTION_MODE_MAX</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering together with minmax filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubicMinmax</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
}
],
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_NV_corner_sampled_image)": [
+ "(VK_NV_corner_sampled_image)": [
{
"vuid": "VUID-vkCmdDrawIndirectCount-flags-02696",
"text": " Any <a href=\"#VkImage\">VkImage</a> created with a <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a>::<code>flags</code> containing <code>VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV</code> sampled as a result of this command <strong class=\"purple\">must</strong> only be sampled using a <a href=\"#VkSamplerAddressMode\">VkSamplerAddressMode</a> of <code>VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE</code>"
}
],
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_VERSION_1_1)": [
+ "(VK_VERSION_1_1)": [
{
"vuid": "VUID-vkCmdDrawIndirectCount-commandBuffer-02707",
"text": " If <code>commandBuffer</code> is an unprotected command buffer, any resource accessed by the <code>VkPipeline</code> object bound to the pipeline bind point used by this command <strong class=\"purple\">must</strong> not be a protected resource"
@@ -18579,23 +18595,53 @@
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> not be a protected command buffer"
}
],
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_VERSION_1_1,VK_KHR_multiview)": [
+ "(VK_VERSION_1_1,VK_KHR_multiview)": [
{
"vuid": "VUID-vkCmdDrawIndirectCount-maxMultiviewInstanceIndex-02688",
"text": " If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index <strong class=\"purple\">must</strong> be less than or equal to <a href=\"#VkPhysicalDeviceMultiviewProperties\">VkPhysicalDeviceMultiviewProperties</a>::<code>maxMultiviewInstanceIndex</code>"
}
],
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_EXT_sample_locations)": [
+ "(VK_EXT_sample_locations)": [
{
"vuid": "VUID-vkCmdDrawIndirectCount-sampleLocationsEnable-02689",
"text": " If the bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set"
}
],
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_VERSION_1_2)": [
+ "(VK_VERSION_1_2)": [
{
"vuid": "VUID-vkCmdDrawIndirectCount-None-02836",
"text": " If <a href=\"#features-drawIndirectCount\">drawIndirectCount</a> is not enabled this function <strong class=\"purple\">must</strong> not be used"
}
+ ],
+ "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)": [
+ {
+ "vuid": "VUID-vkCmdDrawIndirectCount-commandBuffer-parameter",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndirectCount-buffer-parameter",
+ "text": " <code>buffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndirectCount-countBuffer-parameter",
+ "text": " <code>countBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndirectCount-commandBuffer-recording",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndirectCount-commandBuffer-cmdpool",
+ "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics operations"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndirectCount-renderpass",
+ "text": " This command <strong class=\"purple\">must</strong> only be called inside of a render pass instance"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndirectCount-commonparent",
+ "text": " Each of <code>buffer</code>, <code>commandBuffer</code>, and <code>countBuffer</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
+ }
]
},
"vkCmdDrawIndexedIndirect": {
@@ -18815,7 +18861,7 @@
]
},
"vkCmdDrawIndexedIndirectCount": {
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)": [
+ "core": [
{
"vuid": "VUID-vkCmdDrawIndexedIndirectCount-None-02690",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_LINEAR</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT</code>"
@@ -18939,49 +18985,21 @@
{
"vuid": "VUID-vkCmdDrawIndexedIndirectCount-countBuffer-03154",
"text": " If count stored in <code>countBuffer</code> is greater than <code>1</code>, <span class=\"eq\">(<code>stride</code> {times} (<code>drawCount</code> - 1) &#43; <code>offset</code> &#43; sizeof(<code>VkDrawIndexedIndirectCommand</code>))</span> <strong class=\"purple\">must</strong> be less than or equal to the size of <code>buffer</code>"
- },
- {
- "vuid": "VUID-vkCmdDrawIndexedIndirectCount-commandBuffer-parameter",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdDrawIndexedIndirectCount-buffer-parameter",
- "text": " <code>buffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdDrawIndexedIndirectCount-countBuffer-parameter",
- "text": " <code>countBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdDrawIndexedIndirectCount-commandBuffer-recording",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
- },
- {
- "vuid": "VUID-vkCmdDrawIndexedIndirectCount-commandBuffer-cmdpool",
- "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics operations"
- },
- {
- "vuid": "VUID-vkCmdDrawIndexedIndirectCount-renderpass",
- "text": " This command <strong class=\"purple\">must</strong> only be called inside of a render pass instance"
- },
- {
- "vuid": "VUID-vkCmdDrawIndexedIndirectCount-commonparent",
- "text": " Each of <code>buffer</code>, <code>commandBuffer</code>, and <code>countBuffer</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
}
],
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawIndexedIndirectCount-None-02692",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT</code>"
}
],
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawIndexedIndirectCount-None-02693",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> not have a <a href=\"#VkImageViewType\">VkImageViewType</a> of <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>"
}
],
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawIndexedIndirectCount-filterCubic-02694",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubic</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
@@ -18991,13 +19009,13 @@
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> with a reduction mode of either <code>VK_SAMPLER_REDUCTION_MODE_MIN</code> or <code>VK_SAMPLER_REDUCTION_MODE_MAX</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering together with minmax filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubicMinmax</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
}
],
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_NV_corner_sampled_image)": [
+ "(VK_NV_corner_sampled_image)": [
{
"vuid": "VUID-vkCmdDrawIndexedIndirectCount-flags-02696",
"text": " Any <a href=\"#VkImage\">VkImage</a> created with a <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a>::<code>flags</code> containing <code>VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV</code> sampled as a result of this command <strong class=\"purple\">must</strong> only be sampled using a <a href=\"#VkSamplerAddressMode\">VkSamplerAddressMode</a> of <code>VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE</code>"
}
],
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_VERSION_1_1)": [
+ "(VK_VERSION_1_1)": [
{
"vuid": "VUID-vkCmdDrawIndexedIndirectCount-commandBuffer-02707",
"text": " If <code>commandBuffer</code> is an unprotected command buffer, any resource accessed by the <code>VkPipeline</code> object bound to the pipeline bind point used by this command <strong class=\"purple\">must</strong> not be a protected resource"
@@ -19007,21 +19025,51 @@
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> not be a protected command buffer"
}
],
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_VERSION_1_1,VK_KHR_multiview)": [
+ "(VK_VERSION_1_1,VK_KHR_multiview)": [
{
"vuid": "VUID-vkCmdDrawIndexedIndirectCount-maxMultiviewInstanceIndex-02688",
"text": " If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index <strong class=\"purple\">must</strong> be less than or equal to <a href=\"#VkPhysicalDeviceMultiviewProperties\">VkPhysicalDeviceMultiviewProperties</a>::<code>maxMultiviewInstanceIndex</code>"
}
],
- "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_EXT_sample_locations)": [
+ "(VK_EXT_sample_locations)": [
{
"vuid": "VUID-vkCmdDrawIndexedIndirectCount-sampleLocationsEnable-02689",
"text": " If the bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set"
}
+ ],
+ "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)": [
+ {
+ "vuid": "VUID-vkCmdDrawIndexedIndirectCount-commandBuffer-parameter",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndexedIndirectCount-buffer-parameter",
+ "text": " <code>buffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndexedIndirectCount-countBuffer-parameter",
+ "text": " <code>countBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndexedIndirectCount-commandBuffer-recording",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndexedIndirectCount-commandBuffer-cmdpool",
+ "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics operations"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndexedIndirectCount-renderpass",
+ "text": " This command <strong class=\"purple\">must</strong> only be called inside of a render pass instance"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndexedIndirectCount-commonparent",
+ "text": " Each of <code>buffer</code>, <code>commandBuffer</code>, and <code>countBuffer</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
+ }
]
},
"vkCmdDrawIndirectByteCountEXT": {
- "(VK_EXT_transform_feedback)": [
+ "core": [
{
"vuid": "VUID-vkCmdDrawIndirectByteCountEXT-None-02690",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_LINEAR</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT</code>"
@@ -19117,45 +19165,21 @@
{
"vuid": "VUID-vkCmdDrawIndirectByteCountEXT-counterBuffer-02290",
"text": " <code>counterBuffer</code> <strong class=\"purple\">must</strong> have been created with the <code>VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT</code> bit set"
- },
- {
- "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-commandBuffer-parameter",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-counterBuffer-parameter",
- "text": " <code>counterBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-commandBuffer-recording",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
- },
- {
- "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-commandBuffer-cmdpool",
- "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics operations"
- },
- {
- "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-renderpass",
- "text": " This command <strong class=\"purple\">must</strong> only be called inside of a render pass instance"
- },
- {
- "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-commonparent",
- "text": " Both of <code>commandBuffer</code>, and <code>counterBuffer</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
}
],
- "(VK_EXT_transform_feedback)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawIndirectByteCountEXT-None-02692",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT</code>"
}
],
- "(VK_EXT_transform_feedback)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawIndirectByteCountEXT-None-02693",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> not have a <a href=\"#VkImageViewType\">VkImageViewType</a> of <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>"
}
],
- "(VK_EXT_transform_feedback)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawIndirectByteCountEXT-filterCubic-02694",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubic</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
@@ -19165,13 +19189,13 @@
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> with a reduction mode of either <code>VK_SAMPLER_REDUCTION_MODE_MIN</code> or <code>VK_SAMPLER_REDUCTION_MODE_MAX</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering together with minmax filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubicMinmax</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
}
],
- "(VK_EXT_transform_feedback)+(VK_NV_corner_sampled_image)": [
+ "(VK_NV_corner_sampled_image)": [
{
"vuid": "VUID-vkCmdDrawIndirectByteCountEXT-flags-02696",
"text": " Any <a href=\"#VkImage\">VkImage</a> created with a <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a>::<code>flags</code> containing <code>VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV</code> sampled as a result of this command <strong class=\"purple\">must</strong> only be sampled using a <a href=\"#VkSamplerAddressMode\">VkSamplerAddressMode</a> of <code>VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE</code>"
}
],
- "(VK_EXT_transform_feedback)+(VK_VERSION_1_1)": [
+ "(VK_VERSION_1_1)": [
{
"vuid": "VUID-vkCmdDrawIndirectByteCountEXT-commandBuffer-02707",
"text": " If <code>commandBuffer</code> is an unprotected command buffer, any resource accessed by the <code>VkPipeline</code> object bound to the pipeline bind point used by this command <strong class=\"purple\">must</strong> not be a protected resource"
@@ -19181,17 +19205,43 @@
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> not be a protected command buffer"
}
],
- "(VK_EXT_transform_feedback)+(VK_VERSION_1_1,VK_KHR_multiview)": [
+ "(VK_VERSION_1_1,VK_KHR_multiview)": [
{
"vuid": "VUID-vkCmdDrawIndirectByteCountEXT-maxMultiviewInstanceIndex-02688",
"text": " If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index <strong class=\"purple\">must</strong> be less than or equal to <a href=\"#VkPhysicalDeviceMultiviewProperties\">VkPhysicalDeviceMultiviewProperties</a>::<code>maxMultiviewInstanceIndex</code>"
}
],
- "(VK_EXT_transform_feedback)+(VK_EXT_sample_locations)": [
+ "(VK_EXT_sample_locations)": [
{
"vuid": "VUID-vkCmdDrawIndirectByteCountEXT-sampleLocationsEnable-02689",
"text": " If the bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set"
}
+ ],
+ "(VK_EXT_transform_feedback)": [
+ {
+ "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-commandBuffer-parameter",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-counterBuffer-parameter",
+ "text": " <code>counterBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-commandBuffer-recording",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-commandBuffer-cmdpool",
+ "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics operations"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-renderpass",
+ "text": " This command <strong class=\"purple\">must</strong> only be called inside of a render pass instance"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-commonparent",
+ "text": " Both of <code>commandBuffer</code>, and <code>counterBuffer</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
+ }
]
},
"vkCmdBeginConditionalRenderingEXT": {
@@ -19283,7 +19333,7 @@
]
},
"vkCmdDrawMeshTasksNV": {
- "(VK_NV_mesh_shader)": [
+ "core": [
{
"vuid": "VUID-vkCmdDrawMeshTasksNV-None-02690",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_LINEAR</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT</code>"
@@ -19355,37 +19405,21 @@
{
"vuid": "VUID-vkCmdDrawMeshTasksNV-taskCount-02119",
"text": " <code>taskCount</code> <strong class=\"purple\">must</strong> be less than or equal to <code>VkPhysicalDeviceMeshShaderPropertiesNV</code>::<code>maxDrawMeshTasksCount</code>"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksNV-commandBuffer-parameter",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksNV-commandBuffer-recording",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksNV-commandBuffer-cmdpool",
- "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics operations"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksNV-renderpass",
- "text": " This command <strong class=\"purple\">must</strong> only be called inside of a render pass instance"
}
],
- "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksNV-None-02692",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT</code>"
}
],
- "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksNV-None-02693",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> not have a <a href=\"#VkImageViewType\">VkImageViewType</a> of <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>"
}
],
- "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksNV-filterCubic-02694",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubic</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
@@ -19395,33 +19429,51 @@
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> with a reduction mode of either <code>VK_SAMPLER_REDUCTION_MODE_MIN</code> or <code>VK_SAMPLER_REDUCTION_MODE_MAX</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering together with minmax filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubicMinmax</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
}
],
- "(VK_NV_mesh_shader)+(VK_NV_corner_sampled_image)": [
+ "(VK_NV_corner_sampled_image)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksNV-flags-02696",
"text": " Any <a href=\"#VkImage\">VkImage</a> created with a <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a>::<code>flags</code> containing <code>VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV</code> sampled as a result of this command <strong class=\"purple\">must</strong> only be sampled using a <a href=\"#VkSamplerAddressMode\">VkSamplerAddressMode</a> of <code>VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE</code>"
}
],
- "(VK_NV_mesh_shader)+(VK_VERSION_1_1)": [
+ "(VK_VERSION_1_1)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksNV-commandBuffer-02707",
"text": " If <code>commandBuffer</code> is an unprotected command buffer, any resource accessed by the <code>VkPipeline</code> object bound to the pipeline bind point used by this command <strong class=\"purple\">must</strong> not be a protected resource"
}
],
- "(VK_NV_mesh_shader)+(VK_VERSION_1_1,VK_KHR_multiview)": [
+ "(VK_VERSION_1_1,VK_KHR_multiview)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksNV-maxMultiviewInstanceIndex-02688",
"text": " If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index <strong class=\"purple\">must</strong> be less than or equal to <a href=\"#VkPhysicalDeviceMultiviewProperties\">VkPhysicalDeviceMultiviewProperties</a>::<code>maxMultiviewInstanceIndex</code>"
}
],
- "(VK_NV_mesh_shader)+(VK_EXT_sample_locations)": [
+ "(VK_EXT_sample_locations)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksNV-sampleLocationsEnable-02689",
"text": " If the bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set"
}
+ ],
+ "(VK_NV_mesh_shader)": [
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksNV-commandBuffer-parameter",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksNV-commandBuffer-recording",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksNV-commandBuffer-cmdpool",
+ "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics operations"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksNV-renderpass",
+ "text": " This command <strong class=\"purple\">must</strong> only be called inside of a render pass instance"
+ }
]
},
"vkCmdDrawMeshTasksIndirectNV": {
- "(VK_NV_mesh_shader)": [
+ "core": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-None-02690",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_LINEAR</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT</code>"
@@ -19521,45 +19573,21 @@
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-drawCount-02157",
"text": " If <code>drawCount</code> is greater than <code>1</code>, <span class=\"eq\">(<code>stride</code> {times} (<code>drawCount</code> - 1) &#43; <code>offset</code> &#43; <code>sizeof</code>(<a href=\"#VkDrawMeshTasksIndirectCommandNV\">VkDrawMeshTasksIndirectCommandNV</a>))</span> <strong class=\"purple\">must</strong> be less than or equal to the size of <code>buffer</code>"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-commandBuffer-parameter",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-buffer-parameter",
- "text": " <code>buffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-commandBuffer-recording",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-commandBuffer-cmdpool",
- "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics operations"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-renderpass",
- "text": " This command <strong class=\"purple\">must</strong> only be called inside of a render pass instance"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-commonparent",
- "text": " Both of <code>buffer</code>, and <code>commandBuffer</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
}
],
- "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-None-02692",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT</code>"
}
],
- "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-None-02693",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> not have a <a href=\"#VkImageViewType\">VkImageViewType</a> of <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>"
}
],
- "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-filterCubic-02694",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubic</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
@@ -19569,13 +19597,13 @@
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> with a reduction mode of either <code>VK_SAMPLER_REDUCTION_MODE_MIN</code> or <code>VK_SAMPLER_REDUCTION_MODE_MAX</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering together with minmax filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubicMinmax</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
}
],
- "(VK_NV_mesh_shader)+(VK_NV_corner_sampled_image)": [
+ "(VK_NV_corner_sampled_image)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-flags-02696",
"text": " Any <a href=\"#VkImage\">VkImage</a> created with a <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a>::<code>flags</code> containing <code>VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV</code> sampled as a result of this command <strong class=\"purple\">must</strong> only be sampled using a <a href=\"#VkSamplerAddressMode\">VkSamplerAddressMode</a> of <code>VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE</code>"
}
],
- "(VK_NV_mesh_shader)+(VK_VERSION_1_1)": [
+ "(VK_VERSION_1_1)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-commandBuffer-02707",
"text": " If <code>commandBuffer</code> is an unprotected command buffer, any resource accessed by the <code>VkPipeline</code> object bound to the pipeline bind point used by this command <strong class=\"purple\">must</strong> not be a protected resource"
@@ -19585,17 +19613,43 @@
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> not be a protected command buffer"
}
],
- "(VK_NV_mesh_shader)+(VK_VERSION_1_1,VK_KHR_multiview)": [
+ "(VK_VERSION_1_1,VK_KHR_multiview)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-maxMultiviewInstanceIndex-02688",
"text": " If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index <strong class=\"purple\">must</strong> be less than or equal to <a href=\"#VkPhysicalDeviceMultiviewProperties\">VkPhysicalDeviceMultiviewProperties</a>::<code>maxMultiviewInstanceIndex</code>"
}
],
- "(VK_NV_mesh_shader)+(VK_EXT_sample_locations)": [
+ "(VK_EXT_sample_locations)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-sampleLocationsEnable-02689",
"text": " If the bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set"
}
+ ],
+ "(VK_NV_mesh_shader)": [
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-commandBuffer-parameter",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-buffer-parameter",
+ "text": " <code>buffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-commandBuffer-recording",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-commandBuffer-cmdpool",
+ "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics operations"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-renderpass",
+ "text": " This command <strong class=\"purple\">must</strong> only be called inside of a render pass instance"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-commonparent",
+ "text": " Both of <code>buffer</code>, and <code>commandBuffer</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
+ }
]
},
"VkDrawMeshTasksIndirectCommandNV": {
@@ -19607,7 +19661,7 @@
]
},
"vkCmdDrawMeshTasksIndirectCountNV": {
- "(VK_NV_mesh_shader)": [
+ "core": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-None-02690",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_LINEAR</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT</code>"
@@ -19719,49 +19773,21 @@
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-countBuffer-02192",
"text": " If the count stored in <code>countBuffer</code> is greater than <code>1</code>, <span class=\"eq\">(<code>stride</code> {times} (<code>drawCount</code> - 1) &#43; <code>offset</code> &#43; <code>sizeof</code>(<code>VkDrawMeshTasksIndirectCommandNV</code>))</span> <strong class=\"purple\">must</strong> be less than or equal to the size of <code>buffer</code>"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-commandBuffer-parameter",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-buffer-parameter",
- "text": " <code>buffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-countBuffer-parameter",
- "text": " <code>countBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-commandBuffer-recording",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-commandBuffer-cmdpool",
- "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics operations"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-renderpass",
- "text": " This command <strong class=\"purple\">must</strong> only be called inside of a render pass instance"
- },
- {
- "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-commonparent",
- "text": " Each of <code>buffer</code>, <code>commandBuffer</code>, and <code>countBuffer</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
}
],
- "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-None-02692",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT</code>"
}
],
- "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-None-02693",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> not have a <a href=\"#VkImageViewType\">VkImageViewType</a> of <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>"
}
],
- "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-filterCubic-02694",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubic</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
@@ -19771,13 +19797,13 @@
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> with a reduction mode of either <code>VK_SAMPLER_REDUCTION_MODE_MIN</code> or <code>VK_SAMPLER_REDUCTION_MODE_MAX</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering together with minmax filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubicMinmax</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
}
],
- "(VK_NV_mesh_shader)+(VK_NV_corner_sampled_image)": [
+ "(VK_NV_corner_sampled_image)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-flags-02696",
"text": " Any <a href=\"#VkImage\">VkImage</a> created with a <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a>::<code>flags</code> containing <code>VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV</code> sampled as a result of this command <strong class=\"purple\">must</strong> only be sampled using a <a href=\"#VkSamplerAddressMode\">VkSamplerAddressMode</a> of <code>VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE</code>"
}
],
- "(VK_NV_mesh_shader)+(VK_VERSION_1_1)": [
+ "(VK_VERSION_1_1)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-commandBuffer-02707",
"text": " If <code>commandBuffer</code> is an unprotected command buffer, any resource accessed by the <code>VkPipeline</code> object bound to the pipeline bind point used by this command <strong class=\"purple\">must</strong> not be a protected resource"
@@ -19787,17 +19813,47 @@
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> not be a protected command buffer"
}
],
- "(VK_NV_mesh_shader)+(VK_VERSION_1_1,VK_KHR_multiview)": [
+ "(VK_VERSION_1_1,VK_KHR_multiview)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-maxMultiviewInstanceIndex-02688",
"text": " If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index <strong class=\"purple\">must</strong> be less than or equal to <a href=\"#VkPhysicalDeviceMultiviewProperties\">VkPhysicalDeviceMultiviewProperties</a>::<code>maxMultiviewInstanceIndex</code>"
}
],
- "(VK_NV_mesh_shader)+(VK_EXT_sample_locations)": [
+ "(VK_EXT_sample_locations)": [
{
"vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-sampleLocationsEnable-02689",
"text": " If the bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set"
}
+ ],
+ "(VK_NV_mesh_shader)": [
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-commandBuffer-parameter",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-buffer-parameter",
+ "text": " <code>buffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-countBuffer-parameter",
+ "text": " <code>countBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkBuffer\">VkBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-commandBuffer-recording",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-commandBuffer-cmdpool",
+ "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics operations"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-renderpass",
+ "text": " This command <strong class=\"purple\">must</strong> only be called inside of a render pass instance"
+ },
+ {
+ "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-commonparent",
+ "text": " Each of <code>buffer</code>, <code>commandBuffer</code>, and <code>countBuffer</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
+ }
]
},
"VkPipelineVertexInputStateCreateInfo": {
@@ -21923,7 +21979,7 @@
]
},
"vkCmdDispatchBase": {
- "(VK_VERSION_1_1,VK_KHR_device_group)": [
+ "core": [
{
"vuid": "VUID-vkCmdDispatchBase-None-02690",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_LINEAR</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT</code>"
@@ -22003,37 +22059,21 @@
{
"vuid": "VUID-vkCmdDispatchBase-baseGroupX-00427",
"text": " If any of <code>baseGroupX</code>, <code>baseGroupY</code>, or <code>baseGroupZ</code> are not zero, then the bound compute pipeline <strong class=\"purple\">must</strong> have been created with the <code>VK_PIPELINE_CREATE_DISPATCH_BASE</code> flag"
- },
- {
- "vuid": "VUID-vkCmdDispatchBase-commandBuffer-parameter",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdDispatchBase-commandBuffer-recording",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
- },
- {
- "vuid": "VUID-vkCmdDispatchBase-commandBuffer-cmdpool",
- "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support compute operations"
- },
- {
- "vuid": "VUID-vkCmdDispatchBase-renderpass",
- "text": " This command <strong class=\"purple\">must</strong> only be called outside of a render pass instance"
}
],
- "(VK_VERSION_1_1,VK_KHR_device_group)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDispatchBase-None-02692",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT</code>"
}
],
- "(VK_VERSION_1_1,VK_KHR_device_group)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDispatchBase-None-02693",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> not have a <a href=\"#VkImageViewType\">VkImageViewType</a> of <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>"
}
],
- "(VK_VERSION_1_1,VK_KHR_device_group)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdDispatchBase-filterCubic-02694",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubic</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
@@ -22043,17 +22083,35 @@
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> with a reduction mode of either <code>VK_SAMPLER_REDUCTION_MODE_MIN</code> or <code>VK_SAMPLER_REDUCTION_MODE_MAX</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering together with minmax filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubicMinmax</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
}
],
- "(VK_VERSION_1_1,VK_KHR_device_group)+(VK_NV_corner_sampled_image)": [
+ "(VK_NV_corner_sampled_image)": [
{
"vuid": "VUID-vkCmdDispatchBase-flags-02696",
"text": " Any <a href=\"#VkImage\">VkImage</a> created with a <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a>::<code>flags</code> containing <code>VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV</code> sampled as a result of this command <strong class=\"purple\">must</strong> only be sampled using a <a href=\"#VkSamplerAddressMode\">VkSamplerAddressMode</a> of <code>VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE</code>"
}
],
- "(VK_VERSION_1_1,VK_KHR_device_group)+(VK_VERSION_1_1)": [
+ "(VK_VERSION_1_1)": [
{
"vuid": "VUID-vkCmdDispatchBase-commandBuffer-02707",
"text": " If <code>commandBuffer</code> is an unprotected command buffer, any resource accessed by the <code>VkPipeline</code> object bound to the pipeline bind point used by this command <strong class=\"purple\">must</strong> not be a protected resource"
}
+ ],
+ "(VK_VERSION_1_1,VK_KHR_device_group)": [
+ {
+ "vuid": "VUID-vkCmdDispatchBase-commandBuffer-parameter",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdDispatchBase-commandBuffer-recording",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
+ },
+ {
+ "vuid": "VUID-vkCmdDispatchBase-commandBuffer-cmdpool",
+ "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support compute operations"
+ },
+ {
+ "vuid": "VUID-vkCmdDispatchBase-renderpass",
+ "text": " This command <strong class=\"purple\">must</strong> only be called outside of a render pass instance"
+ }
]
},
"vkCreateIndirectCommandsLayoutNV": {
@@ -22385,7 +22443,7 @@
]
},
"vkCmdExecuteGeneratedCommandsNV": {
- "(VK_NV_device_generated_commands)": [
+ "core": [
{
"vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-None-02690",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_LINEAR</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT</code>"
@@ -22477,41 +22535,21 @@
{
"vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-deviceGeneratedCommands-02911",
"text": " The <a href=\"#feature-device-generated-commands\"><code>VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV</code>::<code>deviceGeneratedCommands</code></a> feature <strong class=\"purple\">must</strong> be enabled"
- },
- {
- "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-commandBuffer-parameter",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
- },
- {
- "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-pGeneratedCommandsInfo-parameter",
- "text": " <code>pGeneratedCommandsInfo</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkGeneratedCommandsInfoNV\">VkGeneratedCommandsInfoNV</a> structure"
- },
- {
- "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-commandBuffer-recording",
- "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
- },
- {
- "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-commandBuffer-cmdpool",
- "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics, or compute operations"
- },
- {
- "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-renderpass",
- "text": " This command <strong class=\"purple\">must</strong> only be called inside of a render pass instance"
}
],
- "(VK_NV_device_generated_commands)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-None-02692",
"text": " If a <code>VkImageView</code> is sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command, then the image view&#8217;s <a href=\"#resources-image-view-format-features\">format features</a> <strong class=\"purple\">must</strong> contain <code>VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT</code>"
}
],
- "(VK_NV_device_generated_commands)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-None-02693",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> not have a <a href=\"#VkImageViewType\">VkImageViewType</a> of <code>VK_IMAGE_VIEW_TYPE_3D</code>, <code>VK_IMAGE_VIEW_TYPE_CUBE</code>, or <code>VK_IMAGE_VIEW_TYPE_CUBE_ARRAY</code>"
}
],
- "(VK_NV_device_generated_commands)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
+ "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [
{
"vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-filterCubic-02694",
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubic</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
@@ -22521,13 +22559,13 @@
"text": " Any <a href=\"#VkImageView\">VkImageView</a> being sampled with <code>VK_FILTER_CUBIC_EXT</code> with a reduction mode of either <code>VK_SAMPLER_REDUCTION_MODE_MIN</code> or <code>VK_SAMPLER_REDUCTION_MODE_MAX</code> as a result of this command <strong class=\"purple\">must</strong> have a <a href=\"#VkImageViewType\">VkImageViewType</a> and format that supports cubic filtering together with minmax filtering, as specified by <code>VkFilterCubicImageViewImageFormatPropertiesEXT</code>::<code>filterCubicMinmax</code> returned by <code>vkGetPhysicalDeviceImageFormatProperties2</code>"
}
],
- "(VK_NV_device_generated_commands)+(VK_NV_corner_sampled_image)": [
+ "(VK_NV_corner_sampled_image)": [
{
"vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-flags-02696",
"text": " Any <a href=\"#VkImage\">VkImage</a> created with a <a href=\"#VkImageCreateInfo\">VkImageCreateInfo</a>::<code>flags</code> containing <code>VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV</code> sampled as a result of this command <strong class=\"purple\">must</strong> only be sampled using a <a href=\"#VkSamplerAddressMode\">VkSamplerAddressMode</a> of <code>VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE</code>"
}
],
- "(VK_NV_device_generated_commands)+(VK_VERSION_1_1)": [
+ "(VK_VERSION_1_1)": [
{
"vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-commandBuffer-02707",
"text": " If <code>commandBuffer</code> is an unprotected command buffer, any resource accessed by the <code>VkPipeline</code> object bound to the pipeline bind point used by this command <strong class=\"purple\">must</strong> not be a protected resource"
@@ -22537,23 +22575,45 @@
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> not be a protected command buffer"
}
],
- "(VK_NV_device_generated_commands)+(VK_VERSION_1_1,VK_KHR_multiview)": [
+ "(VK_VERSION_1_1,VK_KHR_multiview)": [
{
"vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-maxMultiviewInstanceIndex-02688",
"text": " If the draw is recorded in a render pass instance with multiview enabled, the maximum instance index <strong class=\"purple\">must</strong> be less than or equal to <a href=\"#VkPhysicalDeviceMultiviewProperties\">VkPhysicalDeviceMultiviewProperties</a>::<code>maxMultiviewInstanceIndex</code>"
}
],
- "(VK_NV_device_generated_commands)+(VK_EXT_sample_locations)": [
+ "(VK_EXT_sample_locations)": [
{
"vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-sampleLocationsEnable-02689",
"text": " If the bound graphics pipeline was created with <a href=\"#VkPipelineSampleLocationsStateCreateInfoEXT\">VkPipelineSampleLocationsStateCreateInfoEXT</a>::<code>sampleLocationsEnable</code> set to <code>VK_TRUE</code> and the current subpass has a depth/stencil attachment, then that attachment <strong class=\"purple\">must</strong> have been created with the <code>VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT</code> bit set"
}
],
- "(VK_NV_device_generated_commands)+(VK_EXT_transform_feedback)": [
+ "(VK_EXT_transform_feedback)": [
{
"vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-None-02910",
"text": " Transform feedback <strong class=\"purple\">must</strong> not be active"
}
+ ],
+ "(VK_NV_device_generated_commands)": [
+ {
+ "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-commandBuffer-parameter",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
+ },
+ {
+ "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-pGeneratedCommandsInfo-parameter",
+ "text": " <code>pGeneratedCommandsInfo</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkGeneratedCommandsInfoNV\">VkGeneratedCommandsInfoNV</a> structure"
+ },
+ {
+ "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-commandBuffer-recording",
+ "text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">recording state</a>"
+ },
+ {
+ "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-commandBuffer-cmdpool",
+ "text": " The <code>VkCommandPool</code> that <code>commandBuffer</code> was allocated from <strong class=\"purple\">must</strong> support graphics, or compute operations"
+ },
+ {
+ "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-renderpass",
+ "text": " This command <strong class=\"purple\">must</strong> only be called inside of a render pass instance"
+ }
]
},
"VkGeneratedCommandsInfoNV": {
@@ -26665,7 +26725,7 @@
]
},
"vkCmdBuildAccelerationStructureKHR": {
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)": [
+ "core": [
{
"vuid": "VUID-vkCmdBuildAccelerationStructureKHR-pOffsetInfos-03402",
"text": " Each element of <code>ppOffsetInfos</code>[i] <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>pInfos</code>[i].<code>geometryCount</code> <code>VkAccelerationStructureBuildOffsetInfoKHR</code> structures"
@@ -26699,6 +26759,34 @@
"text": " There <strong class=\"purple\">must</strong> not be any <a href=\"#resources-memory-aliasing\">memory aliasing</a> between memory bound to any top level, bottom level, or instance acceleration structure accessed by this command"
},
{
+ "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-update-03527",
+ "text": " If <code>update</code> is <code>VK_FALSE</code>, all addresses between <code>pInfos</code>[i].<code>scratchData</code> and <code>pInfos</code>[i].<code>scratchData</code> + N - 1 <strong class=\"purple\">must</strong> be in the buffer device address range of the same buffer, where N is given by the <code>size</code> member of the <a href=\"#VkMemoryRequirements\">VkMemoryRequirements</a> structure returned from a call to <a href=\"#vkGetAccelerationStructureMemoryRequirementsKHR\">vkGetAccelerationStructureMemoryRequirementsKHR</a> with <a href=\"#VkAccelerationStructureMemoryRequirementsInfoKHR\">VkAccelerationStructureMemoryRequirementsInfoKHR</a>::<code>accelerationStructure</code> set to <code>pInfos</code>[i].<code>dstAccelerationStructure</code> and <a href=\"#VkAccelerationStructureMemoryRequirementsInfoKHR\">VkAccelerationStructureMemoryRequirementsInfoKHR</a>::<code>type</code> set to <code>VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR</code>"
+ },
+ {
+ "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-update-03528",
+ "text": " If <code>update</code> is <code>VK_TRUE</code>, all addresses between <code>pInfos</code>[i].<code>scratchData</code> and <code>pInfos</code>[i].<code>scratchData</code> + N - 1 <strong class=\"purple\">must</strong> be in the buffer device address range of the same buffer, where N is given by the <code>size</code> member of the <a href=\"#VkMemoryRequirements\">VkMemoryRequirements</a> structure returned from a call to <a href=\"#vkGetAccelerationStructureMemoryRequirementsKHR\">vkGetAccelerationStructureMemoryRequirementsKHR</a> with <a href=\"#VkAccelerationStructureMemoryRequirementsInfoKHR\">VkAccelerationStructureMemoryRequirementsInfoKHR</a>::<code>accelerationStructure</code> set to <code>pInfos</code>[i].<code>dstAccelerationStructure</code> and <a href=\"#VkAccelerationStructureMemoryRequirementsInfoKHR\">VkAccelerationStructureMemoryRequirementsInfoKHR</a>::<code>type</code> set to <code>VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR</code>"
+ },
+ {
+ "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-pInfos-03529",
+ "text": " The buffer from which the buffer device address <code>pInfos</code>[i].<code>scratchData</code> is queried <strong class=\"purple\">must</strong> have been created with <code>VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR</code> usage flag"
+ },
+ {
+ "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-None-04046",
+ "text": " All <a href=\"#VkDeviceOrHostAddressKHR\">VkDeviceOrHostAddressKHR</a> or <a href=\"#VkDeviceOrHostAddressConstKHR\">VkDeviceOrHostAddressConstKHR</a> referenced by this command <strong class=\"purple\">must</strong> contain valid device addresses for a buffer bound to device memory. If the buffer is non-sparse then it <strong class=\"purple\">must</strong> be bound completely and contiguously to a single VkDeviceMemory object"
+ },
+ {
+ "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-None-03531",
+ "text": " All <code>VkAccelerationStructureKHR</code> objects referenced by this command <strong class=\"purple\">must</strong> be bound to device memory"
+ }
+ ],
+ "(VK_KHR_deferred_host_operations)": [
+ {
+ "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-pNext-03532",
+ "text": " The <a href=\"#VkDeferredOperationInfoKHR\">VkDeferredOperationInfoKHR</a> structure <strong class=\"purple\">must</strong> not be included in the <code>pNext</code> chain of any of the provided <a href=\"#VkAccelerationStructureBuildGeometryInfoKHR\">VkAccelerationStructureBuildGeometryInfoKHR</a> structures"
+ }
+ ],
+ "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)": [
+ {
"vuid": "VUID-vkCmdBuildAccelerationStructureKHR-commandBuffer-parameter",
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
},
@@ -26726,34 +26814,6 @@
"vuid": "VUID-vkCmdBuildAccelerationStructureKHR-infoCount-arraylength",
"text": " <code>infoCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
}
- ],
- "core": [
- {
- "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-update-03527",
- "text": " If <code>update</code> is <code>VK_FALSE</code>, all addresses between <code>pInfos</code>[i].<code>scratchData</code> and <code>pInfos</code>[i].<code>scratchData</code> + N - 1 <strong class=\"purple\">must</strong> be in the buffer device address range of the same buffer, where N is given by the <code>size</code> member of the <a href=\"#VkMemoryRequirements\">VkMemoryRequirements</a> structure returned from a call to <a href=\"#vkGetAccelerationStructureMemoryRequirementsKHR\">vkGetAccelerationStructureMemoryRequirementsKHR</a> with <a href=\"#VkAccelerationStructureMemoryRequirementsInfoKHR\">VkAccelerationStructureMemoryRequirementsInfoKHR</a>::<code>accelerationStructure</code> set to <code>pInfos</code>[i].<code>dstAccelerationStructure</code> and <a href=\"#VkAccelerationStructureMemoryRequirementsInfoKHR\">VkAccelerationStructureMemoryRequirementsInfoKHR</a>::<code>type</code> set to <code>VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR</code>"
- },
- {
- "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-update-03528",
- "text": " If <code>update</code> is <code>VK_TRUE</code>, all addresses between <code>pInfos</code>[i].<code>scratchData</code> and <code>pInfos</code>[i].<code>scratchData</code> + N - 1 <strong class=\"purple\">must</strong> be in the buffer device address range of the same buffer, where N is given by the <code>size</code> member of the <a href=\"#VkMemoryRequirements\">VkMemoryRequirements</a> structure returned from a call to <a href=\"#vkGetAccelerationStructureMemoryRequirementsKHR\">vkGetAccelerationStructureMemoryRequirementsKHR</a> with <a href=\"#VkAccelerationStructureMemoryRequirementsInfoKHR\">VkAccelerationStructureMemoryRequirementsInfoKHR</a>::<code>accelerationStructure</code> set to <code>pInfos</code>[i].<code>dstAccelerationStructure</code> and <a href=\"#VkAccelerationStructureMemoryRequirementsInfoKHR\">VkAccelerationStructureMemoryRequirementsInfoKHR</a>::<code>type</code> set to <code>VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR</code>"
- },
- {
- "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-pInfos-03529",
- "text": " The buffer from which the buffer device address <code>pInfos</code>[i].<code>scratchData</code> is queried <strong class=\"purple\">must</strong> have been created with <code>VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR</code> usage flag"
- },
- {
- "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-None-04046",
- "text": " All <a href=\"#VkDeviceOrHostAddressKHR\">VkDeviceOrHostAddressKHR</a> or <a href=\"#VkDeviceOrHostAddressConstKHR\">VkDeviceOrHostAddressConstKHR</a> referenced by this command <strong class=\"purple\">must</strong> contain valid device addresses for a buffer bound to device memory. If the buffer is non-sparse then it <strong class=\"purple\">must</strong> be bound completely and contiguously to a single VkDeviceMemory object"
- },
- {
- "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-None-03531",
- "text": " All <code>VkAccelerationStructureKHR</code> objects referenced by this command <strong class=\"purple\">must</strong> be bound to device memory"
- }
- ],
- "(VK_KHR_deferred_host_operations)": [
- {
- "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-pNext-03532",
- "text": " The <a href=\"#VkDeferredOperationInfoKHR\">VkDeferredOperationInfoKHR</a> structure <strong class=\"purple\">must</strong> not be included in the <code>pNext</code> chain of any of the provided <a href=\"#VkAccelerationStructureBuildGeometryInfoKHR\">VkAccelerationStructureBuildGeometryInfoKHR</a> structures"
- }
]
},
"vkCmdBuildAccelerationStructureIndirectKHR": {
@@ -27045,14 +27105,6 @@
"text": " The queries identified by <code>queryPool</code> and <code>firstQuery</code> <strong class=\"purple\">must</strong> be <em>unavailable</em>"
},
{
- "vuid": "VUID-vkCmdWriteAccelerationStructuresPropertiesKHR-accelerationStructures-03431",
- "text": " All acceleration structures in <code>accelerationStructures</code> <strong class=\"purple\">must</strong> have been built with <code>VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR</code> if <code>queryType</code> is <code>VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR</code>"
- },
- {
- "vuid": "VUID-vkCmdWriteAccelerationStructuresPropertiesKHR-queryType-03432",
- "text": " <code>queryType</code> <strong class=\"purple\">must</strong> be <code>VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR</code> or <code>VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR</code>"
- },
- {
"vuid": "VUID-vkCmdWriteAccelerationStructuresPropertiesKHR-commandBuffer-parameter",
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
},
@@ -27088,10 +27140,20 @@
"vuid": "VUID-vkCmdWriteAccelerationStructuresPropertiesKHR-commonparent",
"text": " Each of <code>commandBuffer</code>, <code>queryPool</code>, and the elements of <code>pAccelerationStructures</code> <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from the same <a href=\"#VkDevice\">VkDevice</a>"
}
+ ],
+ "core": [
+ {
+ "vuid": "VUID-vkCmdWriteAccelerationStructuresPropertiesKHR-accelerationStructures-03431",
+ "text": " All acceleration structures in <code>accelerationStructures</code> <strong class=\"purple\">must</strong> have been built with <code>VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR</code> if <code>queryType</code> is <code>VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR</code>"
+ },
+ {
+ "vuid": "VUID-vkCmdWriteAccelerationStructuresPropertiesKHR-queryType-03432",
+ "text": " <code>queryType</code> <strong class=\"purple\">must</strong> be <code>VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR</code> or <code>VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR</code>"
+ }
]
},
"vkCmdCopyAccelerationStructureNV": {
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)": [
+ "core": [
{
"vuid": "VUID-vkCmdCopyAccelerationStructureNV-mode-03410",
"text": " <code>mode</code> <strong class=\"purple\">must</strong> be <code>VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR</code> or <code>VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR</code>"
@@ -27099,7 +27161,9 @@
{
"vuid": "VUID-vkCmdCopyAccelerationStructureNV-src-03411",
"text": " <code>src</code> <strong class=\"purple\">must</strong> have been built with <code>VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR</code> if <code>mode</code> is <code>VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR</code>"
- },
+ }
+ ],
+ "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)": [
{
"vuid": "VUID-vkCmdCopyAccelerationStructureNV-commandBuffer-parameter",
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
@@ -27169,7 +27233,7 @@
]
},
"VkCopyAccelerationStructureInfoKHR": {
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)": [
+ "core": [
{
"vuid": "VUID-VkCopyAccelerationStructureInfoKHR-mode-03410",
"text": " <code>mode</code> <strong class=\"purple\">must</strong> be <code>VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR</code> or <code>VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR</code>"
@@ -27177,7 +27241,9 @@
{
"vuid": "VUID-VkCopyAccelerationStructureInfoKHR-src-03411",
"text": " <code>src</code> <strong class=\"purple\">must</strong> have been built with <code>VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR</code> if <code>mode</code> is <code>VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR</code>"
- },
+ }
+ ],
+ "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)": [
{
"vuid": "VUID-VkCopyAccelerationStructureInfoKHR-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR</code>"
@@ -27219,10 +27285,6 @@
"text": " All <code>VkAccelerationStructureKHR</code> objects referenced by this command <strong class=\"purple\">must</strong> be bound to device memory"
},
{
- "vuid": "VUID-vkCmdCopyAccelerationStructureToMemoryKHR-mode-03412",
- "text": " <code>mode</code> <strong class=\"purple\">must</strong> be <code>VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR</code>"
- },
- {
"vuid": "VUID-vkCmdCopyAccelerationStructureToMemoryKHR-commandBuffer-parameter",
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
},
@@ -27248,6 +27310,12 @@
"vuid": "VUID-vkCmdCopyAccelerationStructureToMemoryKHR-pNext-03560",
"text": " The <a href=\"#VkDeferredOperationInfoKHR\">VkDeferredOperationInfoKHR</a> structure <strong class=\"purple\">must</strong> not be included in the <code>pNext</code> chain of the <a href=\"#VkCopyAccelerationStructureToMemoryInfoKHR\">VkCopyAccelerationStructureToMemoryInfoKHR</a> structure"
}
+ ],
+ "core": [
+ {
+ "vuid": "VUID-vkCmdCopyAccelerationStructureToMemoryKHR-mode-03412",
+ "text": " <code>mode</code> <strong class=\"purple\">must</strong> be <code>VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR</code>"
+ }
]
},
"VkCopyAccelerationStructureToMemoryInfoKHR": {
@@ -27257,10 +27325,6 @@
"text": " The memory pointed to by <code>dst</code> <strong class=\"purple\">must</strong> be at least as large as the serialization size of <code>src</code>, as reported by <code>VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR</code>"
},
{
- "vuid": "VUID-VkCopyAccelerationStructureToMemoryInfoKHR-mode-03412",
- "text": " <code>mode</code> <strong class=\"purple\">must</strong> be <code>VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR</code>"
- },
- {
"vuid": "VUID-VkCopyAccelerationStructureToMemoryInfoKHR-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR</code>"
},
@@ -27284,6 +27348,12 @@
"vuid": "VUID-VkCopyAccelerationStructureToMemoryInfoKHR-mode-parameter",
"text": " <code>mode</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCopyAccelerationStructureModeKHR\">VkCopyAccelerationStructureModeKHR</a> value"
}
+ ],
+ "core": [
+ {
+ "vuid": "VUID-VkCopyAccelerationStructureToMemoryInfoKHR-mode-03412",
+ "text": " <code>mode</code> <strong class=\"purple\">must</strong> be <code>VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR</code>"
+ }
]
},
"vkCmdCopyMemoryToAccelerationStructureKHR": {
@@ -27297,14 +27367,6 @@
"text": " All <code>VkAccelerationStructureKHR</code> objects referenced by this command <strong class=\"purple\">must</strong> be bound to device memory"
},
{
- "vuid": "VUID-vkCmdCopyMemoryToAccelerationStructureKHR-mode-03413",
- "text": " <code>mode</code> <strong class=\"purple\">must</strong> be <code>VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR</code>"
- },
- {
- "vuid": "VUID-vkCmdCopyMemoryToAccelerationStructureKHR-pInfo-03414",
- "text": " The data in <code>pInfo-&gt;src</code> <strong class=\"purple\">must</strong> have a format compatible with the destination physical device as returned by <a href=\"#vkGetDeviceAccelerationStructureCompatibilityKHR\">vkGetDeviceAccelerationStructureCompatibilityKHR</a>"
- },
- {
"vuid": "VUID-vkCmdCopyMemoryToAccelerationStructureKHR-commandBuffer-parameter",
"text": " <code>commandBuffer</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkCommandBuffer\">VkCommandBuffer</a> handle"
},
@@ -27330,10 +27392,20 @@
"vuid": "VUID-vkCmdCopyMemoryToAccelerationStructureKHR-pNext-03564",
"text": " The <a href=\"#VkDeferredOperationInfoKHR\">VkDeferredOperationInfoKHR</a> structure <strong class=\"purple\">must</strong> not be included in the <code>pNext</code> chain of the <a href=\"#VkCopyMemoryToAccelerationStructureInfoKHR\">VkCopyMemoryToAccelerationStructureInfoKHR</a> structure"
}
+ ],
+ "core": [
+ {
+ "vuid": "VUID-vkCmdCopyMemoryToAccelerationStructureKHR-mode-03413",
+ "text": " <code>mode</code> <strong class=\"purple\">must</strong> be <code>VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR</code>"
+ },
+ {
+ "vuid": "VUID-vkCmdCopyMemoryToAccelerationStructureKHR-pInfo-03414",
+ "text": " The data in <code>pInfo-&gt;src</code> <strong class=\"purple\">must</strong> have a format compatible with the destination physical device as returned by <a href=\"#vkGetDeviceAccelerationStructureCompatibilityKHR\">vkGetDeviceAccelerationStructureCompatibilityKHR</a>"
+ }
]
},
"VkCopyMemoryToAccelerationStructureInfoKHR": {
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)": [
+ "core": [
{
"vuid": "VUID-VkCopyMemoryToAccelerationStructureInfoKHR-mode-03413",
"text": " <code>mode</code> <strong class=\"purple\">must</strong> be <code>VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR</code>"
@@ -27341,7 +27413,9 @@
{
"vuid": "VUID-VkCopyMemoryToAccelerationStructureInfoKHR-pInfo-03414",
"text": " The data in <code>pInfo-&gt;src</code> <strong class=\"purple\">must</strong> have a format compatible with the destination physical device as returned by <a href=\"#vkGetDeviceAccelerationStructureCompatibilityKHR\">vkGetDeviceAccelerationStructureCompatibilityKHR</a>"
- },
+ }
+ ],
+ "(VK_NV_ray_tracing,VK_KHR_ray_tracing)": [
{
"vuid": "VUID-VkCopyMemoryToAccelerationStructureInfoKHR-sType-sType",
"text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR</code>"
@@ -27401,7 +27475,7 @@
]
},
"vkBuildAccelerationStructureKHR": {
- "(VK_NV_ray_tracing,VK_KHR_ray_tracing)": [
+ "core": [
{
"vuid": "VUID-vkBuildAccelerationStructureKHR-pOffsetInfos-03402",
"text": " Each element of <code>ppOffsetInfos</code>[i] <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>pInfos</code>[i].<code>geometryCount</code> <code>VkAccelerationStructureBuildOffsetInfoKHR</code> structures"
@@ -27435,6 +27509,20 @@
"text": " There <strong class=\"purple\">must</strong> not be any <a href=\"#resources-memory-aliasing\">memory aliasing</a> between memory bound to any top level, bottom level, or instance acceleration structure accessed by this command"
},
{
+ "vuid": "VUID-vkBuildAccelerationStructureKHR-None-03437",
+ "text": " All <a href=\"#VkDeviceOrHostAddressKHR\">VkDeviceOrHostAddressKHR</a> or <a href=\"#VkDeviceOrHostAddressConstKHR\">VkDeviceOrHostAddressConstKHR</a> referenced by this command <strong class=\"purple\">must</strong> contain valid host addresses"
+ },
+ {
+ "vuid": "VUID-vkBuildAccelerationStructureKHR-None-03438",
+ "text": " All <code>VkAccelerationStructureKHR</code> objects referenced by this command <strong class=\"purple\">must</strong> be bound to host-visible memory"
+ },
+ {
+ "vuid": "VUID-vkBuildAccelerationStructureKHR-rayTracingHostAccelerationStructureCommands-03439",
+ "text": " The <a href=\"#feature-raytracing-hostascmds\"><code>VkPhysicalDeviceRayTracingFeaturesKHR</code>::<code>rayTracingHostAccelerationStructureCommands</code></a> feature <strong class=\"purple\">must</strong> be enabled"
+ }
+ ],
+ "(VK_NV_ray_tracing,VK_KHR_ray_tracing)": [
+ {
"vuid": "VUID-vkBuildAccelerationStructureKHR-device-parameter",
"text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle"
},
@@ -27450,20 +27538,6 @@
"vuid": "VUID-vkBuildAccelerationStructureKHR-infoCount-arraylength",
"text": " <code>infoCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>"
}
- ],
- "core": [
- {
- "vuid": "VUID-vkBuildAccelerationStructureKHR-None-03437",
- "text": " All <a href=\"#VkDeviceOrHostAddressKHR\">VkDeviceOrHostAddressKHR</a> or <a href=\"#VkDeviceOrHostAddressConstKHR\">VkDeviceOrHostAddressConstKHR</a> referenced by this command <strong class=\"purple\">must</strong> contain valid host addresses"
- },
- {
- "vuid": "VUID-vkBuildAccelerationStructureKHR-None-03438",
- "text": " All <code>VkAccelerationStructureKHR</code> objects referenced by this command <strong class=\"purple\">must</strong> be bound to host-visible memory"
- },
- {
- "vuid": "VUID-vkBuildAccelerationStructureKHR-rayTracingHostAccelerationStructureCommands-03439",
- "text": " The <a href=\"#feature-raytracing-hostascmds\"><code>VkPhysicalDeviceRayTracingFeaturesKHR</code>::<code>rayTracingHostAccelerationStructureCommands</code></a> feature <strong class=\"purple\">must</strong> be enabled"
- }
]
},
"vkCopyAccelerationStructureKHR": {
@@ -27561,14 +27635,6 @@
"text": " The acceleration structures referenced by <code>pAccelerationStructures</code> <strong class=\"purple\">must</strong> be bound to host-visible memory"
},
{
- "vuid": "VUID-vkWriteAccelerationStructuresPropertiesKHR-accelerationStructures-03431",
- "text": " All acceleration structures in <code>accelerationStructures</code> <strong class=\"purple\">must</strong> have been built with <code>VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR</code> if <code>queryType</code> is <code>VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR</code>"
- },
- {
- "vuid": "VUID-vkWriteAccelerationStructuresPropertiesKHR-queryType-03432",
- "text": " <code>queryType</code> <strong class=\"purple\">must</strong> be <code>VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR</code> or <code>VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR</code>"
- },
- {
"vuid": "VUID-vkWriteAccelerationStructuresPropertiesKHR-device-parameter",
"text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle"
},
@@ -27599,6 +27665,14 @@
],
"core": [
{
+ "vuid": "VUID-vkWriteAccelerationStructuresPropertiesKHR-accelerationStructures-03431",
+ "text": " All acceleration structures in <code>accelerationStructures</code> <strong class=\"purple\">must</strong> have been built with <code>VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR</code> if <code>queryType</code> is <code>VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR</code>"
+ },
+ {
+ "vuid": "VUID-vkWriteAccelerationStructuresPropertiesKHR-queryType-03432",
+ "text": " <code>queryType</code> <strong class=\"purple\">must</strong> be <code>VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR</code> or <code>VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR</code>"
+ },
+ {
"vuid": "VUID-vkWriteAccelerationStructuresPropertiesKHR-rayTracingHostAccelerationStructureCommands-03454",
"text": " the <a href=\"#feature-raytracing-hostascmds\"><code>VkPhysicalDeviceRayTracingFeaturesKHR</code>::<code>rayTracingHostAccelerationStructureCommands</code></a> feature <strong class=\"purple\">must</strong> be enabled"
}
diff --git a/registry/vk.xml b/registry/vk.xml
index fc5f7e0..bf64842 100644
--- a/registry/vk.xml
+++ b/registry/vk.xml
@@ -131,7 +131,7 @@ server.
<type category="define">// Vulkan 1.2 version number
#define <name>VK_API_VERSION_1_2</name> <type>VK_MAKE_VERSION</type>(1, 2, 0)// Patch version should always be set to 0</type>
<type category="define">// Version of this file
-#define <name>VK_HEADER_VERSION</name> 143</type>
+#define <name>VK_HEADER_VERSION</name> 144</type>
<type category="define" requires="VK_HEADER_VERSION">// Complete version of this file
#define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_VERSION</type>(1, 2, VK_HEADER_VERSION)</type>