vulkan-3.13: Bindings to the Vulkan graphics API.
Safe HaskellNone
LanguageHaskell2010

Vulkan.Extensions.VK_HUAWEI_invocation_mask

Description

Name

VK_HUAWEI_invocation_mask - device extension

VK_HUAWEI_invocation_mask

Name String
VK_HUAWEI_invocation_mask
Extension Type
Device extension
Registered Extension Number
371
Revision
1
Extension and Version Dependencies
  • Requires Vulkan 1.0
  • Requires VK_KHR_ray_tracing_pipeline
  • Requires VK_KHR_synchronization2
Contact
Extension Proposal
VK_HUAWEI_invocation_mask

Other Extension Metadata

Last Modified Date
2021-05-27
Interactions and External Dependencies
  • This extension requires VK_KHR_ray_tracing_pipeline, which allow to bind an invocation mask image before the ray tracing command
  • This extension requires VK_KHR_synchronization2, which allows new pipeline stage for the invocation mask image
Contributors
  • Yunpeng Zhu, HuaWei

Description

The rays to trace may be sparse in some use cases. For example, the scene only have a few regions to reflect. Providing an invocation mask image to the ray tracing commands could potentially give the hardware the hint to do certain optimization without invoking an additional pass to compact the ray buffer.

New Commands

New Structures

New Enum Constants

Examples

RT mask is updated before each traceRay.

Step 1. Generate InvocationMask.

//the rt mask image bind as color attachment in the fragment shader
Layout(location = 2) out vec4 outRTmask
vec4 mask = vec4(x,x,x,x);
outRTmask = mask;

Step 2. traceRay with InvocationMask

vkCmdBindPipeline(
    commandBuffers[imageIndex],
    VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR, m_rtPipeline);
    vkCmdBindDescriptorSets(commandBuffers[imageIndex],
    VK_PIPELINE_BIND_POINT_RAY_TRACING_NV,
    m_rtPipelineLayout, 0, 1, &m_rtDescriptorSet,
    0, nullptr);

vkCmdBindInvocationMaskHUAWEI(
    commandBuffers[imageIndex],
    InvocationMaskimageView,
    InvocationMaskimageLayout);
    vkCmdTraceRaysKHR(commandBuffers[imageIndex],
    pRaygenShaderBindingTable,
    pMissShaderBindingTable,
    swapChainExtent.width,
    swapChainExtent.height, 1);

Version History

  • Revision 1, 2021-05-27 (Yunpeng Zhu)

    • Initial draft.

See Also

PhysicalDeviceInvocationMaskFeaturesHUAWEI, cmdBindInvocationMaskHUAWEI

Document Notes

For more information, see the Vulkan Specification

This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.

Synopsis

Documentation

cmdBindInvocationMaskHUAWEI Source #

Arguments

:: forall io. MonadIO io 
=> CommandBuffer

commandBuffer is the command buffer into which the command will be recorded

-> ImageView

imageView is an image view handle that specifies the invocation mask image imageView may be set to NULL_HANDLE, which is equivalent to specifying a view of an image filled with ones value.

-> ImageLayout

imageLayout is the layout that the image subresources accessible from imageView will be in when the invocation mask image is accessed

-> io () 

vkCmdBindInvocationMaskHUAWEI - Bind an invocation mask image on a command buffer

Valid Usage

Valid Usage (Implicit)

  • If imageView is not NULL_HANDLE, imageView must be a valid ImageView handle
  • imageLayout must be a valid ImageLayout value
  • commandBuffer must be in the recording state
  • The CommandPool that commandBuffer was allocated from must support compute operations
  • This command must only be called outside of a render pass instance
  • Both of commandBuffer, and imageView that are valid handles of non-ignored parameters must have been created, allocated, or retrieved from the same Device

Host Synchronization

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

Command Properties

'

Command Buffer LevelsRender Pass ScopeSupported Queue Types
Primary SecondaryOutside Compute

See Also

VK_HUAWEI_invocation_mask, CommandBuffer, ImageLayout, ImageView

data PhysicalDeviceInvocationMaskFeaturesHUAWEI Source #

VkPhysicalDeviceInvocationMaskFeaturesHUAWEI - Structure describing invocation mask features that can be supported by an implementation

Members

