Enum

VkDependencyFlagBits

Bitmask specifying how execution and memory dependencies are formed

Bits which can be set in vkCmdPipelineBarrier::dependencyFlags, specifying how execution and memory dependencies are formed, are:

typedef enum VkDependencyFlagBits {
    VK_DEPENDENCY_BY_REGION_BIT = 0x00000001,
    // Provided by extensions
    VK_DEPENDENCY_DEVICE_GROUP_BIT = 0x00000004,
    VK_DEPENDENCY_VIEW_LOCAL_BIT = 0x00000002,
    VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR = VK_DEPENDENCY_VIEW_LOCAL_BIT,
    VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR = VK_DEPENDENCY_DEVICE_GROUP_BIT,
    VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT = 0x00000008,
    VK_DEPENDENCY_QUEUE_FAMILY_OWNERSHIP_TRANSFER_USE_ALL_STAGES_BIT_KHR = 0x00000020,
    VK_DEPENDENCY_ASYMMETRIC_EVENT_BIT_KHR = 0x00000040,
    VK_DEPENDENCY_EXTENSION_586_BIT_IMG = 0x00000010,
} VkDependencyFlagBits;
  • VK_DEPENDENCY_BY_REGION_BIT specifies that dependencies will be split into multiple framebuffer-local regions according to the (x,y,layer,sample) coordinates.
  • VK_DEPENDENCY_VIEW_LOCAL_BIT specifies that dependencies will be split into multiple framebuffer-local regions according to the view.
  • VK_DEPENDENCY_DEVICE_GROUP_BIT specifies that dependencies are non-device-local.
  • VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT specifies that the render pass will write to and read from the same image with feedback loop enabled.
  • VK_DEPENDENCY_QUEUE_FAMILY_OWNERSHIP_TRANSFER_USE_ALL_STAGES_BIT_KHR specifies that source and destination stages are not ignored when performing a queue family ownership transfer.
  • VK_DEPENDENCY_ASYMMETRIC_EVENT_BIT_KHR specifies that the access scopes of vkCmdSetEvent2 and vkCmdWaitEvents2 do not need to match for a given event when it is specified in both commands, and the access scope of vkCmdSetEvent2 is empty.