Enum

VkRenderingFlagBits

Bitmask specifying additional properties of a dynamic render pass instance

Bits which can be set in VkRenderingInfo::flags describing additional properties of the render pass are:

typedef enum VkRenderingFlagBits {
    VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT = 0x00000001,
    VK_RENDERING_SUSPENDING_BIT = 0x00000002,
    VK_RENDERING_RESUMING_BIT = 0x00000004,
    // Provided by extensions
    VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT_KHR = VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT,
    VK_RENDERING_SUSPENDING_BIT_KHR = VK_RENDERING_SUSPENDING_BIT,
    VK_RENDERING_RESUMING_BIT_KHR = VK_RENDERING_RESUMING_BIT,
    VK_RENDERING_RESERVED_9_BIT_IMG = 0x00000200,
    VK_RENDERING_CONTENTS_INLINE_BIT_EXT = VK_RENDERING_CONTENTS_INLINE_BIT_KHR,
    VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT = 0x00000008,
    VK_RENDERING_CONTENTS_INLINE_BIT_KHR = 0x00000010,
    VK_RENDERING_PER_LAYER_FRAGMENT_DENSITY_BIT_VALVE = 0x00000020,
    VK_RENDERING_FRAGMENT_REGION_BIT_EXT = 0x00000040,
    VK_RENDERING_CUSTOM_RESOLVE_BIT_EXT = 0x00000080,
    VK_RENDERING_LOCAL_READ_CONCURRENT_ACCESS_CONTROL_BIT_KHR = 0x00000100,
} VkRenderingFlagBits;
#define VkRenderingFlagBitsKHR VkRenderingFlagBits
  • VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT specifies that draw calls for the render pass instance will be recorded in secondary command buffers. If the nestedCommandBuffer feature is enabled, the draw calls can come from both inline and vkCmdExecuteCommands.
  • VK_RENDERING_RESUMING_BIT specifies that the render pass instance is resuming an earlier suspended render pass instance.
  • VK_RENDERING_SUSPENDING_BIT specifies that the render pass instance will be suspended.
  • VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT specifies that Legacy Dithering is enabled for the render pass instance.
  • VK_RENDERING_CONTENTS_INLINE_BIT_KHR specifies that draw calls for the render pass instance can be recorded inline within the current command buffer. This can be combined with the VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT bit to allow draw calls to be recorded both inline and in secondary command buffers.
  • VK_RENDERING_PER_LAYER_FRAGMENT_DENSITY_BIT_VALVE specifies that the render pass can be used with layered fragment density maps.
  • VK_RENDERING_LOCAL_READ_CONCURRENT_ACCESS_CONTROL_BIT_KHR specifies that VK_RENDERING_ATTACHMENT_INPUT_ATTACHMENT_FEEDBACK_BIT_KHR will always be specified for any attachment which invokes the behavior described by that flag.
  • VK_RENDERING_FRAGMENT_REGION_BIT_EXT specifies that the render pass can access samples which are not covered in its SampleMask.
  • VK_RENDERING_CUSTOM_RESOLVE_BIT_EXT specifies that the render pass contains a custom resolve. When this bit is set, vkCmdBeginCustomResolveEXT can be called.

The contents of pRenderingInfo must match between suspended render pass instances and the render pass instances that resume them, other than the presence or absence of the VK_RENDERING_RESUMING_BIT, VK_RENDERING_SUSPENDING_BIT, and VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT flags. No action or synchronization commands, or other render pass instances, are allowed between suspending and resuming render pass instances.