This structure describes the following features:

Description

If the PhysicalDeviceInvocationMaskFeaturesHUAWEI structure is included in the pNext chain of the PhysicalDeviceFeatures2 structure passed to getPhysicalDeviceFeatures2, it is filled in to indicate whether each corresponding feature is supported. PhysicalDeviceInvocationMaskFeaturesHUAWEI can also be used in the pNext chain of DeviceCreateInfo to selectively enable these features.

Valid Usage (Implicit)

See Also

VK_HUAWEI_invocation_mask, Bool32, StructureType

Constructors

PhysicalDeviceInvocationMaskFeaturesHUAWEI 

Fields

  • invocationMask :: Bool

    invocationMask indicates that the implementation supports the use of an invocation mask image to optimize the ray dispatch.

Instances

Instances details
Eq PhysicalDeviceInvocationMaskFeaturesHUAWEI Source # 
Instance details

Defined in Vulkan.Extensions.VK_HUAWEI_invocation_mask

Show PhysicalDeviceInvocationMaskFeaturesHUAWEI Source # 
Instance details

Defined in Vulkan.Extensions.VK_HUAWEI_invocation_mask

Storable PhysicalDeviceInvocationMaskFeaturesHUAWEI Source # 
Instance details

Defined in Vulkan.Extensions.VK_HUAWEI_invocation_mask

FromCStruct PhysicalDeviceInvocationMaskFeaturesHUAWEI Source # 
Instance details

Defined in Vulkan.Extensions.VK_HUAWEI_invocation_mask

ToCStruct PhysicalDeviceInvocationMaskFeaturesHUAWEI Source # 
Instance details

Defined in Vulkan.Extensions.VK_HUAWEI_invocation_mask

Zero PhysicalDeviceInvocationMaskFeaturesHUAWEI Source # 
Instance details

Defined in Vulkan.Extensions.VK_HUAWEI_invocation_mask

type HUAWEI_INVOCATION_MASK_EXTENSION_NAME = "VK_HUAWEI_invocation_mask" Source #

pattern HUAWEI_INVOCATION_MASK_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #

newtype AccessFlagBits2KHR Source #

VkAccessFlagBits2KHR - Access flags for VkAccessFlags2KHR

Description

Note

In situations where an application wishes to select all access types for a given set of pipeline stages, ACCESS_2_MEMORY_READ_BIT_KHR or ACCESS_2_MEMORY_WRITE_BIT_KHR can be used. This is particularly useful when specifying stages that only have a single access type.

Note

The AccessFlags2KHR bitmask goes beyond the 31 individual bit flags allowable within a C99 enum, which is how AccessFlagBits is defined. The first 31 values are common to both, and are interchangeable.

See Also

VK_KHR_synchronization2

Bundled Patterns

pattern ACCESS_2_NONE_KHR :: AccessFlagBits2KHR

ACCESS_2_NONE_KHR specifies no accesses.

pattern ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR specifies read access to command data read from indirect buffers as part of an indirect build, trace, drawing or dispatch command. Such access occurs in the PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR pipeline stage.

pattern ACCESS_2_INDEX_READ_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_INDEX_READ_BIT_KHR specifies read access to an index buffer as part of an indexed drawing command, bound by cmdBindIndexBuffer. Such access occurs in the PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR pipeline stage.

pattern ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR specifies read access to a vertex buffer as part of a drawing command, bound by cmdBindVertexBuffers. Such access occurs in the PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR pipeline stage.

pattern ACCESS_2_UNIFORM_READ_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_UNIFORM_READ_BIT_KHR specifies read access to a uniform buffer in any shader pipeline stage.

pattern ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR specifies read access to an input attachment within a render pass during subpass shading or fragment shading. Such access occurs in the PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI or PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR pipeline stage.

pattern ACCESS_2_SHADER_READ_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_SHADER_READ_BIT_KHR specifies read access to a shader binding table in any shader pipeline. In addition, it is equivalent to the logical OR of:

  • VK_ACCESS_2_UNIFORM_READ_BIT_KHR
  • VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR
  • VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR
pattern ACCESS_2_SHADER_WRITE_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_SHADER_WRITE_BIT_KHR is equivalent to ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR.

