Enum
VkPipelineColorBlendStateCreateFlagBits
Bitmask specifying additional parameters of an image
Bits which can be set in the
VkPipelineColorBlendStateCreateInfo::flags parameter are:
typedef enum VkPipelineColorBlendStateCreateFlagBits {
// Provided by extensions
VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM = VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT,
VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT = 0x00000001,
} VkPipelineColorBlendStateCreateFlagBits;
pub struct PipelineColorBlendStateCreateFlagBits(u32);
impl PipelineColorBlendStateCreateFlagBits {
pub const RASTERIZATION_ORDER_ATTACHMENT_ACCESS_ARM: Self = Self::RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXT;
pub const RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXT: Self = 0x00000001;
}
VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXTspecifies that access to color and input attachments will have implicit framebuffer-local memory dependencies, allowing applications to express custom blending operations in a fragment shader.
When
VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT
is included in a pipeline, it forms a framebuffer-local memory dependency
for each fragment generated by draw commands for that pipeline with the
following scopes:
- The first synchronization scope
includes the
VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BITpipeline stage executed by all previous fragments (as defined by primitive order) in the corresponding framebuffer regions including those generated by the same draw command. - The second synchronization
scope includes the
VK_PIPELINE_STAGE_FRAGMENT_SHADER_BITpipeline stage executed by the generated fragment. - The first access scope includes all writes to color attachments.
- The second access scope includes all reads from input attachments.