Function Prototype

vkCmdSetShadingRateImageEnableNV

Specify the shading rate image enable state dynamically for a command buffer
primary / secondary
both
graphics
state

To dynamically set the shadingRateImageEnable state, call:

void vkCmdSetShadingRateImageEnableNV(
    VkCommandBuffer commandBuffer,
    VkBool32 shadingRateImageEnable);
  • commandBuffer is the command buffer into which the command will be recorded.
  • shadingRateImageEnable specifies the shadingRateImageEnable state.

This command sets the shadingRateImageEnable state for subsequent drawing commands when drawing using shader objects, or when the graphics pipeline is created with VK_DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV set in VkPipelineDynamicStateCreateInfo::pDynamicStates. Otherwise, this state is specified by the VkPipelineViewportShadingRateImageStateCreateInfoNV::shadingRateImageEnable value used to create the currently active pipeline.

Valid Usage

VUID-vkCmdSetShadingRateImageEnableNV-None-09423

At least one of the following must be true:

Valid Usage (Implicit)

VUID-vkCmdSetShadingRateImageEnableNV-commandBuffer-cmdpool

The VkCommandPool that commandBuffer was allocated from must support graphics operations

VUID-vkCmdSetShadingRateImageEnableNV-videocoding

This command must only be called outside of a video coding scope

Host Synchronization

  • Host access to commandBuffer must be externally synchronized
  • Host access to the VkCommandPool that commandBuffer was allocated from must be externally synchronized ::