pattern ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR specifies read access to a color attachment, such as via blending, logic operations, or via certain subpass load operations. It does not include advanced blend operations. Such access occurs in the PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR pipeline stage.

pattern ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR specifies write access to a color, resolve, or depth/stencil resolve attachment during a render pass or via certain subpass load and store operations. Such access occurs in the PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR pipeline stage.

pattern ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR specifies read access to a depth/stencil attachment, via depth or stencil operations or via certain subpass load operations. Such access occurs in the PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR or PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR pipeline stages.

pattern ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR specifies write access to a depth/stencil attachment, via depth or stencil operations or via certain subpass load and store operations. Such access occurs in the PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR or PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR pipeline stages.

pattern ACCESS_2_TRANSFER_READ_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_TRANSFER_READ_BIT_KHR specifies read access to an image or buffer in a copy operation. Such access occurs in the PIPELINE_STAGE_2_COPY_BIT_KHR, PIPELINE_STAGE_2_BLIT_BIT_KHR, or PIPELINE_STAGE_2_RESOLVE_BIT_KHR pipeline stages.

pattern ACCESS_2_TRANSFER_WRITE_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_TRANSFER_WRITE_BIT_KHR specifies write access to an image or buffer in a clear or copy operation. Such access occurs in the PIPELINE_STAGE_2_COPY_BIT_KHR, PIPELINE_STAGE_2_BLIT_BIT_KHR, PIPELINE_STAGE_2_CLEAR_BIT_KHR, or PIPELINE_STAGE_2_RESOLVE_BIT_KHR pipeline stages.

pattern ACCESS_2_HOST_READ_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_HOST_READ_BIT_KHR specifies read access by a host operation. Accesses of this type are not performed through a resource, but directly on memory. Such access occurs in the PIPELINE_STAGE_2_HOST_BIT_KHR pipeline stage.

pattern ACCESS_2_HOST_WRITE_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_HOST_WRITE_BIT_KHR specifies write access by a host operation. Accesses of this type are not performed through a resource, but directly on memory. Such access occurs in the PIPELINE_STAGE_2_HOST_BIT_KHR pipeline stage.

pattern ACCESS_2_MEMORY_READ_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_MEMORY_READ_BIT_KHR specifies all read accesses. It is always valid in any access mask, and is treated as equivalent to setting all READ access flags that are valid where it is used.

pattern ACCESS_2_MEMORY_WRITE_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_MEMORY_WRITE_BIT_KHR specifies all write accesses. It is always valid in any access mask, and is treated as equivalent to setting all WRITE access flags that are valid where it is used.

pattern ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR specifies read access to a uniform texel buffer or sampled image in any shader pipeline stage.

pattern ACCESS_2_SHADER_STORAGE_READ_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_SHADER_STORAGE_READ_BIT_KHR specifies read access to a storage buffer, physical storage buffer, storage texel buffer, or storage image in any shader pipeline stage.

pattern ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR specifies write access to a storage buffer, physical storage buffer, storage texel buffer, or storage image in any shader pipeline stage.

pattern ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI :: AccessFlagBits2KHR

ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI specifies read access to a invocation mask image in the PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI pipeline stage.

pattern ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT :: AccessFlagBits2KHR

ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT specifies read access to color attachments, including advanced blend operations. Such access occurs in the PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR pipeline stage.

pattern ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT :: AccessFlagBits2KHR

ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT specifies read access to a fragment density map attachment during dynamic fragment density map operations. Such access occurs in the PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT pipeline stage.

pattern ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR specifies write access to an acceleration structure or acceleration structure scratch buffer as part of a build or copy command. Such access occurs in the PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR pipeline stage.

pattern ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR specifies read access to an acceleration structure as part of a trace, build, or copy command, or to an acceleration structure scratch buffer as part of a build command. Such access occurs in the PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR pipeline stage or PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR pipeline stage.

pattern ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR :: AccessFlagBits2KHR

ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR specifies read access to a fragment shading rate attachment during rasterization. Such access occurs in the PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR pipeline stage.

pattern ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV :: AccessFlagBits2KHR

ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV specifies writes to the target command buffer preprocess outputs. Such access occurs in the PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV pipeline stage.

pattern ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV :: AccessFlagBits2KHR

ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV specifies reads from buffer inputs to cmdPreprocessGeneratedCommandsNV. Such access occurs in the PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV pipeline stage.

