vkCmdBindShadingRateImageNV
When shading rate image usage is enabled in the bound pipeline, the pipeline uses a shading rate image specified by the command:
void vkCmdBindShadingRateImageNV(
VkCommandBuffer commandBuffer,
VkImageView imageView,
VkImageLayout imageLayout);
commandBuffer
is the command buffer into which the command will be recorded.imageView
is an image view handle specifying the shading rate image.imageView
may be VK_NULL_HANDLE, which is equivalent to specifying a view of an image filled with zero values.imageLayout
is the layout that the image subresources accessible fromimageView
will be in when the shading rate image is accessed.
Valid Usage
VUID-vkCmdBindShadingRateImageNV-None-02058
The shadingRateImage
feature must
be enabled
VUID-vkCmdBindShadingRateImageNV-imageView-02059
If imageView
is not VK_NULL_HANDLE, it must be a valid
VkImageView handle of type VK_IMAGE_VIEW_TYPE_2D
or
VK_IMAGE_VIEW_TYPE_2D_ARRAY
VUID-vkCmdBindShadingRateImageNV-imageView-02060
If imageView
is not VK_NULL_HANDLE, it must have a format
of VK_FORMAT_R8_UINT
VUID-vkCmdBindShadingRateImageNV-imageView-02061
If imageView
is not VK_NULL_HANDLE, it must have been
created with a usage
value including
VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV
VUID-vkCmdBindShadingRateImageNV-imageView-02062
If imageView
is not VK_NULL_HANDLE, imageLayout
must
match the actual VkImageLayout of each subresource accessible from
imageView
at the time the subresource is accessed
VUID-vkCmdBindShadingRateImageNV-imageLayout-02063
If imageView
is not VK_NULL_HANDLE, imageLayout
must
be VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV
or
VK_IMAGE_LAYOUT_GENERAL
Valid Usage (Implicit)
VUID-vkCmdBindShadingRateImageNV-commandBuffer-parameter
commandBuffer
must be a valid VkCommandBuffer handle
VUID-vkCmdBindShadingRateImageNV-imageView-parameter
If imageView
is not VK_NULL_HANDLE, imageView
must be a valid VkImageView handle
VUID-vkCmdBindShadingRateImageNV-imageLayout-parameter
imageLayout
must be a valid VkImageLayout value
VUID-vkCmdBindShadingRateImageNV-commandBuffer-recording
commandBuffer
must be in the recording state
VUID-vkCmdBindShadingRateImageNV-commandBuffer-cmdpool
The VkCommandPool
that commandBuffer
was allocated from must support graphics operations
VUID-vkCmdBindShadingRateImageNV-videocoding
This command must only be called outside of a video coding scope
VUID-vkCmdBindShadingRateImageNV-commonparent
Both of commandBuffer
, and imageView
that are valid handles of non-ignored parameters must have been created, allocated, or retrieved from the same VkDevice
Host Synchronization
- Host access to
commandBuffer
must be externally synchronized - Host access to the
VkCommandPool
thatcommandBuffer
was allocated from must be externally synchronized ::