From f31524575668c6c483356bd54ca974590e31be8e Mon Sep 17 00:00:00 2001 From: Jon Leech Date: Mon, 15 Jun 2020 02:00:56 -0700 Subject: [PATCH] Update for Vulkan-Docs 1.2.144 --- include/vulkan/vk_platform.h | 12 +- include/vulkan/vulkan.h | 12 +- include/vulkan/vulkan.hpp | 2 +- include/vulkan/vulkan_core.h | 2 +- registry/generator.py | 3 +- registry/genvk.py | 3 +- registry/validusage.json | 1818 ++++++++++++++++++---------------- registry/vk.xml | 2 +- 8 files changed, 955 insertions(+), 899 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 geometry shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT" + "vuid": "VUID-vkCmdSetEvent-stageMask-04090", + "text": " If the geometry shaders feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT" }, { - "vuid": "VUID-vkCmdSetEvent-None-04091", - "text": " If the tessellation shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT" + "vuid": "VUID-vkCmdSetEvent-stageMask-04091", + "text": " If the tessellation shaders feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT" }, { - "vuid": "VUID-vkCmdSetEvent-queueFamilyIndex-4098", - "text": " Any pipeline stage included in pname:{stageMaskName} must be supported by the capabilities of the queue family specified by the queueFamilyIndex member of the VkCommandPoolCreateInfo structure that was used to create the VkCommandPool that commandBuffer was allocated from, as specified in the table of supported pipeline stages" + "vuid": "VUID-vkCmdSetEvent-stageMask-4098", + "text": " Any pipeline stage included in pname:stageMask must be supported by the capabilities of the queue family specified by the queueFamilyIndex member of the VkCommandPoolCreateInfo structure that was used to create the VkCommandPool that commandBuffer was allocated from, as specified in the table of supported pipeline stages" }, { "vuid": "VUID-vkCmdSetEvent-stageMask-01149", @@ -2811,36 +2811,36 @@ ], "(VK_EXT_conditional_rendering)": [ { - "vuid": "VUID-vkCmdSetEvent-None-04092", - "text": " If the conditional rendering feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT" + "vuid": "VUID-vkCmdSetEvent-stageMask-04092", + "text": " If the conditional rendering feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT" } ], "(VK_EXT_fragment_density_map)": [ { - "vuid": "VUID-vkCmdSetEvent-None-04093", - "text": " If the fragment density map feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT" + "vuid": "VUID-vkCmdSetEvent-stageMask-04093", + "text": " If the fragment density map feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT" } ], "(VK_EXT_transform_feedback)": [ { - "vuid": "VUID-vkCmdSetEvent-None-04094", - "text": " If the transform feedback feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT" + "vuid": "VUID-vkCmdSetEvent-stageMask-04094", + "text": " If the transform feedback feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT" } ], "(VK_NV_mesh_shader)": [ { - "vuid": "VUID-vkCmdSetEvent-None-04095", - "text": " If the mesh shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV" + "vuid": "VUID-vkCmdSetEvent-stageMask-04095", + "text": " If the mesh shaders feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV" }, { - "vuid": "VUID-vkCmdSetEvent-None-04096", - "text": " If the task shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV" + "vuid": "VUID-vkCmdSetEvent-stageMask-04096", + "text": " If the task shaders feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV" } ], "(VK_NV_shading_rate_image)": [ { - "vuid": "VUID-vkCmdSetEvent-None-04097", - "text": " If the shading rate image feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV" + "vuid": "VUID-vkCmdSetEvent-stageMask-04097", + "text": " If the shading rate image feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV" } ], "(VK_VERSION_1_1,VK_KHR_device_group)": [ @@ -2853,16 +2853,16 @@ "vkCmdResetEvent": { "core": [ { - "vuid": "VUID-vkCmdResetEvent-None-04090", - "text": " If the geometry shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT" + "vuid": "VUID-vkCmdResetEvent-stageMask-04090", + "text": " If the geometry shaders feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT" }, { - "vuid": "VUID-vkCmdResetEvent-None-04091", - "text": " If the tessellation shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT" + "vuid": "VUID-vkCmdResetEvent-stageMask-04091", + "text": " If the tessellation shaders feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT" }, { - "vuid": "VUID-vkCmdResetEvent-queueFamilyIndex-4098", - "text": " Any pipeline stage included in pname:{stageMaskName} must be supported by the capabilities of the queue family specified by the queueFamilyIndex member of the VkCommandPoolCreateInfo structure that was used to create the VkCommandPool that commandBuffer was allocated from, as specified in the table of supported pipeline stages" + "vuid": "VUID-vkCmdResetEvent-stageMask-4098", + "text": " Any pipeline stage included in pname:stageMask must be supported by the capabilities of the queue family specified by the queueFamilyIndex member of the VkCommandPoolCreateInfo structure that was used to create the VkCommandPool that commandBuffer was allocated from, as specified in the table of supported pipeline stages" }, { "vuid": "VUID-vkCmdResetEvent-stageMask-01153", @@ -2907,36 +2907,36 @@ ], "(VK_EXT_conditional_rendering)": [ { - "vuid": "VUID-vkCmdResetEvent-None-04092", - "text": " If the conditional rendering feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT" + "vuid": "VUID-vkCmdResetEvent-stageMask-04092", + "text": " If the conditional rendering feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT" } ], "(VK_EXT_fragment_density_map)": [ { - "vuid": "VUID-vkCmdResetEvent-None-04093", - "text": " If the fragment density map feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT" + "vuid": "VUID-vkCmdResetEvent-stageMask-04093", + "text": " If the fragment density map feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT" } ], "(VK_EXT_transform_feedback)": [ { - "vuid": "VUID-vkCmdResetEvent-None-04094", - "text": " If the transform feedback feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT" + "vuid": "VUID-vkCmdResetEvent-stageMask-04094", + "text": " If the transform feedback feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT" } ], "(VK_NV_mesh_shader)": [ { - "vuid": "VUID-vkCmdResetEvent-None-04095", - "text": " If the mesh shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV" + "vuid": "VUID-vkCmdResetEvent-stageMask-04095", + "text": " If the mesh shaders feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV" }, { - "vuid": "VUID-vkCmdResetEvent-None-04096", - "text": " If the task shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV" + "vuid": "VUID-vkCmdResetEvent-stageMask-04096", + "text": " If the task shaders feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV" } ], "(VK_NV_shading_rate_image)": [ { - "vuid": "VUID-vkCmdResetEvent-None-04097", - "text": " If the shading rate image feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV" + "vuid": "VUID-vkCmdResetEvent-stageMask-04097", + "text": " If the shading rate image feature is not enabled, pname:stageMask must not contain VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV" } ], "(VK_VERSION_1_1,VK_KHR_device_group)": [ @@ -2949,28 +2949,28 @@ "vkCmdWaitEvents": { "core": [ { - "vuid": "VUID-vkCmdWaitEvents-None-04090", - "text": " If the geometry shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT" + "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04090", + "text": " If the geometry shaders feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT" }, { - "vuid": "VUID-vkCmdWaitEvents-None-04091", - "text": " If the tessellation shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT" + "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04091", + "text": " If the tessellation shaders feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT" }, { - "vuid": "VUID-vkCmdWaitEvents-queueFamilyIndex-4098", - "text": " Any pipeline stage included in pname:{stageMaskName} must be supported by the capabilities of the queue family specified by the queueFamilyIndex member of the VkCommandPoolCreateInfo structure that was used to create the VkCommandPool that commandBuffer was allocated from, as specified in the table of supported pipeline stages" + "vuid": "VUID-vkCmdWaitEvents-srcStageMask-4098", + "text": " Any pipeline stage included in pname:srcStageMask must be supported by the capabilities of the queue family specified by the queueFamilyIndex member of the VkCommandPoolCreateInfo structure that was used to create the VkCommandPool that commandBuffer was allocated from, as specified in the table of supported pipeline stages" }, { - "vuid": "VUID-vkCmdWaitEvents-None-04090", - "text": " If the geometry shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT" + "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04090", + "text": " If the geometry shaders feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT" }, { - "vuid": "VUID-vkCmdWaitEvents-None-04091", - "text": " If the tessellation shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT" + "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04091", + "text": " If the tessellation shaders feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT" }, { - "vuid": "VUID-vkCmdWaitEvents-queueFamilyIndex-4098", - "text": " Any pipeline stage included in pname:{stageMaskName} must be supported by the capabilities of the queue family specified by the queueFamilyIndex member of the VkCommandPoolCreateInfo structure that was used to create the VkCommandPool that commandBuffer was allocated from, as specified in the table of supported pipeline stages" + "vuid": "VUID-vkCmdWaitEvents-dstStageMask-4098", + "text": " Any pipeline stage included in pname:dstStageMask must be supported by the capabilities of the queue family specified by the queueFamilyIndex member of the VkCommandPoolCreateInfo structure that was used to create the VkCommandPool that commandBuffer was allocated from, as specified in the table of supported pipeline stages" }, { "vuid": "VUID-vkCmdWaitEvents-srcAccessMask-02815", @@ -3063,60 +3063,60 @@ ], "(VK_EXT_conditional_rendering)": [ { - "vuid": "VUID-vkCmdWaitEvents-None-04092", - "text": " If the conditional rendering feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT" + "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04092", + "text": " If the conditional rendering feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT" }, { - "vuid": "VUID-vkCmdWaitEvents-None-04092", - "text": " If the conditional rendering feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT" + "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04092", + "text": " If the conditional rendering feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT" } ], "(VK_EXT_fragment_density_map)": [ { - "vuid": "VUID-vkCmdWaitEvents-None-04093", - "text": " If the fragment density map feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT" + "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04093", + "text": " If the fragment density map feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT" }, { - "vuid": "VUID-vkCmdWaitEvents-None-04093", - "text": " If the fragment density map feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT" + "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04093", + "text": " If the fragment density map feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT" } ], "(VK_EXT_transform_feedback)": [ { - "vuid": "VUID-vkCmdWaitEvents-None-04094", - "text": " If the transform feedback feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT" + "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04094", + "text": " If the transform feedback feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT" }, { - "vuid": "VUID-vkCmdWaitEvents-None-04094", - "text": " If the transform feedback feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT" + "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04094", + "text": " If the transform feedback feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT" } ], "(VK_NV_mesh_shader)": [ { - "vuid": "VUID-vkCmdWaitEvents-None-04095", - "text": " If the mesh shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV" + "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04095", + "text": " If the mesh shaders feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV" }, { - "vuid": "VUID-vkCmdWaitEvents-None-04096", - "text": " If the task shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV" + "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04096", + "text": " If the task shaders feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV" }, { - "vuid": "VUID-vkCmdWaitEvents-None-04095", - "text": " If the mesh shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV" + "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04095", + "text": " If the mesh shaders feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV" }, { - "vuid": "VUID-vkCmdWaitEvents-None-04096", - "text": " If the task shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV" + "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04096", + "text": " If the task shaders feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV" } ], "(VK_NV_shading_rate_image)": [ { - "vuid": "VUID-vkCmdWaitEvents-None-04097", - "text": " If the shading rate image feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV" + "vuid": "VUID-vkCmdWaitEvents-srcStageMask-04097", + "text": " If the shading rate image feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV" }, { - "vuid": "VUID-vkCmdWaitEvents-None-04097", - "text": " If the shading rate image feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV" + "vuid": "VUID-vkCmdWaitEvents-dstStageMask-04097", + "text": " If the shading rate image feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV" } ], "(VK_VERSION_1_1,VK_KHR_device_group)": [ @@ -3129,28 +3129,28 @@ "vkCmdPipelineBarrier": { "core": [ { - "vuid": "VUID-vkCmdPipelineBarrier-None-04090", - "text": " If the geometry shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT" + "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04090", + "text": " If the geometry shaders feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT" }, { - "vuid": "VUID-vkCmdPipelineBarrier-None-04091", - "text": " If the tessellation shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT" + "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04091", + "text": " If the tessellation shaders feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT" }, { - "vuid": "VUID-vkCmdPipelineBarrier-queueFamilyIndex-4098", - "text": " Any pipeline stage included in pname:{stageMaskName} must be supported by the capabilities of the queue family specified by the queueFamilyIndex member of the VkCommandPoolCreateInfo structure that was used to create the VkCommandPool that commandBuffer was allocated from, as specified in the table of supported pipeline stages" + "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-4098", + "text": " Any pipeline stage included in pname:srcStageMask must be supported by the capabilities of the queue family specified by the queueFamilyIndex member of the VkCommandPoolCreateInfo structure that was used to create the VkCommandPool that commandBuffer was allocated from, as specified in the table of supported pipeline stages" }, { - "vuid": "VUID-vkCmdPipelineBarrier-None-04090", - "text": " If the geometry shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT" + "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04090", + "text": " If the geometry shaders feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT" }, { - "vuid": "VUID-vkCmdPipelineBarrier-None-04091", - "text": " If the tessellation shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT" + "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04091", + "text": " If the tessellation shaders feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT" }, { - "vuid": "VUID-vkCmdPipelineBarrier-queueFamilyIndex-4098", - "text": " Any pipeline stage included in pname:{stageMaskName} must be supported by the capabilities of the queue family specified by the queueFamilyIndex member of the VkCommandPoolCreateInfo structure that was used to create the VkCommandPool that commandBuffer was allocated from, as specified in the table of supported pipeline stages" + "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-4098", + "text": " Any pipeline stage included in pname:dstStageMask must be supported by the capabilities of the queue family specified by the queueFamilyIndex member of the VkCommandPoolCreateInfo structure that was used to create the VkCommandPool that commandBuffer was allocated from, as specified in the table of supported pipeline stages" }, { "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 must have been created with at least one VkSubpassDependency instance in VkRenderPassCreateInfo::pDependencies that expresses a dependency from the current subpass to itself, with synchronization scopes and access scopes 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 must have been created with at least one VkSubpassDependency instance in VkRenderPassCreateInfo::pDependencies that expresses a dependency from the current subpass to itself, with synchronization scopes and access scopes 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 must not include any buffer memory barriers" + "text": " If fname:vkCmdPipelineBarrier is called within a render pass instance, it must not include any buffer memory barriers" }, { "vuid": "VUID-vkCmdPipelineBarrier-image-04073", - "text": " If fname:{refpage} is called within a render pass instance, the image member of any image memory barrier included in this command must 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 image member of any image memory barrier included in this command must 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 oldLayout and newLayout members of any image memory barrier included in this command must be equal" + "text": " If fname:vkCmdPipelineBarrier is called within a render pass instance, the oldLayout and newLayout members of any image memory barrier included in this command must be equal" }, { "vuid": "VUID-vkCmdPipelineBarrier-srcQueueFamilyIndex-01182", - "text": " If fname:{refpage} is called within a render pass instance, the srcQueueFamilyIndex and dstQueueFamilyIndex members of any image memory barrier included in this command must be equal" + "text": " If fname:vkCmdPipelineBarrier is called within a render pass instance, the srcQueueFamilyIndex and dstQueueFamilyIndex members of any image memory barrier included in this command must be equal" }, { "vuid": "VUID-vkCmdPipelineBarrier-commandBuffer-parameter", @@ -3243,66 +3243,66 @@ ], "(VK_EXT_conditional_rendering)": [ { - "vuid": "VUID-vkCmdPipelineBarrier-None-04092", - "text": " If the conditional rendering feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT" + "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04092", + "text": " If the conditional rendering feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT" }, { - "vuid": "VUID-vkCmdPipelineBarrier-None-04092", - "text": " If the conditional rendering feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT" + "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04092", + "text": " If the conditional rendering feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT" } ], "(VK_EXT_fragment_density_map)": [ { - "vuid": "VUID-vkCmdPipelineBarrier-None-04093", - "text": " If the fragment density map feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT" + "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04093", + "text": " If the fragment density map feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT" }, { - "vuid": "VUID-vkCmdPipelineBarrier-None-04093", - "text": " If the fragment density map feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT" + "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04093", + "text": " If the fragment density map feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT" } ], "(VK_EXT_transform_feedback)": [ { - "vuid": "VUID-vkCmdPipelineBarrier-None-04094", - "text": " If the transform feedback feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT" + "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04094", + "text": " If the transform feedback feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT" }, { - "vuid": "VUID-vkCmdPipelineBarrier-None-04094", - "text": " If the transform feedback feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT" + "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04094", + "text": " If the transform feedback feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT" } ], "(VK_NV_mesh_shader)": [ { - "vuid": "VUID-vkCmdPipelineBarrier-None-04095", - "text": " If the mesh shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV" + "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04095", + "text": " If the mesh shaders feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV" }, { - "vuid": "VUID-vkCmdPipelineBarrier-None-04096", - "text": " If the task shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV" + "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04096", + "text": " If the task shaders feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV" }, { - "vuid": "VUID-vkCmdPipelineBarrier-None-04095", - "text": " If the mesh shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV" + "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04095", + "text": " If the mesh shaders feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV" }, { - "vuid": "VUID-vkCmdPipelineBarrier-None-04096", - "text": " If the task shaders feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV" + "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04096", + "text": " If the task shaders feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV" } ], "(VK_NV_shading_rate_image)": [ { - "vuid": "VUID-vkCmdPipelineBarrier-None-04097", - "text": " If the shading rate image feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV" + "vuid": "VUID-vkCmdPipelineBarrier-srcStageMask-04097", + "text": " If the shading rate image feature is not enabled, pname:srcStageMask must not contain VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV" }, { - "vuid": "VUID-vkCmdPipelineBarrier-None-04097", - "text": " If the shading rate image feature is not enabled, pname:{stageMaskName} must not contain VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV" + "vuid": "VUID-vkCmdPipelineBarrier-dstStageMask-04097", + "text": " If the shading rate image feature is not enabled, pname:dstStageMask must not contain VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV" } ], "(VK_VERSION_1_1,VK_KHR_multiview)": [ { "vuid": "VUID-vkCmdPipelineBarrier-dependencyFlags-01186", - "text": " If fname:{refpage} is called outside of a render pass instance, VK_DEPENDENCY_VIEW_LOCAL_BIT must not be included in the dependency flags" + "text": " If fname:vkCmdPipelineBarrier is called outside of a render pass instance, VK_DEPENDENCY_VIEW_LOCAL_BIT must not be included in the dependency flags" } ] }, @@ -4000,19 +4000,19 @@ }, { "vuid": "VUID-VkSubpassDescription-pInputAttachments-02647", - "text": " All attachments in pInputAttachments that are not VK_ATTACHMENT_UNUSED must have formats whose features contain at least one of VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT or VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT" + "text": " All attachments in pInputAttachments that are not VK_ATTACHMENT_UNUSED must have image formats whose potential format features contain at least VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT or VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT" }, { "vuid": "VUID-VkSubpassDescription-pColorAttachments-02648", - "text": " All attachments in pColorAttachments that are not VK_ATTACHMENT_UNUSED must have formats whose features contain VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT" + "text": " All attachments in pColorAttachments that are not VK_ATTACHMENT_UNUSED must have image formats whose potential format features contain VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT" }, { "vuid": "VUID-VkSubpassDescription-pResolveAttachments-02649", - "text": " All attachments in pResolveAttachments that are not VK_ATTACHMENT_UNUSED must have formats whose features contain VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT" + "text": " All attachments in pResolveAttachments that are not VK_ATTACHMENT_UNUSED must have image formats whose potential format features contain VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT" }, { "vuid": "VUID-VkSubpassDescription-pDepthStencilAttachment-02650", - "text": " If pDepthStencilAttachment is not NULL and the attachment is not VK_ATTACHMENT_UNUSED then it must have a format whose features contain VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT" + "text": " If pDepthStencilAttachment is not NULL and the attachment is not VK_ATTACHMENT_UNUSED then it must have a image format whose potential format features contain VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT" }, { "vuid": "VUID-VkSubpassDescription-pDepthStencilAttachment-01418", @@ -4510,19 +4510,19 @@ }, { "vuid": "VUID-VkSubpassDescription2-pInputAttachments-02897", - "text": " All attachments in pInputAttachments that are not VK_ATTACHMENT_UNUSED must have formats whose features contain at least one of VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT or VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT" + "text": " All attachments in pInputAttachments that are not VK_ATTACHMENT_UNUSED must have image formats whose potential format features contain at least VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT or VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT" }, { "vuid": "VUID-VkSubpassDescription2-pColorAttachments-02898", - "text": " All attachments in pColorAttachments that are not VK_ATTACHMENT_UNUSED must have formats whose features contain VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT" + "text": " All attachments in pColorAttachments that are not VK_ATTACHMENT_UNUSED must have image formats whose potential format features contain VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT" }, { "vuid": "VUID-VkSubpassDescription2-pResolveAttachments-02899", - "text": " All attachments in pResolveAttachments that are not VK_ATTACHMENT_UNUSED must have formats whose features contain VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT" + "text": " All attachments in pResolveAttachments that are not VK_ATTACHMENT_UNUSED must have image formats whose potential format features contain VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT" }, { "vuid": "VUID-VkSubpassDescription2-pDepthStencilAttachment-02900", - "text": " If pDepthStencilAttachment is not NULL and the attachment is not VK_ATTACHMENT_UNUSED then it must have a format whose features contain VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT" + "text": " If pDepthStencilAttachment is not NULL and the attachment is not VK_ATTACHMENT_UNUSED then it must have a image format whose potential format features contain VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT" }, { "vuid": "VUID-VkSubpassDescription2-pDepthStencilAttachment-03071", @@ -5236,6 +5236,22 @@ "vuid": "VUID-vkCmdBeginRenderPass-framebuffer-02532", "text": " For any attachment in framebuffer that is used by renderPass and is bound to memory locations that are also bound to another attachment used by renderPass, and if at least one of those uses causes either attachment to be written to, both attachments must have had the VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT set" }, + { + "vuid": "VUID-vkCmdBeginRenderPass-pAttachments-04102", + "text": " Each element of the pAttachments of framebuffer that is referenced by any element of the pInputAttachments of any element of pSubpasses of renderPass must have image view format features containing at least VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT or VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT" + }, + { + "vuid": "VUID-vkCmdBeginRenderPass-pAttachments-04103", + "text": " Each element of the pAttachments of framebuffer that is referenced by any element of the pColorAttachments of any element of pSubpasses of renderPass must have image view format features containing VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT" + }, + { + "vuid": "VUID-vkCmdBeginRenderPass-pAttachments-04104", + "text": " Each element of the pAttachments of framebuffer that is referenced by any element of the pResolveAttachments of any element of pSubpasses of renderPass must have image view format features containing VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT" + }, + { + "vuid": "VUID-vkCmdBeginRenderPass-pAttachments-04105", + "text": " Each element of the pAttachments of framebuffer that is referenced by any element of the pDepthStencilAttachment of any element of pSubpasses of renderPass must have image view format features containing VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT" + }, { "vuid": "VUID-vkCmdBeginRenderPass-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer handle" @@ -5326,6 +5342,22 @@ "vuid": "VUID-vkCmdBeginRenderPass2-framebuffer-02533", "text": " For any attachment in framebuffer that is used by renderPass and is bound to memory locations that are also bound to another attachment used by renderPass, and if at least one of those uses causes either attachment to be written to, both attachments must have had the VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT set" }, + { + "vuid": "VUID-vkCmdBeginRenderPass2-pAttachments-04106", + "text": " Each element of the pAttachments of framebuffer that is referenced by any element of the pInputAttachments of any element of pSubpasses of renderPass must have image view format features contain at least VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT or VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT" + }, + { + "vuid": "VUID-vkCmdBeginRenderPass2-pAttachments-04107", + "text": " Each element of the pAttachments of framebuffer that is referenced by any element of the pColorAttachments of any element of pSubpasses of renderPass must have image view format features contain VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT" + }, + { + "vuid": "VUID-vkCmdBeginRenderPass2-pAttachments-04108", + "text": " Each element of the pAttachments of framebuffer that is referenced by any element of the pResolveAttachments of any element of pSubpasses of renderPass must have image view format features contain VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT" + }, + { + "vuid": "VUID-vkCmdBeginRenderPass2-pAttachments-04109", + "text": " Each element of the pAttachments of framebuffer that is referenced by any element of the pDepthStencilAttachment of any element of pSubpasses of renderPass must have image view format features contain VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT" + }, { "vuid": "VUID-vkCmdBeginRenderPass2-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer 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 flags member of any element of pCreateInfos contains the VK_PIPELINE_CREATE_DERIVATIVE_BIT flag, and the basePipelineIndex member of that same element is not -1, basePipelineIndex must be less than the index into pCreateInfos that corresponds to that element" @@ -7613,7 +7645,15 @@ { "vuid": "VUID-vkCreateRayTracingPipelinesNV-flags-03416", "text": " If the flags member of any element of pCreateInfos contains the VK_PIPELINE_CREATE_DERIVATIVE_BIT flag, the base pipeline must have been created with the VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT flag set" - }, + } + ], + "(VK_EXT_pipeline_creation_cache_control)": [ + { + "vuid": "VUID-vkCreateRayTracingPipelinesNV-pipelineCache-02903", + "text": " If pipelineCache was created with VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT, host access to pipelineCache must be externally synchronized" + } + ], + "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)": [ { "vuid": "VUID-vkCreateRayTracingPipelinesNV-device-parameter", "text": " device must be a valid VkDevice handle" @@ -7642,16 +7682,10 @@ "vuid": "VUID-vkCreateRayTracingPipelinesNV-pipelineCache-parent", "text": " If pipelineCache is a valid handle, it must have been created, allocated, or retrieved from device" } - ], - "(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 pipelineCache was created with VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT, host access to pipelineCache must be externally synchronized" - } ] }, "vkCreateRayTracingPipelinesKHR": { - "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)": [ + "core": [ { "vuid": "VUID-vkCreateRayTracingPipelinesKHR-flags-03415", "text": " If the flags member of any element of pCreateInfos contains the VK_PIPELINE_CREATE_DERIVATIVE_BIT flag, and the basePipelineIndex member of that same element is not -1, basePipelineIndex must be less than the index into pCreateInfos that corresponds to that element" @@ -7663,7 +7697,15 @@ { "vuid": "VUID-vkCreateRayTracingPipelinesKHR-rayTracing-03455", "text": " The rayTracing feature must be enabled" - }, + } + ], + "(VK_EXT_pipeline_creation_cache_control)": [ + { + "vuid": "VUID-vkCreateRayTracingPipelinesKHR-pipelineCache-02903", + "text": " If pipelineCache was created with VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT, host access to pipelineCache must be externally synchronized" + } + ], + "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)": [ { "vuid": "VUID-vkCreateRayTracingPipelinesKHR-device-parameter", "text": " device must be a valid VkDevice handle" @@ -7692,16 +7734,10 @@ "vuid": "VUID-vkCreateRayTracingPipelinesKHR-pipelineCache-parent", "text": " If pipelineCache is a valid handle, it must have been created, allocated, or retrieved from device" } - ], - "(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 pipelineCache was created with VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT, host access to pipelineCache must be externally synchronized" - } ] }, "VkRayTracingPipelineCreateInfoNV": { - "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)": [ + "core": [ { "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03421", "text": " If flags contains the VK_PIPELINE_CREATE_DERIVATIVE_BIT flag, and basePipelineIndex is -1, basePipelineHandle must be a valid handle to a ray tracing VkPipeline" @@ -7737,7 +7773,57 @@ { "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-maxRecursionDepth-03457", "text": " maxRecursionDepth must be less than or equal to VkPhysicalDeviceRayTracingPropertiesNV::maxRecursionDepth" + } + ], + "(VK_NV_device_generated_commands)": [ + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-02904", + "text": " flags must not include VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV" + } + ], + "(VK_EXT_pipeline_creation_cache_control)": [ + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-pipelineCreationCacheControl-02905", + "text": " If the pipelineCreationCacheControl feature is not enabled, flags must not include VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT or VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT" }, + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-02957", + "text": " flags must not include both VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV and VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT at the same time" + } + ], + "(VK_KHR_pipeline_library)": [ + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03456", + "text": " flags must not include VK_PIPELINE_CREATE_LIBRARY_BIT_KHR" + } + ], + "(VK_KHR_ray_tracing)": [ + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03458", + "text": " flags must not include VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR" + }, + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03459", + "text": " flags must not include VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR" + }, + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03460", + "text": " flags must not include VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR" + }, + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03461", + "text": " flags must not include VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR" + }, + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03462", + "text": " flags must not include VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR" + }, + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03463", + "text": " flags must not include VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR" + } + ], + "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)": [ { "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-sType-sType", "text": " sType must be VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV" @@ -7778,58 +7864,10 @@ "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-commonparent", "text": " Both of basePipelineHandle, and layout that are valid handles of non-ignored parameters must have been created, allocated, or retrieved from the same VkDevice" } - ], - "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)+(VK_NV_device_generated_commands)": [ - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-02904", - "text": " flags must not include VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV" - } - ], - "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)+(VK_EXT_pipeline_creation_cache_control)": [ - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-pipelineCreationCacheControl-02905", - "text": " If the pipelineCreationCacheControl feature is not enabled, flags must not include VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT or VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT" - }, - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-02957", - "text": " flags must not include both VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV and VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT at the same time" - } - ], - "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)+(VK_KHR_pipeline_library)": [ - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03456", - "text": " flags must not include VK_PIPELINE_CREATE_LIBRARY_BIT_KHR" - } - ], - "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)+(VK_KHR_ray_tracing)": [ - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03458", - "text": " flags must not include VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR" - }, - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03459", - "text": " flags must not include VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR" - }, - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03460", - "text": " flags must not include VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR" - }, - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03461", - "text": " flags must not include VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR" - }, - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03462", - "text": " flags must not include VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR" - }, - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoNV-flags-03463", - "text": " flags must not include VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR" - } ] }, "VkRayTracingPipelineCreateInfoKHR": { - "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)": [ + "core": [ { "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-flags-03421", "text": " If flags contains the VK_PIPELINE_CREATE_DERIVATIVE_BIT flag, and basePipelineIndex is -1, basePipelineHandle must be a valid handle to a ray tracing VkPipeline" @@ -7889,7 +7927,43 @@ { "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-libraries-02959", "text": " If libraries.libraryCount is zero, then groupCount must not be zero" + } + ], + "(VK_NV_device_generated_commands)": [ + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-flags-02904", + "text": " flags must not include VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV" + } + ], + "(VK_EXT_pipeline_creation_cache_control)": [ + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-pipelineCreationCacheControl-02905", + "text": " If the pipelineCreationCacheControl feature is not enabled, flags must not include VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT or VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT" + } + ], + "(VK_KHR_pipeline_library)": [ + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-flags-03465", + "text": " If flags includes VK_PIPELINE_CREATE_LIBRARY_BIT_KHR, pLibraryInterface must not be NULL" }, + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-libraryCount-03466", + "text": " If the libraryCount member of libraries is greater than 0, pLibraryInterface must not be NULL" + }, + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-pLibraries-03467", + "text": " Each element of the pLibraries member of libraries must have been created with the value of maxRecursionDepth equal to that in this pipeline" + }, + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-pLibraries-03468", + "text": " Each element of the pLibraries member of libraries must have been created with a layout that is compatible with the layout in this pipeline" + }, + { + "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-pLibraries-03469", + "text": " Each element of the pLibraries member of libraries must have been created with values of the maxPayloadSize, maxAttributeSize, and maxCallableSize members of pLibraryInterface equal to those in this pipeline" + } + ], + "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)": [ { "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-sType-sType", "text": " sType must be VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR" @@ -7930,40 +8004,6 @@ "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-commonparent", "text": " Both of basePipelineHandle, and layout that are valid handles of non-ignored parameters must have been created, allocated, or retrieved from the same VkDevice" } - ], - "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)+(VK_NV_device_generated_commands)": [ - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-flags-02904", - "text": " flags must not include VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV" - } - ], - "(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 pipelineCreationCacheControl feature is not enabled, flags must not include VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT or VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT" - } - ], - "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)+(VK_KHR_pipeline_library)": [ - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-flags-03465", - "text": " If flags includes VK_PIPELINE_CREATE_LIBRARY_BIT_KHR, pLibraryInterface must not be NULL" - }, - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-libraryCount-03466", - "text": " If the libraryCount member of libraries is greater than 0, pLibraryInterface must not be NULL" - }, - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-pLibraries-03467", - "text": " Each element of the pLibraries member of libraries must have been created with the value of maxRecursionDepth equal to that in this pipeline" - }, - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-pLibraries-03468", - "text": " Each element of the pLibraries member of libraries must have been created with a layout that is compatible with the layout in this pipeline" - }, - { - "vuid": "VUID-VkRayTracingPipelineCreateInfoKHR-pLibraries-03469", - "text": " Each element of the pLibraries member of libraries must have been created with values of the maxPayloadSize, maxAttributeSize, and maxCallableSize members of pLibraryInterface equal to those in this pipeline" - } ] }, "VkRayTracingShaderGroupCreateInfoNV": { @@ -8290,6 +8330,10 @@ "vuid": "VUID-vkAllocateMemory-pAllocateInfo-01714", "text": " pAllocateInfo->memoryTypeIndex must be less than VkPhysicalDeviceMemoryProperties::memoryTypeCount as returned by vkGetPhysicalDeviceMemoryProperties for the VkPhysicalDevice that device was created from" }, + { + "vuid": "VUID-vkAllocateMemory-maxMemoryAllocationCount-04101", + "text": " There must be less than VkPhysicalDeviceLimits::maxMemoryAllocationCount device memory allocations currently allocated on the device." + }, { "vuid": "VUID-vkAllocateMemory-device-parameter", "text": " device must be a valid VkDevice handle" @@ -12590,6 +12634,10 @@ }, "vkCreateSampler": { "core": [ + { + "vuid": "VUID-vkCreateSampler-maxSamplerAllocationCount-04110", + "text": " There must be less than VkPhysicalDeviceLimits::maxSamplerAllocationCount VkSampler objects currently created on the device." + }, { "vuid": "VUID-vkCreateSampler-device-parameter", "text": " device must be a valid VkDevice handle" @@ -12702,7 +12750,7 @@ "(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)": [ { "vuid": "VUID-VkSamplerCreateInfo-minFilter-01645", - "text": " If sampler {YCbCr} conversion is enabled and the sampler {YCbCr} conversion’s features do not support VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT, minFilter and magFilter must be equal to the sampler {YCbCr} conversion’s chromaFilter" + "text": " If sampler {YCbCr} conversion is enabled and the potential format features of the sampler {YCbCr} conversion do not support VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT, minFilter and magFilter must be equal to the sampler {YCbCr} conversion’s chromaFilter" }, { "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 sampler {YCbCr} conversion’s features must support VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT or VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT" + "text": " The potential format features of the sampler {YCbCr} conversion must support VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT or VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT" }, { "vuid": "VUID-VkSamplerYcbcrConversionCreateInfo-xChromaOffset-01651", - "text": " If the sampler {YCbCr} conversion’s features do not support VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT, xChromaOffset and yChromaOffset must not be VK_CHROMA_LOCATION_COSITED_EVEN" + "text": " If the potential format features of the sampler {YCbCr} conversion do not support VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT, xChromaOffset and yChromaOffset must not be VK_CHROMA_LOCATION_COSITED_EVEN" }, { "vuid": "VUID-VkSamplerYcbcrConversionCreateInfo-xChromaOffset-01652", - "text": " If the sampler {YCbCr} conversion’s features do not support VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT, xChromaOffset and yChromaOffset must not be VK_CHROMA_LOCATION_MIDPOINT" + "text": " If the potential format features of the sampler {YCbCr} conversion do not support VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT, xChromaOffset and yChromaOffset must not be VK_CHROMA_LOCATION_MIDPOINT" }, { "vuid": "VUID-VkSamplerYcbcrConversionCreateInfo-components-02581", @@ -12924,11 +12972,11 @@ }, { "vuid": "VUID-VkSamplerYcbcrConversionCreateInfo-forceExplicitReconstruction-01656", - "text": " If the sampler {YCbCr} conversion’s features do not support VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT forceExplicitReconstruction must be VK_FALSE" + "text": " If the potential format features of the sampler {YCbCr} conversion do not support VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT forceExplicitReconstruction must be VK_FALSE" }, { "vuid": "VUID-VkSamplerYcbcrConversionCreateInfo-chromaFilter-01657", - "text": " If the sampler {YCbCr} conversion’s features do not support VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT, chromaFilter must not be VK_FILTER_LINEAR" + "text": " If the potential format features of the sampler {YCbCr} conversion do not support VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT, chromaFilter must not be VK_FILTER_LINEAR" }, { "vuid": "VUID-VkSamplerYcbcrConversionCreateInfo-sType-sType", @@ -15021,7 +15069,7 @@ ] }, "vkCmdBeginQueryIndexedEXT": { - "(VK_EXT_transform_feedback)": [ + "core": [ { "vuid": "VUID-vkCmdBeginQueryIndexedEXT-queryPool-01922", "text": " queryPool must have been created with a queryType that differs from that of any queries that are active within commandBuffer" @@ -15069,7 +15117,43 @@ { "vuid": "VUID-vkCmdBeginQueryIndexedEXT-queryType-02341", "text": " If the queryType used to create queryPool was VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT then VkPhysicalDeviceTransformFeedbackPropertiesEXT::transformFeedbackQueries must be supported" + } + ], + "(VK_VERSION_1_1)": [ + { + "vuid": "VUID-vkCmdBeginQueryIndexedEXT-commandBuffer-01885", + "text": " commandBuffer must not be a protected command buffer" + } + ], + "(VK_VERSION_1_1,VK_KHR_multiview)": [ + { + "vuid": "VUID-vkCmdBeginQueryIndexedEXT-query-00808", + "text": " If called within a render pass instance, the sum of query and the number of bits set in the current subpass’s view mask must be less than or equal to the number of queries in queryPool" + } + ], + "(VK_KHR_performance_query)": [ + { + "vuid": "VUID-vkCmdBeginQueryIndexedEXT-queryPool-03223", + "text": " If queryPool was created with a queryType of VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR, the profiling lock must have been held before vkBeginCommandBuffer was called on commandBuffer" }, + { + "vuid": "VUID-vkCmdBeginQueryIndexedEXT-queryPool-03224", + "text": " If queryPool was created with a queryType of VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR and one of the counters used to create queryPool was VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR, the query begin must be the first recorded command in commandBuffer" + }, + { + "vuid": "VUID-vkCmdBeginQueryIndexedEXT-queryPool-03225", + "text": " If queryPool was created with a queryType of VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR and one of the counters used to create queryPool was VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR, the begin command must not be recorded within a render pass instance" + }, + { + "vuid": "VUID-vkCmdBeginQueryIndexedEXT-queryPool-03226", + "text": " If queryPool was created with a queryType of VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR and another query pool with a queryType VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR has been used within commandBuffer, its parent primary command buffer or secondary command buffer recorded within the same parent primary command buffer as commandBuffer, the performanceCounterMultipleQueryPools feature must be enabled" + }, + { + "vuid": "VUID-vkCmdBeginQueryIndexedEXT-None-02863", + "text": " If queryPool was created with a queryType of VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR, this command must not be recorded in a command buffer that, either directly or through secondary command buffers, also contains a vkCmdResetQueryPool command affecting the same query" + } + ], + "(VK_EXT_transform_feedback)": [ { "vuid": "VUID-vkCmdBeginQueryIndexedEXT-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer handle" @@ -15094,40 +15178,6 @@ "vuid": "VUID-vkCmdBeginQueryIndexedEXT-commonparent", "text": " Both of commandBuffer, and queryPool must have been created, allocated, or retrieved from the same VkDevice" } - ], - "(VK_EXT_transform_feedback)+(VK_VERSION_1_1)": [ - { - "vuid": "VUID-vkCmdBeginQueryIndexedEXT-commandBuffer-01885", - "text": " commandBuffer must not be a protected command buffer" - } - ], - "(VK_EXT_transform_feedback)+(VK_VERSION_1_1,VK_KHR_multiview)": [ - { - "vuid": "VUID-vkCmdBeginQueryIndexedEXT-query-00808", - "text": " If called within a render pass instance, the sum of query and the number of bits set in the current subpass’s view mask must be less than or equal to the number of queries in queryPool" - } - ], - "(VK_EXT_transform_feedback)+(VK_KHR_performance_query)": [ - { - "vuid": "VUID-vkCmdBeginQueryIndexedEXT-queryPool-03223", - "text": " If queryPool was created with a queryType of VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR, the profiling lock must have been held before vkBeginCommandBuffer was called on commandBuffer" - }, - { - "vuid": "VUID-vkCmdBeginQueryIndexedEXT-queryPool-03224", - "text": " If queryPool was created with a queryType of VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR and one of the counters used to create queryPool was VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR, the query begin must be the first recorded command in commandBuffer" - }, - { - "vuid": "VUID-vkCmdBeginQueryIndexedEXT-queryPool-03225", - "text": " If queryPool was created with a queryType of VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR and one of the counters used to create queryPool was VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR, the begin command must not be recorded within a render pass instance" - }, - { - "vuid": "VUID-vkCmdBeginQueryIndexedEXT-queryPool-03226", - "text": " If queryPool was created with a queryType of VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR and another query pool with a queryType VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR has been used within commandBuffer, its parent primary command buffer or secondary command buffer recorded within the same parent primary command buffer as commandBuffer, the performanceCounterMultipleQueryPools feature must be enabled" - }, - { - "vuid": "VUID-vkCmdBeginQueryIndexedEXT-None-02863", - "text": " If queryPool was created with a queryType of VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR, this command must not be recorded in a command buffer that, either directly or through secondary command buffers, also contains a vkCmdResetQueryPool command affecting the same query" - } ] }, "vkCmdEndQuery": { @@ -16295,6 +16345,20 @@ ] }, "vkCmdCopyBuffer": { + "(VK_VERSION_1_1)": [ + { + "vuid": "VUID-vkCmdCopyBuffer-commandBuffer-01822", + "text": " If commandBuffer is an unprotected command buffer, then srcBuffer must not be a protected buffer" + }, + { + "vuid": "VUID-vkCmdCopyBuffer-commandBuffer-01823", + "text": " If commandBuffer is an unprotected command buffer, then dstBuffer must not be a protected buffer" + }, + { + "vuid": "VUID-vkCmdCopyBuffer-commandBuffer-01824", + "text": " If commandBuffer is a protected command buffer, then dstBuffer must not be an unprotected buffer" + } + ], "core": [ { "vuid": "VUID-vkCmdCopyBuffer-srcOffset-00113", @@ -16368,20 +16432,6 @@ "vuid": "VUID-vkCmdCopyBuffer-commonparent", "text": " Each of commandBuffer, dstBuffer, and srcBuffer must have been created, allocated, or retrieved from the same VkDevice" } - ], - "(VK_VERSION_1_1)": [ - { - "vuid": "VUID-vkCmdCopyBuffer-commandBuffer-01822", - "text": " If commandBuffer is an unprotected command buffer, then srcBuffer must not be a protected buffer" - }, - { - "vuid": "VUID-vkCmdCopyBuffer-commandBuffer-01823", - "text": " If commandBuffer is an unprotected command buffer, then dstBuffer must not be a protected buffer" - }, - { - "vuid": "VUID-vkCmdCopyBuffer-commandBuffer-01824", - "text": " If commandBuffer is a protected command buffer, then dstBuffer must not be an unprotected buffer" - } ] }, "VkBufferCopy": { @@ -16393,6 +16443,20 @@ ] }, "vkCmdCopyImage": { + "(VK_VERSION_1_1)": [ + { + "vuid": "VUID-vkCmdCopyImage-commandBuffer-01825", + "text": " If commandBuffer is an unprotected command buffer, then srcImage must not be a protected image" + }, + { + "vuid": "VUID-vkCmdCopyImage-commandBuffer-01826", + "text": " If commandBuffer is an unprotected command buffer, then dstImage must not be a protected image" + }, + { + "vuid": "VUID-vkCmdCopyImage-commandBuffer-01827", + "text": " If commandBuffer is a protected command buffer, then dstImage must not be an unprotected image" + } + ], "core": [ { "vuid": "VUID-vkCmdCopyImage-pRegions-00124", @@ -16549,20 +16613,6 @@ "text": " dstImageLayout must be VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, VK_IMAGE_LAYOUT_GENERAL, or VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR" } ], - "(VK_VERSION_1_1)": [ - { - "vuid": "VUID-vkCmdCopyImage-commandBuffer-01825", - "text": " If commandBuffer is an unprotected command buffer, then srcImage must not be a protected image" - }, - { - "vuid": "VUID-vkCmdCopyImage-commandBuffer-01826", - "text": " If commandBuffer is an unprotected command buffer, then dstImage must not be a protected image" - }, - { - "vuid": "VUID-vkCmdCopyImage-commandBuffer-01827", - "text": " If commandBuffer is a protected command buffer, then dstImage must 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 commandBuffer is an unprotected command buffer, then srcBuffer must not be a protected buffer" + }, + { + "vuid": "VUID-vkCmdCopyBufferToImage-commandBuffer-01829", + "text": " If commandBuffer is an unprotected command buffer, then dstImage must not be a protected image" + }, + { + "vuid": "VUID-vkCmdCopyBufferToImage-commandBuffer-01830", + "text": " If commandBuffer is a protected command buffer, then dstImage must not be an unprotected image" + } + ], "core": [ { "vuid": "VUID-vkCmdCopyBufferToImage-pRegions-00171", @@ -16921,20 +16985,6 @@ "text": " dstImageLayout must be VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, VK_IMAGE_LAYOUT_GENERAL, or VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR" } ], - "(VK_VERSION_1_1)": [ - { - "vuid": "VUID-vkCmdCopyBufferToImage-commandBuffer-01828", - "text": " If commandBuffer is an unprotected command buffer, then srcBuffer must not be a protected buffer" - }, - { - "vuid": "VUID-vkCmdCopyBufferToImage-commandBuffer-01829", - "text": " If commandBuffer is an unprotected command buffer, then dstImage must not be a protected image" - }, - { - "vuid": "VUID-vkCmdCopyBufferToImage-commandBuffer-01830", - "text": " If commandBuffer is a protected command buffer, then dstImage must 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 commandBuffer is an unprotected command buffer, then srcImage must not be a protected image" + }, + { + "vuid": "VUID-vkCmdCopyImageToBuffer-commandBuffer-01832", + "text": " If commandBuffer is an unprotected command buffer, then dstBuffer must not be a protected buffer" + }, + { + "vuid": "VUID-vkCmdCopyImageToBuffer-commandBuffer-01833", + "text": " If commandBuffer is a protected command buffer, then dstBuffer must not be an unprotected buffer" + } + ], "core": [ { "vuid": "VUID-vkCmdCopyImageToBuffer-pRegions-00182", @@ -17059,20 +17123,6 @@ "text": " srcImageLayout must be VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL or VK_IMAGE_LAYOUT_GENERAL" } ], - "(VK_VERSION_1_1)": [ - { - "vuid": "VUID-vkCmdCopyImageToBuffer-commandBuffer-01831", - "text": " If commandBuffer is an unprotected command buffer, then srcImage must not be a protected image" - }, - { - "vuid": "VUID-vkCmdCopyImageToBuffer-commandBuffer-01832", - "text": " If commandBuffer is an unprotected command buffer, then dstBuffer must not be a protected buffer" - }, - { - "vuid": "VUID-vkCmdCopyImageToBuffer-commandBuffer-01833", - "text": " If commandBuffer is a protected command buffer, then dstBuffer must 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 commandBuffer is an unprotected command buffer, then srcImage must not be a protected image" + }, + { + "vuid": "VUID-vkCmdBlitImage-commandBuffer-01835", + "text": " If commandBuffer is an unprotected command buffer, then dstImage must not be a protected image" + }, + { + "vuid": "VUID-vkCmdBlitImage-commandBuffer-01836", + "text": " If commandBuffer is a protected command buffer, then dstImage must not be an unprotected image" + } + ], "core": [ { "vuid": "VUID-vkCmdBlitImage-pRegions-00215", @@ -17389,20 +17453,6 @@ "text": " If filter is VK_FILTER_CUBIC_EXT, srcImage must have a VkImageType of VK_IMAGE_TYPE_2D" } ], - "(VK_VERSION_1_1)": [ - { - "vuid": "VUID-vkCmdBlitImage-commandBuffer-01834", - "text": " If commandBuffer is an unprotected command buffer, then srcImage must not be a protected image" - }, - { - "vuid": "VUID-vkCmdBlitImage-commandBuffer-01835", - "text": " If commandBuffer is an unprotected command buffer, then dstImage must not be a protected image" - }, - { - "vuid": "VUID-vkCmdBlitImage-commandBuffer-01836", - "text": " If commandBuffer is a protected command buffer, then dstImage must not be an unprotected image" - } - ], "(VK_EXT_fragment_density_map)": [ { "vuid": "VUID-vkCmdBlitImage-dstImage-02545", @@ -17483,15 +17533,21 @@ ] }, "vkCmdResolveImage": { + "(VK_VERSION_1_1)": [ + { + "vuid": "VUID-vkCmdResolveImage-commandBuffer-01837", + "text": " If commandBuffer is an unprotected command buffer, then srcImage must not be a protected image" + }, + { + "vuid": "VUID-vkCmdResolveImage-commandBuffer-01838", + "text": " If commandBuffer is an unprotected command buffer, then dstImage must not be a protected image" + }, + { + "vuid": "VUID-vkCmdResolveImage-commandBuffer-01839", + "text": " If commandBuffer is a protected command buffer, then dstImage must not be an unprotected image" + } + ], "core": [ - { - "vuid": "VUID-vkCmdResolveImage-pRegions-00253", - "text": " The source region specified by each element of pRegions must be a region that is contained within srcImage" - }, - { - "vuid": "VUID-vkCmdResolveImage-pRegions-00254", - "text": " The destination region specified by each element of pRegions must be a region that is contained within dstImage" - }, { "vuid": "VUID-vkCmdResolveImage-pRegions-00255", "text": " The union of all source regions, and the union of all destination regions, specified by the elements of pRegions, must not overlap in memory" @@ -17609,20 +17665,6 @@ "text": " dstImageLayout must be VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL or VK_IMAGE_LAYOUT_GENERAL" } ], - "(VK_VERSION_1_1)": [ - { - "vuid": "VUID-vkCmdResolveImage-commandBuffer-01837", - "text": " If commandBuffer is an unprotected command buffer, then srcImage must not be a protected image" - }, - { - "vuid": "VUID-vkCmdResolveImage-commandBuffer-01838", - "text": " If commandBuffer is an unprotected command buffer, then dstImage must not be a protected image" - }, - { - "vuid": "VUID-vkCmdResolveImage-commandBuffer-01839", - "text": " If commandBuffer is a protected command buffer, then dstImage must 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": " pipelineStage must be a valid stage for the queue family that was used to create the command pool that commandBuffer was allocated from" @@ -17723,7 +17765,39 @@ { "vuid": "VUID-vkCmdWriteBufferMarkerAMD-dstOffset-01801", "text": " dstOffset must be a multiple of 4" - }, + } + ], + "(VK_EXT_conditional_rendering)": [ + { + "vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04077", + "text": " If the conditional rendering feature is not enabled, pipelineStage must not be VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT" + } + ], + "(VK_EXT_fragment_density_map)": [ + { + "vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04078", + "text": " If the fragment density map feature is not enabled, pipelineStage must not be VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT" + } + ], + "(VK_EXT_transform_feedback)": [ + { + "vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04079", + "text": " If the transform feedback feature is not enabled, pipelineStage must not be VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT" + } + ], + "(VK_NV_mesh_shader)": [ + { + "vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04080", + "text": " If the mesh shaders feature is not enabled, pipelineStage must not be VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV or VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV" + } + ], + "(VK_NV_shading_rate_image)": [ + { + "vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04081", + "text": " If the shading rate image feature is not enabled, pipelineStage must not be VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV" + } + ], + "(VK_AMD_buffer_marker)": [ { "vuid": "VUID-vkCmdWriteBufferMarkerAMD-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer handle" @@ -17748,36 +17822,6 @@ "vuid": "VUID-vkCmdWriteBufferMarkerAMD-commonparent", "text": " Both of commandBuffer, and dstBuffer must have been created, allocated, or retrieved from the same VkDevice" } - ], - "(VK_AMD_buffer_marker)+(VK_EXT_conditional_rendering)": [ - { - "vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04077", - "text": " If the conditional rendering feature is not enabled, pipelineStage must not be VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT" - } - ], - "(VK_AMD_buffer_marker)+(VK_EXT_fragment_density_map)": [ - { - "vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04078", - "text": " If the fragment density map feature is not enabled, pipelineStage must not be VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT" - } - ], - "(VK_AMD_buffer_marker)+(VK_EXT_transform_feedback)": [ - { - "vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04079", - "text": " If the transform feedback feature is not enabled, pipelineStage must not be VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT" - } - ], - "(VK_AMD_buffer_marker)+(VK_NV_mesh_shader)": [ - { - "vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04080", - "text": " If the mesh shaders feature is not enabled, pipelineStage must not be VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV or VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV" - } - ], - "(VK_AMD_buffer_marker)+(VK_NV_shading_rate_image)": [ - { - "vuid": "VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-04081", - "text": " If the shading rate image feature is not enabled, pipelineStage must not be VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV" - } ] }, "VkPipelineInputAssemblyStateCreateInfo": { @@ -18387,7 +18431,7 @@ ] }, "vkCmdDrawIndirectCount": { - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)": [ + "core": [ { "vuid": "VUID-vkCmdDrawIndirectCount-None-02690", "text": " If a VkImageView is sampled with VK_FILTER_LINEAR as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT" @@ -18511,7 +18555,65 @@ { "vuid": "VUID-vkCmdDrawIndirectCount-countBuffer-03122", "text": " If the count stored in countBuffer is greater than 1, (stride {times} (drawCount - 1) + offset + sizeof(VkDrawIndirectCommand)) must be less than or equal to the size of buffer" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawIndirectCount-None-02692", + "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawIndirectCount-None-02693", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawIndirectCount-filterCubic-02694", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" }, + { + "vuid": "VUID-vkCmdDrawIndirectCount-filterCubicMinmax-02695", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" + } + ], + "(VK_NV_corner_sampled_image)": [ + { + "vuid": "VUID-vkCmdDrawIndirectCount-flags-02696", + "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" + } + ], + "(VK_VERSION_1_1)": [ + { + "vuid": "VUID-vkCmdDrawIndirectCount-commandBuffer-02707", + "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" + }, + { + "vuid": "VUID-vkCmdDrawIndirectCount-commandBuffer-02711", + "text": " commandBuffer must not be a protected command buffer" + } + ], + "(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 must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex" + } + ], + "(VK_EXT_sample_locations)": [ + { + "vuid": "VUID-vkCmdDrawIndirectCount-sampleLocationsEnable-02689", + "text": " If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set" + } + ], + "(VK_VERSION_1_2)": [ + { + "vuid": "VUID-vkCmdDrawIndirectCount-None-02836", + "text": " If drawIndirectCount is not enabled this function must not be used" + } + ], + "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)": [ { "vuid": "VUID-vkCmdDrawIndirectCount-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer handle" @@ -18540,62 +18642,6 @@ "vuid": "VUID-vkCmdDrawIndirectCount-commonparent", "text": " Each of buffer, commandBuffer, and countBuffer must have been created, allocated, or retrieved from the same VkDevice" } - ], - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawIndirectCount-None-02692", - "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" - } - ], - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawIndirectCount-None-02693", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" - } - ], - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawIndirectCount-filterCubic-02694", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" - }, - { - "vuid": "VUID-vkCmdDrawIndirectCount-filterCubicMinmax-02695", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" - } - ], - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_NV_corner_sampled_image)": [ - { - "vuid": "VUID-vkCmdDrawIndirectCount-flags-02696", - "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" - } - ], - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_VERSION_1_1)": [ - { - "vuid": "VUID-vkCmdDrawIndirectCount-commandBuffer-02707", - "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" - }, - { - "vuid": "VUID-vkCmdDrawIndirectCount-commandBuffer-02711", - "text": " commandBuffer must not be a protected command buffer" - } - ], - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(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 must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex" - } - ], - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_EXT_sample_locations)": [ - { - "vuid": "VUID-vkCmdDrawIndirectCount-sampleLocationsEnable-02689", - "text": " If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set" - } - ], - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_VERSION_1_2)": [ - { - "vuid": "VUID-vkCmdDrawIndirectCount-None-02836", - "text": " If drawIndirectCount is not enabled this function must not be used" - } ] }, "vkCmdDrawIndexedIndirect": { @@ -18815,7 +18861,7 @@ ] }, "vkCmdDrawIndexedIndirectCount": { - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)": [ + "core": [ { "vuid": "VUID-vkCmdDrawIndexedIndirectCount-None-02690", "text": " If a VkImageView is sampled with VK_FILTER_LINEAR as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT" @@ -18939,7 +18985,59 @@ { "vuid": "VUID-vkCmdDrawIndexedIndirectCount-countBuffer-03154", "text": " If count stored in countBuffer is greater than 1, (stride {times} (drawCount - 1) + offset + sizeof(VkDrawIndexedIndirectCommand)) must be less than or equal to the size of buffer" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawIndexedIndirectCount-None-02692", + "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawIndexedIndirectCount-None-02693", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawIndexedIndirectCount-filterCubic-02694", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" }, + { + "vuid": "VUID-vkCmdDrawIndexedIndirectCount-filterCubicMinmax-02695", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" + } + ], + "(VK_NV_corner_sampled_image)": [ + { + "vuid": "VUID-vkCmdDrawIndexedIndirectCount-flags-02696", + "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" + } + ], + "(VK_VERSION_1_1)": [ + { + "vuid": "VUID-vkCmdDrawIndexedIndirectCount-commandBuffer-02707", + "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" + }, + { + "vuid": "VUID-vkCmdDrawIndexedIndirectCount-commandBuffer-02711", + "text": " commandBuffer must not be a protected command buffer" + } + ], + "(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 must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex" + } + ], + "(VK_EXT_sample_locations)": [ + { + "vuid": "VUID-vkCmdDrawIndexedIndirectCount-sampleLocationsEnable-02689", + "text": " If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set" + } + ], + "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)": [ { "vuid": "VUID-vkCmdDrawIndexedIndirectCount-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer handle" @@ -18968,60 +19066,10 @@ "vuid": "VUID-vkCmdDrawIndexedIndirectCount-commonparent", "text": " Each of buffer, commandBuffer, and countBuffer must have been created, allocated, or retrieved from the same VkDevice" } - ], - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawIndexedIndirectCount-None-02692", - "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" - } - ], - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawIndexedIndirectCount-None-02693", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" - } - ], - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawIndexedIndirectCount-filterCubic-02694", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" - }, - { - "vuid": "VUID-vkCmdDrawIndexedIndirectCount-filterCubicMinmax-02695", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" - } - ], - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_NV_corner_sampled_image)": [ - { - "vuid": "VUID-vkCmdDrawIndexedIndirectCount-flags-02696", - "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" - } - ], - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_VERSION_1_1)": [ - { - "vuid": "VUID-vkCmdDrawIndexedIndirectCount-commandBuffer-02707", - "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" - }, - { - "vuid": "VUID-vkCmdDrawIndexedIndirectCount-commandBuffer-02711", - "text": " commandBuffer must not be a protected command buffer" - } - ], - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(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 must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex" - } - ], - "(VK_VERSION_1_2,VK_KHR_draw_indirect_count)+(VK_EXT_sample_locations)": [ - { - "vuid": "VUID-vkCmdDrawIndexedIndirectCount-sampleLocationsEnable-02689", - "text": " If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set" - } ] }, "vkCmdDrawIndirectByteCountEXT": { - "(VK_EXT_transform_feedback)": [ + "core": [ { "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-None-02690", "text": " If a VkImageView is sampled with VK_FILTER_LINEAR as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT" @@ -19117,7 +19165,59 @@ { "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-counterBuffer-02290", "text": " counterBuffer must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-None-02692", + "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-None-02693", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-filterCubic-02694", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" }, + { + "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-filterCubicMinmax-02695", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" + } + ], + "(VK_NV_corner_sampled_image)": [ + { + "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-flags-02696", + "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" + } + ], + "(VK_VERSION_1_1)": [ + { + "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-commandBuffer-02707", + "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" + }, + { + "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-commandBuffer-02646", + "text": " commandBuffer must not be a protected command buffer" + } + ], + "(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 must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex" + } + ], + "(VK_EXT_sample_locations)": [ + { + "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-sampleLocationsEnable-02689", + "text": " If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set" + } + ], + "(VK_EXT_transform_feedback)": [ { "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer handle" @@ -19142,56 +19242,6 @@ "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-commonparent", "text": " Both of commandBuffer, and counterBuffer must have been created, allocated, or retrieved from the same VkDevice" } - ], - "(VK_EXT_transform_feedback)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-None-02692", - "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" - } - ], - "(VK_EXT_transform_feedback)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-None-02693", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" - } - ], - "(VK_EXT_transform_feedback)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-filterCubic-02694", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" - }, - { - "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-filterCubicMinmax-02695", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" - } - ], - "(VK_EXT_transform_feedback)+(VK_NV_corner_sampled_image)": [ - { - "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-flags-02696", - "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" - } - ], - "(VK_EXT_transform_feedback)+(VK_VERSION_1_1)": [ - { - "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-commandBuffer-02707", - "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" - }, - { - "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-commandBuffer-02646", - "text": " commandBuffer must not be a protected command buffer" - } - ], - "(VK_EXT_transform_feedback)+(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 must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex" - } - ], - "(VK_EXT_transform_feedback)+(VK_EXT_sample_locations)": [ - { - "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-sampleLocationsEnable-02689", - "text": " If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set" - } ] }, "vkCmdBeginConditionalRenderingEXT": { @@ -19283,7 +19333,7 @@ ] }, "vkCmdDrawMeshTasksNV": { - "(VK_NV_mesh_shader)": [ + "core": [ { "vuid": "VUID-vkCmdDrawMeshTasksNV-None-02690", "text": " If a VkImageView is sampled with VK_FILTER_LINEAR as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT" @@ -19355,7 +19405,55 @@ { "vuid": "VUID-vkCmdDrawMeshTasksNV-taskCount-02119", "text": " taskCount must be less than or equal to VkPhysicalDeviceMeshShaderPropertiesNV::maxDrawMeshTasksCount" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksNV-None-02692", + "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksNV-None-02693", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksNV-filterCubic-02694", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" }, + { + "vuid": "VUID-vkCmdDrawMeshTasksNV-filterCubicMinmax-02695", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" + } + ], + "(VK_NV_corner_sampled_image)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksNV-flags-02696", + "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" + } + ], + "(VK_VERSION_1_1)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksNV-commandBuffer-02707", + "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" + } + ], + "(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 must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex" + } + ], + "(VK_EXT_sample_locations)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksNV-sampleLocationsEnable-02689", + "text": " If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set" + } + ], + "(VK_NV_mesh_shader)": [ { "vuid": "VUID-vkCmdDrawMeshTasksNV-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer handle" @@ -19372,56 +19470,10 @@ "vuid": "VUID-vkCmdDrawMeshTasksNV-renderpass", "text": " This command must only be called inside of a render pass instance" } - ], - "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksNV-None-02692", - "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" - } - ], - "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksNV-None-02693", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" - } - ], - "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksNV-filterCubic-02694", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" - }, - { - "vuid": "VUID-vkCmdDrawMeshTasksNV-filterCubicMinmax-02695", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" - } - ], - "(VK_NV_mesh_shader)+(VK_NV_corner_sampled_image)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksNV-flags-02696", - "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" - } - ], - "(VK_NV_mesh_shader)+(VK_VERSION_1_1)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksNV-commandBuffer-02707", - "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" - } - ], - "(VK_NV_mesh_shader)+(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 must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex" - } - ], - "(VK_NV_mesh_shader)+(VK_EXT_sample_locations)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksNV-sampleLocationsEnable-02689", - "text": " If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set" - } ] }, "vkCmdDrawMeshTasksIndirectNV": { - "(VK_NV_mesh_shader)": [ + "core": [ { "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-None-02690", "text": " If a VkImageView is sampled with VK_FILTER_LINEAR as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT" @@ -19521,7 +19573,59 @@ { "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-drawCount-02157", "text": " If drawCount is greater than 1, (stride {times} (drawCount - 1) + offset + sizeof(VkDrawMeshTasksIndirectCommandNV)) must be less than or equal to the size of buffer" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-None-02692", + "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-None-02693", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-filterCubic-02694", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" }, + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-filterCubicMinmax-02695", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" + } + ], + "(VK_NV_corner_sampled_image)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-flags-02696", + "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" + } + ], + "(VK_VERSION_1_1)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-commandBuffer-02707", + "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" + }, + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-commandBuffer-02711", + "text": " commandBuffer must not be a protected command buffer" + } + ], + "(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 must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex" + } + ], + "(VK_EXT_sample_locations)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-sampleLocationsEnable-02689", + "text": " If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set" + } + ], + "(VK_NV_mesh_shader)": [ { "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer handle" @@ -19546,56 +19650,6 @@ "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-commonparent", "text": " Both of buffer, and commandBuffer must have been created, allocated, or retrieved from the same VkDevice" } - ], - "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-None-02692", - "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" - } - ], - "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-None-02693", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" - } - ], - "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-filterCubic-02694", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" - }, - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-filterCubicMinmax-02695", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" - } - ], - "(VK_NV_mesh_shader)+(VK_NV_corner_sampled_image)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-flags-02696", - "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" - } - ], - "(VK_NV_mesh_shader)+(VK_VERSION_1_1)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-commandBuffer-02707", - "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" - }, - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-commandBuffer-02711", - "text": " commandBuffer must not be a protected command buffer" - } - ], - "(VK_NV_mesh_shader)+(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 must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex" - } - ], - "(VK_NV_mesh_shader)+(VK_EXT_sample_locations)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-sampleLocationsEnable-02689", - "text": " If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set" - } ] }, "VkDrawMeshTasksIndirectCommandNV": { @@ -19607,7 +19661,7 @@ ] }, "vkCmdDrawMeshTasksIndirectCountNV": { - "(VK_NV_mesh_shader)": [ + "core": [ { "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-None-02690", "text": " If a VkImageView is sampled with VK_FILTER_LINEAR as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT" @@ -19719,7 +19773,59 @@ { "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-countBuffer-02192", "text": " If the count stored in countBuffer is greater than 1, (stride {times} (drawCount - 1) + offset + sizeof(VkDrawMeshTasksIndirectCommandNV)) must be less than or equal to the size of buffer" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-None-02692", + "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-None-02693", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-filterCubic-02694", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" }, + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-filterCubicMinmax-02695", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" + } + ], + "(VK_NV_corner_sampled_image)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-flags-02696", + "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" + } + ], + "(VK_VERSION_1_1)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-commandBuffer-02707", + "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" + }, + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-commandBuffer-02711", + "text": " commandBuffer must not be a protected command buffer" + } + ], + "(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 must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex" + } + ], + "(VK_EXT_sample_locations)": [ + { + "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-sampleLocationsEnable-02689", + "text": " If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set" + } + ], + "(VK_NV_mesh_shader)": [ { "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer handle" @@ -19748,56 +19854,6 @@ "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-commonparent", "text": " Each of buffer, commandBuffer, and countBuffer must have been created, allocated, or retrieved from the same VkDevice" } - ], - "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-None-02692", - "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" - } - ], - "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-None-02693", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" - } - ], - "(VK_NV_mesh_shader)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-filterCubic-02694", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" - }, - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-filterCubicMinmax-02695", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" - } - ], - "(VK_NV_mesh_shader)+(VK_NV_corner_sampled_image)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-flags-02696", - "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" - } - ], - "(VK_NV_mesh_shader)+(VK_VERSION_1_1)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-commandBuffer-02707", - "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" - }, - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-commandBuffer-02711", - "text": " commandBuffer must not be a protected command buffer" - } - ], - "(VK_NV_mesh_shader)+(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 must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex" - } - ], - "(VK_NV_mesh_shader)+(VK_EXT_sample_locations)": [ - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-sampleLocationsEnable-02689", - "text": " If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set" - } ] }, "VkPipelineVertexInputStateCreateInfo": { @@ -21923,7 +21979,7 @@ ] }, "vkCmdDispatchBase": { - "(VK_VERSION_1_1,VK_KHR_device_group)": [ + "core": [ { "vuid": "VUID-vkCmdDispatchBase-None-02690", "text": " If a VkImageView is sampled with VK_FILTER_LINEAR as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT" @@ -22003,7 +22059,43 @@ { "vuid": "VUID-vkCmdDispatchBase-baseGroupX-00427", "text": " If any of baseGroupX, baseGroupY, or baseGroupZ are not zero, then the bound compute pipeline must have been created with the VK_PIPELINE_CREATE_DISPATCH_BASE flag" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDispatchBase-None-02692", + "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDispatchBase-None-02693", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdDispatchBase-filterCubic-02694", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" }, + { + "vuid": "VUID-vkCmdDispatchBase-filterCubicMinmax-02695", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" + } + ], + "(VK_NV_corner_sampled_image)": [ + { + "vuid": "VUID-vkCmdDispatchBase-flags-02696", + "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" + } + ], + "(VK_VERSION_1_1)": [ + { + "vuid": "VUID-vkCmdDispatchBase-commandBuffer-02707", + "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" + } + ], + "(VK_VERSION_1_1,VK_KHR_device_group)": [ { "vuid": "VUID-vkCmdDispatchBase-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer handle" @@ -22020,40 +22112,6 @@ "vuid": "VUID-vkCmdDispatchBase-renderpass", "text": " This command must 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)": [ - { - "vuid": "VUID-vkCmdDispatchBase-None-02692", - "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" - } - ], - "(VK_VERSION_1_1,VK_KHR_device_group)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDispatchBase-None-02693", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" - } - ], - "(VK_VERSION_1_1,VK_KHR_device_group)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdDispatchBase-filterCubic-02694", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" - }, - { - "vuid": "VUID-vkCmdDispatchBase-filterCubicMinmax-02695", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" - } - ], - "(VK_VERSION_1_1,VK_KHR_device_group)+(VK_NV_corner_sampled_image)": [ - { - "vuid": "VUID-vkCmdDispatchBase-flags-02696", - "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" - } - ], - "(VK_VERSION_1_1,VK_KHR_device_group)+(VK_VERSION_1_1)": [ - { - "vuid": "VUID-vkCmdDispatchBase-commandBuffer-02707", - "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" - } ] }, "vkCreateIndirectCommandsLayoutNV": { @@ -22385,7 +22443,7 @@ ] }, "vkCmdExecuteGeneratedCommandsNV": { - "(VK_NV_device_generated_commands)": [ + "core": [ { "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-None-02690", "text": " If a VkImageView is sampled with VK_FILTER_LINEAR as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT" @@ -22477,7 +22535,65 @@ { "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-deviceGeneratedCommands-02911", "text": " The VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV::deviceGeneratedCommands feature must be enabled" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-None-02692", + "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-None-02693", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" + } + ], + "(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ + { + "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-filterCubic-02694", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" }, + { + "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-filterCubicMinmax-02695", + "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" + } + ], + "(VK_NV_corner_sampled_image)": [ + { + "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-flags-02696", + "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" + } + ], + "(VK_VERSION_1_1)": [ + { + "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-commandBuffer-02707", + "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" + }, + { + "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-commandBuffer-02970", + "text": " commandBuffer must not be a protected command buffer" + } + ], + "(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 must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex" + } + ], + "(VK_EXT_sample_locations)": [ + { + "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-sampleLocationsEnable-02689", + "text": " If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set" + } + ], + "(VK_EXT_transform_feedback)": [ + { + "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-None-02910", + "text": " Transform feedback must not be active" + } + ], + "(VK_NV_device_generated_commands)": [ { "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer handle" @@ -22498,62 +22614,6 @@ "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-renderpass", "text": " This command must only be called inside of a render pass instance" } - ], - "(VK_NV_device_generated_commands)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-None-02692", - "text": " If a VkImageView is sampled with VK_FILTER_CUBIC_EXT as a result of this command, then the image view’s format features must contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT" - } - ], - "(VK_NV_device_generated_commands)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+!(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-None-02693", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must not have a VkImageViewType of VK_IMAGE_VIEW_TYPE_3D, VK_IMAGE_VIEW_TYPE_CUBE, or VK_IMAGE_VIEW_TYPE_CUBE_ARRAY" - } - ], - "(VK_NV_device_generated_commands)+(VK_IMG_filter_cubic,VK_EXT_filter_cubic)+(VK_EXT_filter_cubic)": [ - { - "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-filterCubic-02694", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT as a result of this command must have a VkImageViewType and format that supports cubic filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubic returned by vkGetPhysicalDeviceImageFormatProperties2" - }, - { - "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-filterCubicMinmax-02695", - "text": " Any VkImageView being sampled with VK_FILTER_CUBIC_EXT with a reduction mode of either VK_SAMPLER_REDUCTION_MODE_MIN or VK_SAMPLER_REDUCTION_MODE_MAX as a result of this command must have a VkImageViewType and format that supports cubic filtering together with minmax filtering, as specified by VkFilterCubicImageViewImageFormatPropertiesEXT::filterCubicMinmax returned by vkGetPhysicalDeviceImageFormatProperties2" - } - ], - "(VK_NV_device_generated_commands)+(VK_NV_corner_sampled_image)": [ - { - "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-flags-02696", - "text": " Any VkImage created with a VkImageCreateInfo::flags containing VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV sampled as a result of this command must only be sampled using a VkSamplerAddressMode of VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE" - } - ], - "(VK_NV_device_generated_commands)+(VK_VERSION_1_1)": [ - { - "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-commandBuffer-02707", - "text": " If commandBuffer is an unprotected command buffer, any resource accessed by the VkPipeline object bound to the pipeline bind point used by this command must not be a protected resource" - }, - { - "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-commandBuffer-02970", - "text": " commandBuffer must not be a protected command buffer" - } - ], - "(VK_NV_device_generated_commands)+(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 must be less than or equal to VkPhysicalDeviceMultiviewProperties::maxMultiviewInstanceIndex" - } - ], - "(VK_NV_device_generated_commands)+(VK_EXT_sample_locations)": [ - { - "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-sampleLocationsEnable-02689", - "text": " If the bound graphics pipeline was created with VkPipelineSampleLocationsStateCreateInfoEXT::sampleLocationsEnable set to VK_TRUE and the current subpass has a depth/stencil attachment, then that attachment must have been created with the VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT bit set" - } - ], - "(VK_NV_device_generated_commands)+(VK_EXT_transform_feedback)": [ - { - "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-None-02910", - "text": " Transform feedback must not be active" - } ] }, "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 ppOffsetInfos[i] must be a valid pointer to an array of pInfos[i].geometryCount VkAccelerationStructureBuildOffsetInfoKHR structures" @@ -26698,6 +26758,34 @@ "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-None-03409", "text": " There must not be any memory aliasing between memory bound to any top level, bottom level, or instance acceleration structure accessed by this command" }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-update-03527", + "text": " If update is VK_FALSE, all addresses between pInfos[i].scratchData and pInfos[i].scratchData + N - 1 must be in the buffer device address range of the same buffer, where N is given by the size member of the VkMemoryRequirements structure returned from a call to vkGetAccelerationStructureMemoryRequirementsKHR with VkAccelerationStructureMemoryRequirementsInfoKHR::accelerationStructure set to pInfos[i].dstAccelerationStructure and VkAccelerationStructureMemoryRequirementsInfoKHR::type set to VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-update-03528", + "text": " If update is VK_TRUE, all addresses between pInfos[i].scratchData and pInfos[i].scratchData + N - 1 must be in the buffer device address range of the same buffer, where N is given by the size member of the VkMemoryRequirements structure returned from a call to vkGetAccelerationStructureMemoryRequirementsKHR with VkAccelerationStructureMemoryRequirementsInfoKHR::accelerationStructure set to pInfos[i].dstAccelerationStructure and VkAccelerationStructureMemoryRequirementsInfoKHR::type set to VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-pInfos-03529", + "text": " The buffer from which the buffer device address pInfos[i].scratchData is queried must have been created with VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR usage flag" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-None-04046", + "text": " All VkDeviceOrHostAddressKHR or VkDeviceOrHostAddressConstKHR referenced by this command must contain valid device addresses for a buffer bound to device memory. If the buffer is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory object" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-None-03531", + "text": " All VkAccelerationStructureKHR objects referenced by this command must be bound to device memory" + } + ], + "(VK_KHR_deferred_host_operations)": [ + { + "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-pNext-03532", + "text": " The VkDeferredOperationInfoKHR structure must not be included in the pNext chain of any of the provided VkAccelerationStructureBuildGeometryInfoKHR structures" + } + ], + "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)": [ { "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer handle" @@ -26726,34 +26814,6 @@ "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-infoCount-arraylength", "text": " infoCount must be greater than 0" } - ], - "core": [ - { - "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-update-03527", - "text": " If update is VK_FALSE, all addresses between pInfos[i].scratchData and pInfos[i].scratchData + N - 1 must be in the buffer device address range of the same buffer, where N is given by the size member of the VkMemoryRequirements structure returned from a call to vkGetAccelerationStructureMemoryRequirementsKHR with VkAccelerationStructureMemoryRequirementsInfoKHR::accelerationStructure set to pInfos[i].dstAccelerationStructure and VkAccelerationStructureMemoryRequirementsInfoKHR::type set to VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR" - }, - { - "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-update-03528", - "text": " If update is VK_TRUE, all addresses between pInfos[i].scratchData and pInfos[i].scratchData + N - 1 must be in the buffer device address range of the same buffer, where N is given by the size member of the VkMemoryRequirements structure returned from a call to vkGetAccelerationStructureMemoryRequirementsKHR with VkAccelerationStructureMemoryRequirementsInfoKHR::accelerationStructure set to pInfos[i].dstAccelerationStructure and VkAccelerationStructureMemoryRequirementsInfoKHR::type set to VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR" - }, - { - "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-pInfos-03529", - "text": " The buffer from which the buffer device address pInfos[i].scratchData is queried must have been created with VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR usage flag" - }, - { - "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-None-04046", - "text": " All VkDeviceOrHostAddressKHR or VkDeviceOrHostAddressConstKHR referenced by this command must contain valid device addresses for a buffer bound to device memory. If the buffer is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory object" - }, - { - "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-None-03531", - "text": " All VkAccelerationStructureKHR objects referenced by this command must be bound to device memory" - } - ], - "(VK_KHR_deferred_host_operations)": [ - { - "vuid": "VUID-vkCmdBuildAccelerationStructureKHR-pNext-03532", - "text": " The VkDeferredOperationInfoKHR structure must not be included in the pNext chain of any of the provided VkAccelerationStructureBuildGeometryInfoKHR structures" - } ] }, "vkCmdBuildAccelerationStructureIndirectKHR": { @@ -27044,14 +27104,6 @@ "vuid": "VUID-vkCmdWriteAccelerationStructuresPropertiesKHR-queryPool-02494", "text": " The queries identified by queryPool and firstQuery must be unavailable" }, - { - "vuid": "VUID-vkCmdWriteAccelerationStructuresPropertiesKHR-accelerationStructures-03431", - "text": " All acceleration structures in accelerationStructures must have been built with VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR if queryType is VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR" - }, - { - "vuid": "VUID-vkCmdWriteAccelerationStructuresPropertiesKHR-queryType-03432", - "text": " queryType must be VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR or VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR" - }, { "vuid": "VUID-vkCmdWriteAccelerationStructuresPropertiesKHR-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer handle" @@ -27088,10 +27140,20 @@ "vuid": "VUID-vkCmdWriteAccelerationStructuresPropertiesKHR-commonparent", "text": " Each of commandBuffer, queryPool, and the elements of pAccelerationStructures must have been created, allocated, or retrieved from the same VkDevice" } + ], + "core": [ + { + "vuid": "VUID-vkCmdWriteAccelerationStructuresPropertiesKHR-accelerationStructures-03431", + "text": " All acceleration structures in accelerationStructures must have been built with VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR if queryType is VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR" + }, + { + "vuid": "VUID-vkCmdWriteAccelerationStructuresPropertiesKHR-queryType-03432", + "text": " queryType must be VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR or VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR" + } ] }, "vkCmdCopyAccelerationStructureNV": { - "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)": [ + "core": [ { "vuid": "VUID-vkCmdCopyAccelerationStructureNV-mode-03410", "text": " mode must be VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR or VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR" @@ -27099,7 +27161,9 @@ { "vuid": "VUID-vkCmdCopyAccelerationStructureNV-src-03411", "text": " src must have been built with VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR if mode is VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR" - }, + } + ], + "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_NV_ray_tracing)": [ { "vuid": "VUID-vkCmdCopyAccelerationStructureNV-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer 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": " mode must be VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR or VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR" @@ -27177,7 +27241,9 @@ { "vuid": "VUID-VkCopyAccelerationStructureInfoKHR-src-03411", "text": " src must have been built with VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR if mode is VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR" - }, + } + ], + "(VK_NV_ray_tracing,VK_KHR_ray_tracing)+(VK_KHR_ray_tracing)": [ { "vuid": "VUID-VkCopyAccelerationStructureInfoKHR-sType-sType", "text": " sType must be VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR" @@ -27218,10 +27284,6 @@ "vuid": "VUID-vkCmdCopyAccelerationStructureToMemoryKHR-None-03559", "text": " All VkAccelerationStructureKHR objects referenced by this command must be bound to device memory" }, - { - "vuid": "VUID-vkCmdCopyAccelerationStructureToMemoryKHR-mode-03412", - "text": " mode must be VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR" - }, { "vuid": "VUID-vkCmdCopyAccelerationStructureToMemoryKHR-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer handle" @@ -27248,6 +27310,12 @@ "vuid": "VUID-vkCmdCopyAccelerationStructureToMemoryKHR-pNext-03560", "text": " The VkDeferredOperationInfoKHR structure must not be included in the pNext chain of the VkCopyAccelerationStructureToMemoryInfoKHR structure" } + ], + "core": [ + { + "vuid": "VUID-vkCmdCopyAccelerationStructureToMemoryKHR-mode-03412", + "text": " mode must be VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR" + } ] }, "VkCopyAccelerationStructureToMemoryInfoKHR": { @@ -27256,10 +27324,6 @@ "vuid": "VUID-VkCopyAccelerationStructureToMemoryInfoKHR-dst-03561", "text": " The memory pointed to by dst must be at least as large as the serialization size of src, as reported by VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR" }, - { - "vuid": "VUID-VkCopyAccelerationStructureToMemoryInfoKHR-mode-03412", - "text": " mode must be VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR" - }, { "vuid": "VUID-VkCopyAccelerationStructureToMemoryInfoKHR-sType-sType", "text": " sType must be VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR" @@ -27284,6 +27348,12 @@ "vuid": "VUID-VkCopyAccelerationStructureToMemoryInfoKHR-mode-parameter", "text": " mode must be a valid VkCopyAccelerationStructureModeKHR value" } + ], + "core": [ + { + "vuid": "VUID-VkCopyAccelerationStructureToMemoryInfoKHR-mode-03412", + "text": " mode must be VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR" + } ] }, "vkCmdCopyMemoryToAccelerationStructureKHR": { @@ -27296,14 +27366,6 @@ "vuid": "VUID-vkCmdCopyMemoryToAccelerationStructureKHR-None-03563", "text": " All VkAccelerationStructureKHR objects referenced by this command must be bound to device memory" }, - { - "vuid": "VUID-vkCmdCopyMemoryToAccelerationStructureKHR-mode-03413", - "text": " mode must be VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR" - }, - { - "vuid": "VUID-vkCmdCopyMemoryToAccelerationStructureKHR-pInfo-03414", - "text": " The data in pInfo->src must have a format compatible with the destination physical device as returned by vkGetDeviceAccelerationStructureCompatibilityKHR" - }, { "vuid": "VUID-vkCmdCopyMemoryToAccelerationStructureKHR-commandBuffer-parameter", "text": " commandBuffer must be a valid VkCommandBuffer handle" @@ -27330,10 +27392,20 @@ "vuid": "VUID-vkCmdCopyMemoryToAccelerationStructureKHR-pNext-03564", "text": " The VkDeferredOperationInfoKHR structure must not be included in the pNext chain of the VkCopyMemoryToAccelerationStructureInfoKHR structure" } + ], + "core": [ + { + "vuid": "VUID-vkCmdCopyMemoryToAccelerationStructureKHR-mode-03413", + "text": " mode must be VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR" + }, + { + "vuid": "VUID-vkCmdCopyMemoryToAccelerationStructureKHR-pInfo-03414", + "text": " The data in pInfo->src must have a format compatible with the destination physical device as returned by vkGetDeviceAccelerationStructureCompatibilityKHR" + } ] }, "VkCopyMemoryToAccelerationStructureInfoKHR": { - "(VK_NV_ray_tracing,VK_KHR_ray_tracing)": [ + "core": [ { "vuid": "VUID-VkCopyMemoryToAccelerationStructureInfoKHR-mode-03413", "text": " mode must be VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR" @@ -27341,7 +27413,9 @@ { "vuid": "VUID-VkCopyMemoryToAccelerationStructureInfoKHR-pInfo-03414", "text": " The data in pInfo->src must have a format compatible with the destination physical device as returned by vkGetDeviceAccelerationStructureCompatibilityKHR" - }, + } + ], + "(VK_NV_ray_tracing,VK_KHR_ray_tracing)": [ { "vuid": "VUID-VkCopyMemoryToAccelerationStructureInfoKHR-sType-sType", "text": " sType must be VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR" @@ -27401,7 +27475,7 @@ ] }, "vkBuildAccelerationStructureKHR": { - "(VK_NV_ray_tracing,VK_KHR_ray_tracing)": [ + "core": [ { "vuid": "VUID-vkBuildAccelerationStructureKHR-pOffsetInfos-03402", "text": " Each element of ppOffsetInfos[i] must be a valid pointer to an array of pInfos[i].geometryCount VkAccelerationStructureBuildOffsetInfoKHR structures" @@ -27434,6 +27508,20 @@ "vuid": "VUID-vkBuildAccelerationStructureKHR-None-03409", "text": " There must not be any memory aliasing between memory bound to any top level, bottom level, or instance acceleration structure accessed by this command" }, + { + "vuid": "VUID-vkBuildAccelerationStructureKHR-None-03437", + "text": " All VkDeviceOrHostAddressKHR or VkDeviceOrHostAddressConstKHR referenced by this command must contain valid host addresses" + }, + { + "vuid": "VUID-vkBuildAccelerationStructureKHR-None-03438", + "text": " All VkAccelerationStructureKHR objects referenced by this command must be bound to host-visible memory" + }, + { + "vuid": "VUID-vkBuildAccelerationStructureKHR-rayTracingHostAccelerationStructureCommands-03439", + "text": " The VkPhysicalDeviceRayTracingFeaturesKHR::rayTracingHostAccelerationStructureCommands feature must be enabled" + } + ], + "(VK_NV_ray_tracing,VK_KHR_ray_tracing)": [ { "vuid": "VUID-vkBuildAccelerationStructureKHR-device-parameter", "text": " device must be a valid VkDevice handle" @@ -27450,20 +27538,6 @@ "vuid": "VUID-vkBuildAccelerationStructureKHR-infoCount-arraylength", "text": " infoCount must be greater than 0" } - ], - "core": [ - { - "vuid": "VUID-vkBuildAccelerationStructureKHR-None-03437", - "text": " All VkDeviceOrHostAddressKHR or VkDeviceOrHostAddressConstKHR referenced by this command must contain valid host addresses" - }, - { - "vuid": "VUID-vkBuildAccelerationStructureKHR-None-03438", - "text": " All VkAccelerationStructureKHR objects referenced by this command must be bound to host-visible memory" - }, - { - "vuid": "VUID-vkBuildAccelerationStructureKHR-rayTracingHostAccelerationStructureCommands-03439", - "text": " The VkPhysicalDeviceRayTracingFeaturesKHR::rayTracingHostAccelerationStructureCommands feature must be enabled" - } ] }, "vkCopyAccelerationStructureKHR": { @@ -27560,14 +27634,6 @@ "vuid": "VUID-vkWriteAccelerationStructuresPropertiesKHR-pAccelerationStructures-03453", "text": " The acceleration structures referenced by pAccelerationStructures must be bound to host-visible memory" }, - { - "vuid": "VUID-vkWriteAccelerationStructuresPropertiesKHR-accelerationStructures-03431", - "text": " All acceleration structures in accelerationStructures must have been built with VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR if queryType is VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR" - }, - { - "vuid": "VUID-vkWriteAccelerationStructuresPropertiesKHR-queryType-03432", - "text": " queryType must be VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR or VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR" - }, { "vuid": "VUID-vkWriteAccelerationStructuresPropertiesKHR-device-parameter", "text": " device must be a valid VkDevice handle" @@ -27598,6 +27664,14 @@ } ], "core": [ + { + "vuid": "VUID-vkWriteAccelerationStructuresPropertiesKHR-accelerationStructures-03431", + "text": " All acceleration structures in accelerationStructures must have been built with VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR if queryType is VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR" + }, + { + "vuid": "VUID-vkWriteAccelerationStructuresPropertiesKHR-queryType-03432", + "text": " queryType must be VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR or VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR" + }, { "vuid": "VUID-vkWriteAccelerationStructuresPropertiesKHR-rayTracingHostAccelerationStructureCommands-03454", "text": " the VkPhysicalDeviceRayTracingFeaturesKHR::rayTracingHostAccelerationStructureCommands feature must 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. // Vulkan 1.2 version number #define VK_API_VERSION_1_2 VK_MAKE_VERSION(1, 2, 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)