pattern ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT :: AccessFlagBits2KHR

ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT specifies read access to a predicate as part of conditional rendering. Such access occurs in the PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT pipeline stage.

pattern ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT :: AccessFlagBits2KHR

ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT specifies write access to a transform feedback counter buffer which is written when cmdEndTransformFeedbackEXT executes. Such access occurs in the PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT pipeline stage.

pattern ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT :: AccessFlagBits2KHR

ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT specifies read access to a transform feedback counter buffer which is read when cmdBeginTransformFeedbackEXT executes. Such access occurs in the PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT pipeline stage.

pattern ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT :: AccessFlagBits2KHR

ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT specifies write access to a transform feedback buffer made when transform feedback is active. Such access occurs in the PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT pipeline stage.

Instances

Instances details
Eq AccessFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2

Ord AccessFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2

Read AccessFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2

Show AccessFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2

Storable AccessFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2

Bits AccessFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2

FiniteBits AccessFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2

Zero AccessFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2

newtype PipelineStageFlagBits2KHR Source #

VkPipelineStageFlagBits2KHR - Pipeline stage flags for VkPipelineStageFlags2KHR

Description

Note

The TOP and BOTTOM pipeline stages are deprecated, and applications should prefer PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR and PIPELINE_STAGE_2_NONE_KHR.

Note

The PipelineStageFlags2KHR bitmask goes beyond the 31 individual bit flags allowable within a C99 enum, which is how PipelineStageFlagBits is defined. The first 31 values are common to both, and are interchangeable.

See Also

VK_KHR_synchronization2

Bundled Patterns

pattern PIPELINE_STAGE_2_NONE_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_NONE_KHR specifies no stages of execution.

pattern PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR is equivalent to PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR with AccessFlags2KHR set to 0 when specified in the second synchronization scope, but equivalent to PIPELINE_STAGE_2_NONE_KHR in the first scope.

pattern PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR specifies the stage of the pipeline where indirect command parameters are consumed. This stage also includes reading commands written by cmdPreprocessGeneratedCommandsNV.

pattern PIPELINE_STAGE_2_VERTEX_INPUT_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_VERTEX_INPUT_BIT_KHR is equivalent to the logical OR of:

pattern PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR specifies the vertex shader stage.

pattern PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR specifies the tessellation control shader stage.

pattern PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR specifies the tessellation evaluation shader stage.

pattern PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR specifies the geometry shader stage.

pattern PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR specifies the fragment shader stage.

pattern PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR specifies the stage of the pipeline where early fragment tests (depth and stencil tests before fragment shading) are performed. This stage also includes subpass load operations for framebuffer attachments with a depth/stencil format.

pattern PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR specifies the stage of the pipeline where late fragment tests (depth and stencil tests after fragment shading) are performed. This stage also includes subpass store operations for framebuffer attachments with a depth/stencil format.

pattern PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR specifies the stage of the pipeline after blending where the final color values are output from the pipeline. This stage also includes subpass load and store operations and multisample resolve operations for framebuffer attachments with a color or depth/stencil format.

pattern PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR specifies the compute shader stage.

pattern PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR is equivalent to specifying all of:

pattern PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR is equivalent to PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR with AccessFlags2KHR set to 0 when specified in the first synchronization scope, but equivalent to PIPELINE_STAGE_2_NONE_KHR in the second scope.

pattern PIPELINE_STAGE_2_HOST_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_HOST_BIT_KHR specifies a pseudo-stage indicating execution on the host of reads/writes of device memory. This stage is not invoked by any commands recorded in a command buffer.

pattern PIPELINE_STAGE_2_ALL_GRAPHICS_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_ALL_GRAPHICS_BIT_KHR specifies the execution of all graphics pipeline stages, and is equivalent to the logical OR of:

pattern PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR specifies all operations performed by all commands supported on the queue it is used with.

pattern PIPELINE_STAGE_2_COPY_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_COPY_BIT_KHR specifies the execution of all copy commands, including cmdCopyQueryPoolResults.

pattern PIPELINE_STAGE_2_RESOLVE_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_RESOLVE_BIT_KHR specifies the execution of cmdResolveImage.

pattern PIPELINE_STAGE_2_BLIT_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_BLIT_BIT_KHR specifies the execution of cmdBlitImage.

