C Specification
Flags which can be set for a VkAccessFlags2KHR mask are:
// Provided by VK_KHR_synchronization2
// Flag bits for VkAccessFlagBits2KHR
typedef VkFlags64 VkAccessFlagBits2KHR;
static const VkAccessFlagBits2KHR VK_ACCESS_2_NONE_KHR = 0ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR = 0x00000001ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_INDEX_READ_BIT_KHR = 0x00000002ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR = 0x00000004ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_UNIFORM_READ_BIT_KHR = 0x00000008ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR = 0x00000010ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_SHADER_READ_BIT_KHR = 0x00000020ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_SHADER_WRITE_BIT_KHR = 0x00000040ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR = 0x00000080ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR = 0x00000100ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR = 0x00000200ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR = 0x00000400ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_TRANSFER_READ_BIT_KHR = 0x00000800ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR = 0x00001000ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_HOST_READ_BIT_KHR = 0x00002000ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_HOST_WRITE_BIT_KHR = 0x00004000ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_MEMORY_READ_BIT_KHR = 0x00008000ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_MEMORY_WRITE_BIT_KHR = 0x00010000ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR = 0x100000000ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR = 0x200000000ULL;
static const VkAccessFlagBits2KHR VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR = 0x400000000ULL;
#ifdef VK_ENABLE_BETA_EXTENSIONS
// Provided by VK_KHR_video_decode_queue
static const VkAccessFlagBits2KHR VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR = 0x800000000ULL;
#endif
#ifdef VK_ENABLE_BETA_EXTENSIONS
// Provided by VK_KHR_video_decode_queue
static const VkAccessFlagBits2KHR VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR = 0x1000000000ULL;
#endif
#ifdef VK_ENABLE_BETA_EXTENSIONS
// Provided by VK_KHR_video_encode_queue
static const VkAccessFlagBits2KHR VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR = 0x2000000000ULL;
#endif
#ifdef VK_ENABLE_BETA_EXTENSIONS
// Provided by VK_KHR_video_encode_queue
static const VkAccessFlagBits2KHR VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR = 0x4000000000ULL;
#endif
// Provided by VK_KHR_synchronization2 with VK_EXT_transform_feedback
static const VkAccessFlagBits2KHR VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT = 0x02000000ULL;
// Provided by VK_KHR_synchronization2 with VK_EXT_transform_feedback
static const VkAccessFlagBits2KHR VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT = 0x04000000ULL;
// Provided by VK_KHR_synchronization2 with VK_EXT_transform_feedback
static const VkAccessFlagBits2KHR VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT = 0x08000000ULL;
// Provided by VK_KHR_synchronization2 with VK_EXT_conditional_rendering
static const VkAccessFlagBits2KHR VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT = 0x00100000ULL;
// Provided by VK_KHR_synchronization2 with VK_NV_device_generated_commands
static const VkAccessFlagBits2KHR VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV = 0x00020000ULL;
// Provided by VK_KHR_synchronization2 with VK_NV_device_generated_commands
static const VkAccessFlagBits2KHR VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV = 0x00040000ULL;
// Provided by VK_KHR_synchronization2 with VK_KHR_fragment_shading_rate
static const VkAccessFlagBits2KHR VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR = 0x00800000ULL;
// Provided by VK_KHR_synchronization2 with VK_NV_shading_rate_image
static const VkAccessFlagBits2KHR VK_ACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV = 0x00800000;
// Provided by VK_KHR_synchronization2 with VK_KHR_acceleration_structure
static const VkAccessFlagBits2KHR VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR = 0x00200000ULL;
// Provided by VK_KHR_synchronization2 with VK_KHR_acceleration_structure
static const VkAccessFlagBits2KHR VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR = 0x00400000ULL;
// Provided by VK_KHR_synchronization2 with VK_NV_ray_tracing
static const VkAccessFlagBits2KHR VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_NV = 0x00200000;
// Provided by VK_KHR_synchronization2 with VK_NV_ray_tracing
static const VkAccessFlagBits2KHR VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_NV = 0x00400000;
// Provided by VK_KHR_synchronization2 with VK_EXT_fragment_density_map
static const VkAccessFlagBits2KHR VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT = 0x01000000ULL;
// Provided by VK_KHR_synchronization2 with VK_EXT_blend_operation_advanced
static const VkAccessFlagBits2KHR VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT = 0x00080000ULL;
Description
-
VK_ACCESS_2_NONE_KHR
specifies no accesses. -
VK_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 allREAD
access flags that are valid where it is used. -
VK_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 allWRITE
access flags that are valid where it is used. -
VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR
specifies read access to indirect buffers in theVK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR
pipeline stage. -
VK_ACCESS_2_INDEX_READ_BIT_KHR
specifies read access to an index buffer in theVK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR
pipeline stage. -
VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR
specifies read access to a vertex buffer in theVK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR
pipeline stage. -
VK_ACCESS_2_UNIFORM_READ_BIT_KHR
specifies read access to a uniform buffer in any shader pipeline stage. -
VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR
specifies read access to an input attachment in theVK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR
pipeline stage. -
VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR
specifies read access to a uniform texel buffer or sampled image in any shader pipeline stage. -
VK_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. -
VK_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. -
VK_ACCESS_2_SHADER_READ_BIT_KHR
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
-
-
VK_ACCESS_2_SHADER_WRITE_BIT_KHR
is equivalent toVK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR
. -
VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR
specifies read access to a color attachment (excluding advanced blend operations) in theVK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR
pipeline stage. -
VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR
specifies write access to a color or resolve attachment in theVK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR
pipeline stage. -
VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR
specifies read access to a depth/stencil attachment in theVK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR
orVK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR
pipeline stages. -
VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR
specifies write access to a depth/stencil attachment in theVK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR
orVK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR
pipeline stages. -
VK_ACCESS_2_TRANSFER_READ_BIT_KHR
specifies read access to an image or buffer in theVK_PIPELINE_STAGE_2_COPY_BIT_KHR
,VK_PIPELINE_STAGE_2_BLIT_BIT_KHR
, orVK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR
pipeline stages. -
VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR
specifies write access to an image or buffer in theVK_PIPELINE_STAGE_2_COPY_BIT_KHR
,VK_PIPELINE_STAGE_2_BLIT_BIT_KHR
,VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR
, orVK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR
pipeline stages. -
VK_ACCESS_2_HOST_READ_BIT_KHR
specifies read access to memory in theVK_PIPELINE_STAGE_2_HOST_BIT_KHR
pipeline stage. -
VK_ACCESS_2_HOST_WRITE_BIT_KHR
specifies write access to memory in theVK_PIPELINE_STAGE_2_HOST_BIT_KHR
pipeline stage. -
VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT
specifies read access to a predicate in theVK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT
pipeline stage. -
VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT
specifies write access to a transform feedback buffer in theVK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT
pipeline stage. -
VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT
specifies read access to a transform feedback counter buffer in theVK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT
pipeline stage. -
VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT
specifies write access to a transform feedback counter buffer in theVK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT
pipeline stage. -
VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV
specifies reads fromVkBuffer
inputs to vkCmdPreprocessGeneratedCommandsNV in theVK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV
pipeline stage. -
VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV
specifies writes to the target command buffer in theVK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV
pipeline stage. -
VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT
specifies read access to color attachments, including advanced blend operations, in theVK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR
pipeline stage. -
VK_ACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV
specifies read access to a shading rate image in theVK_PIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV
pipeline stage. -
VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR
specifies read access to an acceleration structure in theVK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR
orVK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR
pipeline stages. -
VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR
specifies write access to an acceleration structure in theVK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR
pipeline stage. -
VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT
specifies read access to a fragment density map attachment in theVK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT
pipeline stage. -
VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR
specifies read access to an image or buffer resource as part of a video decode operation. -
VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR
specifies write access to an image or buffer resource as part of a video decode operation. -
VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR
specifies read access to an image or buffer resource as part of a video encode operation. -
VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR
specifies write access to an image or buffer resource as part of a video encode operation.
Note
In situations where an application wishes to select all access types for a
given set of pipeline stages, |
Note
The |
Document Notes
For more information, see the Vulkan Specification
This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.