KhronosGroup / KhronosGroup/Vulkan-Docs
Wording of VUID-VkRenderPassBeginInfo-framebuffer-04627 is confusing
- Dominant language
- JavaScript
- Stars
- 3.3k
- Forks
- 549
- Avg merge
- 5d 5h
- Merged PRs (30d)
- 2
Description
VUID-VkRenderPassBeginInfo-framebuffer-04627 states:
> If framebuffer was created with a VkFramebufferCreateInfo::flags value that included VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT, each element of the pAttachments member of a VkRenderPassAttachmentBeginInfo structure included in the pNext chain must be a VkImageView with an inherited usage equal to the usage member of the corresponding element of VkFramebufferAttachmentsCreateInfo::pAttachmentImageInfos used to create framebuffer
"inherited usage" links to:
> ... image view creation inherits the implicit parameter usage specifying the allowed usages of the image view that, by default, takes the value of the corresponding usage parameter specified in VkImageCreateInfo at image creation time. The implicit usage can be overriden by adding a VkImageViewUsageCreateInfo structure to the pNext chain
The VUID text therefore appears to specify that the usage specified in VkImageViewUsageCreateInfo is ignored, because specifically the *inherited* usage, defined as the usage specified for the underlying image, is used. However, discussion in https://github.com/KhronosGroup/Vulkan-Docs/issues/1391 suggests that the intended meaning is the opposite.
The wording should be clarified by removing the use of the word "inherited" to describe the effective usage. For example, "effective usage" could be used instead, perhaps with an explicit definition for that added to the linked section.
Contributor guide
Assessment
This issue has not been assessed yet.