diff options
Diffstat (limited to 'chapters/descriptorsets.adoc')
-rw-r--r-- | chapters/descriptorsets.adoc | 53 |
1 files changed, 47 insertions, 6 deletions
diff --git a/chapters/descriptorsets.adoc b/chapters/descriptorsets.adoc index e234776c..21f6ef96 100644 --- a/chapters/descriptorsets.adoc +++ b/chapters/descriptorsets.adoc @@ -2585,6 +2585,13 @@ ifdef::VK_EXT_mutable_descriptor_type,VK_VALVE_mutable_descriptor_type[] ename:VK_DESCRIPTOR_TYPE_MUTABLE_EXT element in pname:pPoolSizes must: not have sets of supported descriptor types which partially overlap endif::VK_EXT_mutable_descriptor_type,VK_VALVE_mutable_descriptor_type[] +ifdef::VK_VERSION_1_3,VK_EXT_inline_uniform_block[] + * [[VUID-VkDescriptorPoolCreateInfo-pPoolSizes-09424]] + If pname:pPoolSizes contains a pname:descriptorType of + ename:VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK, the pname:pNext chain + must: include a slink:VkDescriptorPoolInlineUniformBlockCreateInfo + structure whose pname:maxInlineUniformBlockBindings member is not zero +endif::VK_VERSION_1_3,VK_EXT_inline_uniform_block[] **** include::{generated}/validity/structs/VkDescriptorPoolCreateInfo.adoc[] @@ -3945,6 +3952,27 @@ endif::VK_VERSION_1_1,VK_KHR_maintenance1[] pname:aspectMask used to create the pname:imageView must: include either ename:VK_IMAGE_ASPECT_DEPTH_BIT or ename:VK_IMAGE_ASPECT_STENCIL_BIT but not both + * [[VUID-VkDescriptorImageInfo-imageLayout-09425]] + If pname:imageLayout is ename:VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL, + then the pname:aspectMask used to create pname:imageView must: not + include either ename:VK_IMAGE_ASPECT_DEPTH_BIT or + ename:VK_IMAGE_ASPECT_STENCIL_BIT + * [[VUID-VkDescriptorImageInfo-imageLayout-09426]] + If pname:imageLayout is +ifdef::VK_VERSION_1_1,VK_KHR_maintenance2[] + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL, + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL, +endif::VK_VERSION_1_1,VK_KHR_maintenance2[] +ifdef::VK_VERSION_1_2,VK_KHR_separate_depth_stencil_layouts[] + ename:VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL, + ename:VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL, + ename:VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL, + ename:VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, +endif::VK_VERSION_1_2,VK_KHR_separate_depth_stencil_layouts[] + ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL or + ename:VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL, then the + pname:aspectMask used to create pname:imageView must: not include + ename:VK_IMAGE_ASPECT_COLOR_BIT * [[VUID-VkDescriptorImageInfo-imageLayout-00344]] pname:imageLayout must: match the actual elink:VkImageLayout of each subresource accessible from pname:imageView at the time this descriptor @@ -4932,12 +4960,6 @@ ifdef::VK_EXT_graphics_pipeline_library[] endif::VK_EXT_graphics_pipeline_library[] ifndef::VK_EXT_graphics_pipeline_library[Each] element of pname:pDescriptorSets must: be a valid slink:VkDescriptorSet -ifdef::VK_EXT_descriptor_buffer[] - * [[VUID-vkCmdBindDescriptorSets-pDescriptorSets-08010]] - Each element of pname:pDescriptorSets must: have been allocated with a - sname:VkDescriptorSetLayout which was not created with - ename:VK_DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXT -endif::VK_EXT_descriptor_buffer[] **** include::{generated}/validity/protos/vkCmdBindDescriptorSets.adoc[] @@ -5708,6 +5730,24 @@ include::{generated}/api/structs/VkDescriptorGetInfoEXT.adoc[] pname:pStorageBuffer is not `NULL` and pname:pStorageBuffer->address is not zero, pname:pStorageBuffer->address must be an address within a slink:VkBuffer created on pname:device + * [[VUID-VkDescriptorGetInfoEXT-type-09427]] + If pname:type is ename:VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER, + pname:pUniformBuffer is not `NULL` , the number of texel buffer elements + given by [eq]#({lfloor}pname:pUniformBuffer->range / (texel block + size){rfloor} {times} (texels per block))# where texel block size and + texels per block are as defined in the <<formats-compatibility, + Compatible Formats>> table for pname:pUniformBuffer->format, must: be + less than or equal to + sname:VkPhysicalDeviceLimits::pname:maxTexelBufferElements + * [[VUID-VkDescriptorGetInfoEXT-type-09428]] + If pname:type is ename:VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER, + pname:pStorageBuffer is not `NULL` , the number of texel buffer elements + given by [eq]#({lfloor}pname:pStorageBuffer->range / (texel block + size){rfloor} {times} (texels per block))# where texel block size and + texels per block are as defined in the <<formats-compatibility, + Compatible Formats>> table for pname:pStorageBuffer->format, must: be + less than or equal to + sname:VkPhysicalDeviceLimits::pname:maxTexelBufferElements ifdef::VK_KHR_acceleration_structure[] * [[VUID-VkDescriptorGetInfoEXT-type-08028]] If pname:type is ename:VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR and @@ -6111,6 +6151,7 @@ descriptors is passed in a sname:VkDescriptorBufferBindingPushDescriptorBufferHandleEXT structure: include::{generated}/api/structs/VkDescriptorBufferBindingPushDescriptorBufferHandleEXT.adoc[] + * pname:sType is a elink:VkStructureType value identifying this structure. * pname:pNext is `NULL` or a pointer to a structure extending this structure. |