pattern PIPELINE_STAGE_2_CLEAR_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_CLEAR_BIT_KHR specifies the execution of clear commands, with the exception of cmdClearAttachments.

pattern PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR specifies the stage of the pipeline where index buffers are consumed.

pattern PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR specifies the stage of the pipeline where vertex buffers are consumed.

pattern PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR is equivalent to specifying all supported pre-rasterization shader stages:

pattern PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI specifies the stage of the pipeline where the invocation mask image is read by the implementation to optimize the ray dispatch.

pattern PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI specifies the subpass shading shader stage.

pattern PIPELINE_STAGE_2_MESH_SHADER_BIT_NV :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_MESH_SHADER_BIT_NV specifies the mesh shader stage.

pattern PIPELINE_STAGE_2_TASK_SHADER_BIT_NV :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_TASK_SHADER_BIT_NV specifies the task shader stage.

pattern PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT specifies the stage of the pipeline where the fragment density map is read to generate the fragment areas.

pattern PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR specifies the execution of the ray tracing shader stages.

pattern PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR specifies the execution of acceleration structure commands.

pattern PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR specifies the stage of the pipeline where the fragment shading rate attachment or shading rate image is read to determine the fragment shading rate for portions of a rasterized primitive.

pattern PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV specifies the stage of the pipeline where device-side generation of commands via cmdPreprocessGeneratedCommandsNV is handled.

pattern PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT specifies the stage of the pipeline where the predicate of conditional rendering is consumed.

pattern PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT :: PipelineStageFlagBits2KHR

PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT specifies the stage of the pipeline where vertex attribute output values are written to the transform feedback buffers.

Instances

Instances details
Eq PipelineStageFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2

Ord PipelineStageFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2

Read PipelineStageFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2

Show PipelineStageFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2

Storable PipelineStageFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2

Bits PipelineStageFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2

Methods

(.&.) :: PipelineStageFlagBits2KHR -> PipelineStageFlagBits2KHR -> PipelineStageFlagBits2KHR #

(.|.) :: PipelineStageFlagBits2KHR -> PipelineStageFlagBits2KHR -> PipelineStageFlagBits2KHR #

xor :: PipelineStageFlagBits2KHR -> PipelineStageFlagBits2KHR -> PipelineStageFlagBits2KHR #

complement :: PipelineStageFlagBits2KHR -> PipelineStageFlagBits2KHR #

shift :: PipelineStageFlagBits2KHR -> Int -> PipelineStageFlagBits2KHR #

rotate :: PipelineStageFlagBits2KHR -> Int -> PipelineStageFlagBits2KHR #

zeroBits :: PipelineStageFlagBits2KHR #

bit :: Int -> PipelineStageFlagBits2KHR #

setBit :: PipelineStageFlagBits2KHR -> Int -> PipelineStageFlagBits2KHR #

clearBit :: PipelineStageFlagBits2KHR -> Int -> PipelineStageFlagBits2KHR #

complementBit :: PipelineStageFlagBits2KHR -> Int -> PipelineStageFlagBits2KHR #

testBit :: PipelineStageFlagBits2KHR -> Int -> Bool #

bitSizeMaybe :: PipelineStageFlagBits2KHR -> Maybe Int #

bitSize :: PipelineStageFlagBits2KHR -> Int #

isSigned :: PipelineStageFlagBits2KHR -> Bool #

shiftL :: PipelineStageFlagBits2KHR -> Int -> PipelineStageFlagBits2KHR #

unsafeShiftL :: PipelineStageFlagBits2KHR -> Int -> PipelineStageFlagBits2KHR #

shiftR :: PipelineStageFlagBits2KHR -> Int -> PipelineStageFlagBits2KHR #

unsafeShiftR :: PipelineStageFlagBits2KHR -> Int -> PipelineStageFlagBits2KHR #

rotateL :: PipelineStageFlagBits2KHR -> Int -> PipelineStageFlagBits2KHR #

rotateR :: PipelineStageFlagBits2KHR -> Int -> PipelineStageFlagBits2KHR #

popCount :: PipelineStageFlagBits2KHR -> Int #

FiniteBits PipelineStageFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2

Zero PipelineStageFlagBits2KHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_synchronization2