Class KHRMaintenance5
VK_KHR_maintenance5 adds a collection of minor features, none of which would warrant an entire extension of their own.
The new features are as follows:
- A new
FORMAT_A1B5G5R5_UNORM_PACK16_KHRformat - A new
FORMAT_A8_UNORM_KHRformat - A property to indicate that multisample coverage operations are performed after sample counting in EarlyFragmentTests mode
- Relax VkBufferView creation requirements by allowing subsets of the associated VkBuffer usage using
VkBufferUsageFlags2CreateInfoKHR - A new command
CmdBindIndexBuffer2KHR, allowing a range of memory to be bound as an index buffer GetDeviceProcAddrmust returnNULLfor supported core functions beyond the version requested by the application.- A property to indicate that the sample mask test is performed after sample counting in EarlyFragmentTests mode
vkCmdBindVertexBuffers2now supports usingVK_WHOLE_SIZEin thepSizesparameter.- A default size of 1.0 is used if
PointSizeis not written - Shader modules are deprecated - applications can now pass
VkShaderModuleCreateInfoas a chained struct to pipeline creation viaVkPipelineShaderStageCreateInfo - A function
GetRenderingAreaGranularityKHRto query the optimal render area for a dynamic rendering instance. - A property to indicate that depth/stencil texturing operations with
COMPONENT_SWIZZLE_ONEhave defined behavior - Add
GetImageSubresourceLayout2KHRand a new functionGetDeviceImageSubresourceLayoutKHRto allow the application to query the image memory layout without having to create an image object and query it. - Allow
REMAINING_ARRAY_LAYERSas thelayerCountmember ofVkImageSubresourceLayers - Adds stronger guarantees for propagation of
ERROR_DEVICE_LOSTreturn values - A property to indicate whether
PointSizecontrols the final rasterization of polygons if polygon mode isPOLYGON_MODE_POINT - Two properties to indicate the non-strict line rasterization algorithm used
- Two new flags words
VkPipelineCreateFlagBits2KHRandVkBufferUsageFlagBits2KHR - Physical-device-level functions can now be called with any value in the valid range for a type beyond the defined enumerants, such that applications can avoid checking individual features, extensions, or versions before querying supported properties of a particular enumerant.
- Clarification that copies between images of any type are allowed, treating 1D images as 2D images with a height of 1.
- Name String
VK_KHR_maintenance5- Extension Type
- Device extension
- Registered Extension Number
- 471
- Revision
- 1
- Extension and Version Dependencies
- Version 1.1 and
VK_KHR_dynamic_renderingor Version 1.3 - API Interactions
- Interacts with VK_VERSION_1_1
- Interacts with VK_VERSION_1_2
- Interacts with VK_VERSION_1_3
- Interacts with VK_EXT_attachment_feedback_loop_layout
- Interacts with VK_EXT_buffer_device_address
- Interacts with VK_EXT_conditional_rendering
- Interacts with VK_EXT_descriptor_buffer
- Interacts with VK_EXT_fragment_density_map
- Interacts with VK_EXT_graphics_pipeline_library
- Interacts with VK_EXT_opacity_micromap
- Interacts with VK_EXT_pipeline_creation_cache_control
- Interacts with VK_EXT_pipeline_protected_access
- Interacts with VK_EXT_transform_feedback
- Interacts with VK_KHR_acceleration_structure
- Interacts with VK_KHR_buffer_device_address
- Interacts with VK_KHR_device_group
- Interacts with VK_KHR_dynamic_rendering
- Interacts with VK_KHR_fragment_shading_rate
- Interacts with VK_KHR_pipeline_executable_properties
- Interacts with VK_KHR_pipeline_library
- Interacts with VK_KHR_ray_tracing_pipeline
- Interacts with VK_KHR_video_decode_queue
- Interacts with VK_KHR_video_encode_queue
- Interacts with VK_NV_device_generated_commands
- Interacts with VK_NV_displacement_micromap
- Interacts with VK_NV_ray_tracing
- Interacts with VK_NV_ray_tracing_motion_blur
- Contact
- Stu Smith stu-s
- Extension Proposal
- VK_KHR_maintenance5
Other Extension Metadata
- Last Modified Date
- 2023-05-02
- Contributors
- Stu Smith, AMD
- Tobias Hector, AMD
- Shahbaz Youssefi, Google
- Slawomir Cygan, Intel
- Lionel Landwerlin, Intel
- James Fitzpatrick, Imagination Technologies
- Andrew Garrard, Imagination Technologies
- Ralph Potter, Samsung
- Pan Gao, Huawei
- Jan-Harald Fredriksen, ARM
- Jon Leech, Khronos
- Mike Blumenkrantz, Valve
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final longExtendsVkBufferUsageFlagBits2KHR.static final longExtendsVkBufferUsageFlagBits2KHR.static final longExtendsVkBufferUsageFlagBits2KHR.static final longVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdstatic final longVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdstatic final longExtendsVkBufferUsageFlagBits2KHR.static final longExtendsVkBufferUsageFlagBits2KHR.static final longExtendsVkBufferUsageFlagBits2KHR.static final longExtendsVkBufferUsageFlagBits2KHR.static final longExtendsVkBufferUsageFlagBits2KHR.static final longExtendsVkBufferUsageFlagBits2KHR.static final longExtendsVkBufferUsageFlagBits2KHR.static final longExtendsVkBufferUsageFlagBits2KHR.static final longVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdstatic final longVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdstatic final longVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdstatic final longVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdstatic final longExtendsVkBufferUsageFlagBits2KHR.static final longExtendsVkBufferUsageFlagBits2KHR.static final longVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdstatic final longVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdstatic final longVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdstatic final longExtendsVkBufferUsageFlagBits2KHR.static final longExtendsVkBufferUsageFlagBits2KHR.static final longExtendsVkBufferUsageFlagBits2KHR.static final longExtendsVkBufferUsageFlagBits2KHR.static final intExtendsVkFormat.static final intExtendsVkFormat.static final StringThe extension name.static final intThe extension specification version.static final longVkPipelineCreateFlagBits2KHR - Bitmask controlling how a pipeline is createdstatic final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longVkPipelineCreateFlagBits2KHR - Bitmask controlling how a pipeline is createdstatic final longExtendsVkPipelineCreateFlagBits2KHR.static final longVkPipelineCreateFlagBits2KHR - Bitmask controlling how a pipeline is createdstatic final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longVkPipelineCreateFlagBits2KHR - Bitmask controlling how a pipeline is createdstatic final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final longExtendsVkPipelineCreateFlagBits2KHR.static final intExtendsVkStructureType.static final intExtendsVkStructureType.static final intExtendsVkStructureType.static final intExtendsVkStructureType.static final intExtendsVkStructureType.static final intExtendsVkStructureType.static final intExtendsVkStructureType.static final intExtendsVkStructureType. -
Method Summary
Modifier and TypeMethodDescriptionstatic voidnvkGetDeviceImageSubresourceLayoutKHR(org.lwjgl.vulkan.VkDevice device, long pInfo, long pLayout) Unsafe version of:GetDeviceImageSubresourceLayoutKHRstatic voidnvkGetImageSubresourceLayout2KHR(org.lwjgl.vulkan.VkDevice device, long image, long pSubresource, long pLayout) Unsafe version of:GetImageSubresourceLayout2KHRstatic voidnvkGetRenderingAreaGranularityKHR(org.lwjgl.vulkan.VkDevice device, long pRenderingAreaInfo, long pGranularity) Unsafe version of:GetRenderingAreaGranularityKHRstatic voidvkCmdBindIndexBuffer2KHR(org.lwjgl.vulkan.VkCommandBuffer commandBuffer, long buffer, long offset, long size, int indexType) Bind an index buffer to a command buffer.static voidvkGetDeviceImageSubresourceLayoutKHR(org.lwjgl.vulkan.VkDevice device, VkDeviceImageSubresourceInfoKHR pInfo, VkSubresourceLayout2KHR pLayout) Retrieve information about an image subresource without an image object.static voidvkGetImageSubresourceLayout2KHR(org.lwjgl.vulkan.VkDevice device, long image, VkImageSubresource2KHR pSubresource, VkSubresourceLayout2KHR pLayout) Retrieve information about an image subresource.static voidvkGetRenderingAreaGranularityKHR(org.lwjgl.vulkan.VkDevice device, VkRenderingAreaInfoKHR pRenderingAreaInfo, VkExtent2D pGranularity) Returns the granularity for dynamic rendering optimal render area.
-
Field Details
-
VK_KHR_MAINTENANCE_5_SPEC_VERSION
public static final int VK_KHR_MAINTENANCE_5_SPEC_VERSIONThe extension specification version.- See Also:
-
VK_KHR_MAINTENANCE_5_EXTENSION_NAME
The extension name.- See Also:
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES_KHR
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES_KHRExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES_KHR
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES_KHRExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_RENDERING_AREA_INFO_KHR
public static final int VK_STRUCTURE_TYPE_RENDERING_AREA_INFO_KHRExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_DEVICE_IMAGE_SUBRESOURCE_INFO_KHR
public static final int VK_STRUCTURE_TYPE_DEVICE_IMAGE_SUBRESOURCE_INFO_KHRExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_KHR
public static final int VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_KHRExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_KHR
public static final int VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_KHRExtendsVkStructureType.Enum values:
- See Also:
-
VK_FORMAT_A1B5G5R5_UNORM_PACK16_KHR
public static final int VK_FORMAT_A1B5G5R5_UNORM_PACK16_KHR- See Also:
-
VK_FORMAT_A8_UNORM_KHR
public static final int VK_FORMAT_A8_UNORM_KHR- See Also:
-
VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR
public static final int VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHRExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR
public static final int VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHRExtendsVkStructureType.Enum values:
- See Also:
-
VK_PIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHRExtendsVkPipelineCreateFlagBits2KHR.Enum values:
- See Also:
-
VK_PIPELINE_CREATE_2_DISPATCH_BASE_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_DISPATCH_BASE_BIT_KHRExtendsVkPipelineCreateFlagBits2KHR.Enum values:
- See Also:
-
VK_PIPELINE_CREATE_2_DEFER_COMPILE_BIT_NV
public static final long VK_PIPELINE_CREATE_2_DEFER_COMPILE_BIT_NVExtendsVkPipelineCreateFlagBits2KHR.- See Also:
-
VK_PIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHRExtendsVkPipelineCreateFlagBits2KHR.Enum values:
- See Also:
-
VK_PIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHRExtendsVkPipelineCreateFlagBits2KHR.Enum values:
- See Also:
-
VK_PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_KHRExtendsVkPipelineCreateFlagBits2KHR.Enum values:
- See Also:
-
VK_PIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT_KHRExtendsVkPipelineCreateFlagBits2KHR.Enum values:
- See Also:
-
VK_PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT
public static final long VK_PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXTExtendsVkPipelineCreateFlagBits2KHR.Enum values:
- See Also:
-
VK_PIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT
public static final long VK_PIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXTExtendsVkPipelineCreateFlagBits2KHR.Enum values:
- See Also:
-
VK_PIPELINE_CREATE_2_LIBRARY_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_LIBRARY_BIT_KHRExtendsVkPipelineCreateFlagBits2KHR.- See Also:
-
VK_PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHRExtendsVkPipelineCreateFlagBits2KHR.Enum values:
PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR
- See Also:
-
VK_PIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHRExtendsVkPipelineCreateFlagBits2KHR.Enum values:
PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR
- See Also:
-
VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHRExtendsVkPipelineCreateFlagBits2KHR.Enum values:
PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR
- See Also:
-
VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHRExtendsVkPipelineCreateFlagBits2KHR.Enum values:
PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR
- See Also:
-
VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHRExtendsVkPipelineCreateFlagBits2KHR.Enum values:
PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR
- See Also:
-
VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHRExtendsVkPipelineCreateFlagBits2KHR.Enum values:
PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR
- See Also:
-
VK_PIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHRExtendsVkPipelineCreateFlagBits2KHR.Enum values:
PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHRPIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR
- See Also:
-
VK_PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NV
public static final long VK_PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NVExtendsVkPipelineCreateFlagBits2KHR.- See Also:
-
VK_PIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NV
public static final long VK_PIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NVExtendsVkPipelineCreateFlagBits2KHR.- See Also:
-
VK_PIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHRExtendsVkPipelineCreateFlagBits2KHR.- See Also:
-
VK_PIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT
public static final long VK_PIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXTExtendsVkPipelineCreateFlagBits2KHR.- See Also:
-
VK_PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT
public static final long VK_PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXTExtendsVkPipelineCreateFlagBits2KHR.- See Also:
-
VK_PIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT
public static final long VK_PIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXTExtendsVkPipelineCreateFlagBits2KHR.Enum values:
- See Also:
-
VK_PIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT
public static final long VK_PIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXTExtendsVkPipelineCreateFlagBits2KHR.Enum values:
- See Also:
-
VK_PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT_EXT
public static final long VK_PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT_EXTExtendsVkPipelineCreateFlagBits2KHR.Enum values:
- See Also:
-
VK_PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT_EXT
public static final long VK_PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT_EXTExtendsVkPipelineCreateFlagBits2KHR.Enum values:
- See Also:
-
VK_PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV
public static final long VK_PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NVExtendsVkPipelineCreateFlagBits2KHR.- See Also:
-
VK_PIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXT
public static final long VK_PIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXTExtendsVkPipelineCreateFlagBits2KHR.- See Also:
-
VK_BUFFER_USAGE_2_CONDITIONAL_RENDERING_BIT_EXT
public static final long VK_BUFFER_USAGE_2_CONDITIONAL_RENDERING_BIT_EXTExtendsVkBufferUsageFlagBits2KHR.- See Also:
-
VK_BUFFER_USAGE_2_SHADER_BINDING_TABLE_BIT_KHR
public static final long VK_BUFFER_USAGE_2_SHADER_BINDING_TABLE_BIT_KHRExtendsVkBufferUsageFlagBits2KHR.- See Also:
-
VK_BUFFER_USAGE_2_RAY_TRACING_BIT_NV
public static final long VK_BUFFER_USAGE_2_RAY_TRACING_BIT_NVExtendsVkBufferUsageFlagBits2KHR.- See Also:
-
VK_BUFFER_USAGE_2_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT
public static final long VK_BUFFER_USAGE_2_TRANSFORM_FEEDBACK_BUFFER_BIT_EXTExtendsVkBufferUsageFlagBits2KHR.Enum values:
- See Also:
-
VK_BUFFER_USAGE_2_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT
public static final long VK_BUFFER_USAGE_2_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXTExtendsVkBufferUsageFlagBits2KHR.Enum values:
- See Also:
-
VK_BUFFER_USAGE_2_VIDEO_DECODE_SRC_BIT_KHR
public static final long VK_BUFFER_USAGE_2_VIDEO_DECODE_SRC_BIT_KHRExtendsVkBufferUsageFlagBits2KHR.Enum values:
- See Also:
-
VK_BUFFER_USAGE_2_VIDEO_DECODE_DST_BIT_KHR
public static final long VK_BUFFER_USAGE_2_VIDEO_DECODE_DST_BIT_KHRExtendsVkBufferUsageFlagBits2KHR.Enum values:
- See Also:
-
VK_BUFFER_USAGE_2_VIDEO_ENCODE_DST_BIT_KHR
public static final long VK_BUFFER_USAGE_2_VIDEO_ENCODE_DST_BIT_KHRExtendsVkBufferUsageFlagBits2KHR.Enum values:
- See Also:
-
VK_BUFFER_USAGE_2_VIDEO_ENCODE_SRC_BIT_KHR
public static final long VK_BUFFER_USAGE_2_VIDEO_ENCODE_SRC_BIT_KHRExtendsVkBufferUsageFlagBits2KHR.Enum values:
- See Also:
-
VK_BUFFER_USAGE_2_SHADER_DEVICE_ADDRESS_BIT_KHR
public static final long VK_BUFFER_USAGE_2_SHADER_DEVICE_ADDRESS_BIT_KHRExtendsVkBufferUsageFlagBits2KHR.- See Also:
-
VK_BUFFER_USAGE_2_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR
public static final long VK_BUFFER_USAGE_2_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHRExtendsVkBufferUsageFlagBits2KHR.Enum values:
- See Also:
-
VK_BUFFER_USAGE_2_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR
public static final long VK_BUFFER_USAGE_2_ACCELERATION_STRUCTURE_STORAGE_BIT_KHRExtendsVkBufferUsageFlagBits2KHR.Enum values:
- See Also:
-
VK_BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT
public static final long VK_BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXTExtendsVkBufferUsageFlagBits2KHR.Enum values:
- See Also:
-
VK_BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT
public static final long VK_BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXTExtendsVkBufferUsageFlagBits2KHR.Enum values:
- See Also:
-
VK_BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT
public static final long VK_BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXTExtendsVkBufferUsageFlagBits2KHR.Enum values:
- See Also:
-
VK_BUFFER_USAGE_2_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT
public static final long VK_BUFFER_USAGE_2_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXTExtendsVkBufferUsageFlagBits2KHR.Enum values:
- See Also:
-
VK_BUFFER_USAGE_2_MICROMAP_STORAGE_BIT_EXT
public static final long VK_BUFFER_USAGE_2_MICROMAP_STORAGE_BIT_EXTExtendsVkBufferUsageFlagBits2KHR.Enum values:
- See Also:
-
VK_PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT_KHRVkPipelineCreateFlagBits2KHR - Bitmask controlling how a pipeline is createdDescription
PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT_KHRspecifies that the created pipeline will not be optimized. Using this flag may reduce the time taken to create the pipeline.PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHRspecifies that the pipeline to be created is allowed to be the parent of a pipeline that will be created in a subsequent pipeline creation call.PIPELINE_CREATE_2_DERIVATIVE_BIT_KHRspecifies that the pipeline to be created will be a child of a previously created parent pipeline.PIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHRspecifies that any shader input variables decorated asViewIndexwill be assigned values as if they were decorated asDeviceIndex.PIPELINE_CREATE_2_DISPATCH_BASE_BIT_KHRspecifies that a compute pipeline can be used withCmdDispatchBasewith a non-zero base workgroup.PIPELINE_CREATE_2_DEFER_COMPILE_BIT_NVspecifies that a pipeline is created with all shaders in the deferred state. Before using the pipeline the application must callCompileDeferredNVexactly once on each shader in the pipeline before using the pipeline.PIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHRspecifies that the shader compiler should capture statistics for the pipeline executables produced by the compile process which can later be retrieved by callingGetPipelineExecutableStatisticsKHR. Enabling this flag must not affect the final compiled pipeline but may disable pipeline caching or otherwise affect pipeline creation time.PIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHRspecifies that the shader compiler should capture the internal representations of pipeline executables produced by the compile process which can later be retrieved by callingGetPipelineExecutableInternalRepresentationsKHR. Enabling this flag must not affect the final compiled pipeline but may disable pipeline caching or otherwise affect pipeline creation time. When capturing IR from pipelines created with pipeline libraries, there is no guarantee that IR from libraries can be retrieved from the linked pipeline. Applications should retrieve IR from each library, and any linked pipelines, separately.PIPELINE_CREATE_2_LIBRARY_BIT_KHRspecifies that the pipeline cannot be used directly, and instead defines a pipeline library that can be combined with other pipelines using theVkPipelineLibraryCreateInfoKHRstructure. This is available in ray tracing and graphics pipelines.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHRspecifies that an any-hit shader will always be present when an any-hit shader would be executed. A NULL any-hit shader is an any-hit shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHRspecifies that a closest hit shader will always be present when a closest hit shader would be executed. A NULL closest hit shader is a closest hit shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHRspecifies that a miss shader will always be present when a miss shader would be executed. A NULL miss shader is a miss shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHRspecifies that an intersection shader will always be present when an intersection shader would be executed. A NULL intersection shader is an intersection shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHRspecifies that triangle primitives will be skipped during traversal using pipeline trace ray instructions.PIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHRspecifies that AABB primitives will be skipped during traversal using pipeline trace ray instructions.PIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHRspecifies that the shader group handles can be saved and reused on a subsequent run (e.g. for trace capture and replay).PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NVspecifies that the pipeline can be used in combination with Device-Generated Commands.PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_KHRspecifies that pipeline creation will fail if a compile is required for creation of a validVkPipelineobject;PIPELINE_COMPILE_REQUIREDwill be returned by pipeline creation, and theVkPipelinewill be set toNULL_HANDLE.- When creating multiple pipelines,
PIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT_KHRspecifies that control will be returned to the application if any individual pipeline returns a result which is notSUCCESSrather than continuing to create additional pipelines. PIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NVspecifies that the pipeline is allowed to useOpTraceRayMotionNV.PIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHRspecifies that the pipeline will be used with a fragment shading rate attachment.PIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXTspecifies that the pipeline will be used with a fragment density map attachment.PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXTspecifies that pipeline libraries being linked into this library should have link time optimizations applied. If this bit is omitted, implementations should instead perform linking as rapidly as possible.PIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXTspecifies that pipeline libraries should retain any information necessary to later perform an optimal link withPIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT.PIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXTspecifies that a pipeline will be used with descriptor buffers, rather than descriptor sets.PIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXTspecifies that the pipeline may be used with an attachment feedback loop including color attachments.PIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXTspecifies that the pipeline may be used with an attachment feedback loop including depth-stencil attachments.PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXTspecifies that the ray tracing pipeline can be used with acceleration structures which reference an opacity micromap array.PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NVspecifies that the ray tracing pipeline can be used with acceleration structures which reference a displacement micromap array.PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT_EXTspecifies that the pipeline must not be bound to a protected command buffer.PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT_EXTspecifies that the pipeline must not be bound to an unprotected command buffer.PIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXTspecifies that the pipeline will be used in a render pass that is begun withRENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT.
It is valid to set both
PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHRandPIPELINE_CREATE_2_DERIVATIVE_BIT_KHR. This allows a pipeline to be both a parent and possibly a child in a pipeline hierarchy. See Pipeline Derivatives for more information.When an implementation is looking up a pipeline in a pipeline cache, if that pipeline is being created using linked libraries, implementations should always return an equivalent pipeline created with
PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXTif available, whether or not that bit was specified.Note
Using
PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT(or not) when linking pipeline libraries is intended as a performance tradeoff between host and device. If the bit is omitted, linking should be faster and produce a pipeline more rapidly, but performance of the pipeline on the target device may be reduced. If the bit is included, linking may be slower but should produce a pipeline with device performance comparable to a monolithically created pipeline. Using both options can allow latency-sensitive applications to generate a suboptimal but usable pipeline quickly, and then perform an optimal link in the background, substituting the result for the suboptimally linked pipeline as soon as it is available.- See Also:
-
VK_PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHRVkPipelineCreateFlagBits2KHR - Bitmask controlling how a pipeline is createdDescription
PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT_KHRspecifies that the created pipeline will not be optimized. Using this flag may reduce the time taken to create the pipeline.PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHRspecifies that the pipeline to be created is allowed to be the parent of a pipeline that will be created in a subsequent pipeline creation call.PIPELINE_CREATE_2_DERIVATIVE_BIT_KHRspecifies that the pipeline to be created will be a child of a previously created parent pipeline.PIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHRspecifies that any shader input variables decorated asViewIndexwill be assigned values as if they were decorated asDeviceIndex.PIPELINE_CREATE_2_DISPATCH_BASE_BIT_KHRspecifies that a compute pipeline can be used withCmdDispatchBasewith a non-zero base workgroup.PIPELINE_CREATE_2_DEFER_COMPILE_BIT_NVspecifies that a pipeline is created with all shaders in the deferred state. Before using the pipeline the application must callCompileDeferredNVexactly once on each shader in the pipeline before using the pipeline.PIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHRspecifies that the shader compiler should capture statistics for the pipeline executables produced by the compile process which can later be retrieved by callingGetPipelineExecutableStatisticsKHR. Enabling this flag must not affect the final compiled pipeline but may disable pipeline caching or otherwise affect pipeline creation time.PIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHRspecifies that the shader compiler should capture the internal representations of pipeline executables produced by the compile process which can later be retrieved by callingGetPipelineExecutableInternalRepresentationsKHR. Enabling this flag must not affect the final compiled pipeline but may disable pipeline caching or otherwise affect pipeline creation time. When capturing IR from pipelines created with pipeline libraries, there is no guarantee that IR from libraries can be retrieved from the linked pipeline. Applications should retrieve IR from each library, and any linked pipelines, separately.PIPELINE_CREATE_2_LIBRARY_BIT_KHRspecifies that the pipeline cannot be used directly, and instead defines a pipeline library that can be combined with other pipelines using theVkPipelineLibraryCreateInfoKHRstructure. This is available in ray tracing and graphics pipelines.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHRspecifies that an any-hit shader will always be present when an any-hit shader would be executed. A NULL any-hit shader is an any-hit shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHRspecifies that a closest hit shader will always be present when a closest hit shader would be executed. A NULL closest hit shader is a closest hit shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHRspecifies that a miss shader will always be present when a miss shader would be executed. A NULL miss shader is a miss shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHRspecifies that an intersection shader will always be present when an intersection shader would be executed. A NULL intersection shader is an intersection shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHRspecifies that triangle primitives will be skipped during traversal using pipeline trace ray instructions.PIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHRspecifies that AABB primitives will be skipped during traversal using pipeline trace ray instructions.PIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHRspecifies that the shader group handles can be saved and reused on a subsequent run (e.g. for trace capture and replay).PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NVspecifies that the pipeline can be used in combination with Device-Generated Commands.PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_KHRspecifies that pipeline creation will fail if a compile is required for creation of a validVkPipelineobject;PIPELINE_COMPILE_REQUIREDwill be returned by pipeline creation, and theVkPipelinewill be set toNULL_HANDLE.- When creating multiple pipelines,
PIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT_KHRspecifies that control will be returned to the application if any individual pipeline returns a result which is notSUCCESSrather than continuing to create additional pipelines. PIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NVspecifies that the pipeline is allowed to useOpTraceRayMotionNV.PIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHRspecifies that the pipeline will be used with a fragment shading rate attachment.PIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXTspecifies that the pipeline will be used with a fragment density map attachment.PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXTspecifies that pipeline libraries being linked into this library should have link time optimizations applied. If this bit is omitted, implementations should instead perform linking as rapidly as possible.PIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXTspecifies that pipeline libraries should retain any information necessary to later perform an optimal link withPIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT.PIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXTspecifies that a pipeline will be used with descriptor buffers, rather than descriptor sets.PIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXTspecifies that the pipeline may be used with an attachment feedback loop including color attachments.PIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXTspecifies that the pipeline may be used with an attachment feedback loop including depth-stencil attachments.PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXTspecifies that the ray tracing pipeline can be used with acceleration structures which reference an opacity micromap array.PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NVspecifies that the ray tracing pipeline can be used with acceleration structures which reference a displacement micromap array.PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT_EXTspecifies that the pipeline must not be bound to a protected command buffer.PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT_EXTspecifies that the pipeline must not be bound to an unprotected command buffer.PIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXTspecifies that the pipeline will be used in a render pass that is begun withRENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT.
It is valid to set both
PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHRandPIPELINE_CREATE_2_DERIVATIVE_BIT_KHR. This allows a pipeline to be both a parent and possibly a child in a pipeline hierarchy. See Pipeline Derivatives for more information.When an implementation is looking up a pipeline in a pipeline cache, if that pipeline is being created using linked libraries, implementations should always return an equivalent pipeline created with
PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXTif available, whether or not that bit was specified.Note
Using
PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT(or not) when linking pipeline libraries is intended as a performance tradeoff between host and device. If the bit is omitted, linking should be faster and produce a pipeline more rapidly, but performance of the pipeline on the target device may be reduced. If the bit is included, linking may be slower but should produce a pipeline with device performance comparable to a monolithically created pipeline. Using both options can allow latency-sensitive applications to generate a suboptimal but usable pipeline quickly, and then perform an optimal link in the background, substituting the result for the suboptimally linked pipeline as soon as it is available.- See Also:
-
VK_PIPELINE_CREATE_2_DERIVATIVE_BIT_KHR
public static final long VK_PIPELINE_CREATE_2_DERIVATIVE_BIT_KHRVkPipelineCreateFlagBits2KHR - Bitmask controlling how a pipeline is createdDescription
PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT_KHRspecifies that the created pipeline will not be optimized. Using this flag may reduce the time taken to create the pipeline.PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHRspecifies that the pipeline to be created is allowed to be the parent of a pipeline that will be created in a subsequent pipeline creation call.PIPELINE_CREATE_2_DERIVATIVE_BIT_KHRspecifies that the pipeline to be created will be a child of a previously created parent pipeline.PIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHRspecifies that any shader input variables decorated asViewIndexwill be assigned values as if they were decorated asDeviceIndex.PIPELINE_CREATE_2_DISPATCH_BASE_BIT_KHRspecifies that a compute pipeline can be used withCmdDispatchBasewith a non-zero base workgroup.PIPELINE_CREATE_2_DEFER_COMPILE_BIT_NVspecifies that a pipeline is created with all shaders in the deferred state. Before using the pipeline the application must callCompileDeferredNVexactly once on each shader in the pipeline before using the pipeline.PIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHRspecifies that the shader compiler should capture statistics for the pipeline executables produced by the compile process which can later be retrieved by callingGetPipelineExecutableStatisticsKHR. Enabling this flag must not affect the final compiled pipeline but may disable pipeline caching or otherwise affect pipeline creation time.PIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHRspecifies that the shader compiler should capture the internal representations of pipeline executables produced by the compile process which can later be retrieved by callingGetPipelineExecutableInternalRepresentationsKHR. Enabling this flag must not affect the final compiled pipeline but may disable pipeline caching or otherwise affect pipeline creation time. When capturing IR from pipelines created with pipeline libraries, there is no guarantee that IR from libraries can be retrieved from the linked pipeline. Applications should retrieve IR from each library, and any linked pipelines, separately.PIPELINE_CREATE_2_LIBRARY_BIT_KHRspecifies that the pipeline cannot be used directly, and instead defines a pipeline library that can be combined with other pipelines using theVkPipelineLibraryCreateInfoKHRstructure. This is available in ray tracing and graphics pipelines.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHRspecifies that an any-hit shader will always be present when an any-hit shader would be executed. A NULL any-hit shader is an any-hit shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHRspecifies that a closest hit shader will always be present when a closest hit shader would be executed. A NULL closest hit shader is a closest hit shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHRspecifies that a miss shader will always be present when a miss shader would be executed. A NULL miss shader is a miss shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHRspecifies that an intersection shader will always be present when an intersection shader would be executed. A NULL intersection shader is an intersection shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHRspecifies that triangle primitives will be skipped during traversal using pipeline trace ray instructions.PIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHRspecifies that AABB primitives will be skipped during traversal using pipeline trace ray instructions.PIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHRspecifies that the shader group handles can be saved and reused on a subsequent run (e.g. for trace capture and replay).PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NVspecifies that the pipeline can be used in combination with Device-Generated Commands.PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_KHRspecifies that pipeline creation will fail if a compile is required for creation of a validVkPipelineobject;PIPELINE_COMPILE_REQUIREDwill be returned by pipeline creation, and theVkPipelinewill be set toNULL_HANDLE.- When creating multiple pipelines,
PIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT_KHRspecifies that control will be returned to the application if any individual pipeline returns a result which is notSUCCESSrather than continuing to create additional pipelines. PIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NVspecifies that the pipeline is allowed to useOpTraceRayMotionNV.PIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHRspecifies that the pipeline will be used with a fragment shading rate attachment.PIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXTspecifies that the pipeline will be used with a fragment density map attachment.PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXTspecifies that pipeline libraries being linked into this library should have link time optimizations applied. If this bit is omitted, implementations should instead perform linking as rapidly as possible.PIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXTspecifies that pipeline libraries should retain any information necessary to later perform an optimal link withPIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT.PIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXTspecifies that a pipeline will be used with descriptor buffers, rather than descriptor sets.PIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXTspecifies that the pipeline may be used with an attachment feedback loop including color attachments.PIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXTspecifies that the pipeline may be used with an attachment feedback loop including depth-stencil attachments.PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXTspecifies that the ray tracing pipeline can be used with acceleration structures which reference an opacity micromap array.PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NVspecifies that the ray tracing pipeline can be used with acceleration structures which reference a displacement micromap array.PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT_EXTspecifies that the pipeline must not be bound to a protected command buffer.PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT_EXTspecifies that the pipeline must not be bound to an unprotected command buffer.PIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXTspecifies that the pipeline will be used in a render pass that is begun withRENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT.
It is valid to set both
PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHRandPIPELINE_CREATE_2_DERIVATIVE_BIT_KHR. This allows a pipeline to be both a parent and possibly a child in a pipeline hierarchy. See Pipeline Derivatives for more information.When an implementation is looking up a pipeline in a pipeline cache, if that pipeline is being created using linked libraries, implementations should always return an equivalent pipeline created with
PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXTif available, whether or not that bit was specified.Note
Using
PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT(or not) when linking pipeline libraries is intended as a performance tradeoff between host and device. If the bit is omitted, linking should be faster and produce a pipeline more rapidly, but performance of the pipeline on the target device may be reduced. If the bit is included, linking may be slower but should produce a pipeline with device performance comparable to a monolithically created pipeline. Using both options can allow latency-sensitive applications to generate a suboptimal but usable pipeline quickly, and then perform an optimal link in the background, substituting the result for the suboptimally linked pipeline as soon as it is available.- See Also:
-
VK_PIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXT
public static final long VK_PIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXTVkPipelineCreateFlagBits2KHR - Bitmask controlling how a pipeline is createdDescription
PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT_KHRspecifies that the created pipeline will not be optimized. Using this flag may reduce the time taken to create the pipeline.PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHRspecifies that the pipeline to be created is allowed to be the parent of a pipeline that will be created in a subsequent pipeline creation call.PIPELINE_CREATE_2_DERIVATIVE_BIT_KHRspecifies that the pipeline to be created will be a child of a previously created parent pipeline.PIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHRspecifies that any shader input variables decorated asViewIndexwill be assigned values as if they were decorated asDeviceIndex.PIPELINE_CREATE_2_DISPATCH_BASE_BIT_KHRspecifies that a compute pipeline can be used withCmdDispatchBasewith a non-zero base workgroup.PIPELINE_CREATE_2_DEFER_COMPILE_BIT_NVspecifies that a pipeline is created with all shaders in the deferred state. Before using the pipeline the application must callCompileDeferredNVexactly once on each shader in the pipeline before using the pipeline.PIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHRspecifies that the shader compiler should capture statistics for the pipeline executables produced by the compile process which can later be retrieved by callingGetPipelineExecutableStatisticsKHR. Enabling this flag must not affect the final compiled pipeline but may disable pipeline caching or otherwise affect pipeline creation time.PIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHRspecifies that the shader compiler should capture the internal representations of pipeline executables produced by the compile process which can later be retrieved by callingGetPipelineExecutableInternalRepresentationsKHR. Enabling this flag must not affect the final compiled pipeline but may disable pipeline caching or otherwise affect pipeline creation time. When capturing IR from pipelines created with pipeline libraries, there is no guarantee that IR from libraries can be retrieved from the linked pipeline. Applications should retrieve IR from each library, and any linked pipelines, separately.PIPELINE_CREATE_2_LIBRARY_BIT_KHRspecifies that the pipeline cannot be used directly, and instead defines a pipeline library that can be combined with other pipelines using theVkPipelineLibraryCreateInfoKHRstructure. This is available in ray tracing and graphics pipelines.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHRspecifies that an any-hit shader will always be present when an any-hit shader would be executed. A NULL any-hit shader is an any-hit shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHRspecifies that a closest hit shader will always be present when a closest hit shader would be executed. A NULL closest hit shader is a closest hit shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHRspecifies that a miss shader will always be present when a miss shader would be executed. A NULL miss shader is a miss shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHRspecifies that an intersection shader will always be present when an intersection shader would be executed. A NULL intersection shader is an intersection shader which is effectivelySHADER_UNUSED_KHR, such as from a shader group consisting entirely of zeros.PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHRspecifies that triangle primitives will be skipped during traversal using pipeline trace ray instructions.PIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHRspecifies that AABB primitives will be skipped during traversal using pipeline trace ray instructions.PIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHRspecifies that the shader group handles can be saved and reused on a subsequent run (e.g. for trace capture and replay).PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NVspecifies that the pipeline can be used in combination with Device-Generated Commands.PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_KHRspecifies that pipeline creation will fail if a compile is required for creation of a validVkPipelineobject;PIPELINE_COMPILE_REQUIREDwill be returned by pipeline creation, and theVkPipelinewill be set toNULL_HANDLE.- When creating multiple pipelines,
PIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT_KHRspecifies that control will be returned to the application if any individual pipeline returns a result which is notSUCCESSrather than continuing to create additional pipelines. PIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NVspecifies that the pipeline is allowed to useOpTraceRayMotionNV.PIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHRspecifies that the pipeline will be used with a fragment shading rate attachment.PIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXTspecifies that the pipeline will be used with a fragment density map attachment.PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXTspecifies that pipeline libraries being linked into this library should have link time optimizations applied. If this bit is omitted, implementations should instead perform linking as rapidly as possible.PIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXTspecifies that pipeline libraries should retain any information necessary to later perform an optimal link withPIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT.PIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXTspecifies that a pipeline will be used with descriptor buffers, rather than descriptor sets.PIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXTspecifies that the pipeline may be used with an attachment feedback loop including color attachments.PIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXTspecifies that the pipeline may be used with an attachment feedback loop including depth-stencil attachments.PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXTspecifies that the ray tracing pipeline can be used with acceleration structures which reference an opacity micromap array.PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NVspecifies that the ray tracing pipeline can be used with acceleration structures which reference a displacement micromap array.PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT_EXTspecifies that the pipeline must not be bound to a protected command buffer.PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT_EXTspecifies that the pipeline must not be bound to an unprotected command buffer.PIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXTspecifies that the pipeline will be used in a render pass that is begun withRENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT.
It is valid to set both
PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHRandPIPELINE_CREATE_2_DERIVATIVE_BIT_KHR. This allows a pipeline to be both a parent and possibly a child in a pipeline hierarchy. See Pipeline Derivatives for more information.When an implementation is looking up a pipeline in a pipeline cache, if that pipeline is being created using linked libraries, implementations should always return an equivalent pipeline created with
PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXTif available, whether or not that bit was specified.Note
Using
PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT(or not) when linking pipeline libraries is intended as a performance tradeoff between host and device. If the bit is omitted, linking should be faster and produce a pipeline more rapidly, but performance of the pipeline on the target device may be reduced. If the bit is included, linking may be slower but should produce a pipeline with device performance comparable to a monolithically created pipeline. Using both options can allow latency-sensitive applications to generate a suboptimal but usable pipeline quickly, and then perform an optimal link in the background, substituting the result for the suboptimally linked pipeline as soon as it is available.- See Also:
-
VK_BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHR
public static final long VK_BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHRVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdDescription
BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHRspecifies that the buffer can be used as the source of a transfer command (see the definition ofPIPELINE_STAGE_TRANSFER_BIT).BUFFER_USAGE_2_TRANSFER_DST_BIT_KHRspecifies that the buffer can be used as the destination of a transfer command.BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER.BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER.BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_UNIFORM_BUFFERorDESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_STORAGE_BUFFERorDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.BUFFER_USAGE_2_INDEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdBindIndexBuffer2KHRandCmdBindIndexBuffer.BUFFER_USAGE_2_VERTEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as an element of thepBuffersarray toCmdBindVertexBuffers.BUFFER_USAGE_2_INDIRECT_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdDrawIndirect,CmdDrawIndexedIndirect,CmdDrawMeshTasksIndirectNV,CmdDrawMeshTasksIndirectCountNV,vkCmdDrawMeshTasksIndirectEXT,vkCmdDrawMeshTasksIndirectCountEXT,CmdDrawClusterIndirectHUAWEI, orCmdDispatchIndirect. It is also suitable for passing as thebuffermember ofVkIndirectCommandsStreamNV, orsequencesCountBufferorsequencesIndexBufferorpreprocessedBuffermember ofVkGeneratedCommandsInfoNVBUFFER_USAGE_2_CONDITIONAL_RENDERING_BIT_EXTspecifies that the buffer is suitable for passing as thebufferparameter toCmdBeginConditionalRenderingEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_BUFFER_BIT_EXTspecifies that the buffer is suitable for using for binding as a transform feedback buffer withCmdBindTransformFeedbackBuffersEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXTspecifies that the buffer is suitable for using as a counter buffer withCmdBeginTransformFeedbackEXTandCmdEndTransformFeedbackEXT.BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain sampler and combined image sampler descriptors when bound as a descriptor buffer. Buffers containing combined image sampler descriptors must also specifyBUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT.BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain resource descriptors when bound as a descriptor buffer.BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer, when bound, can be used by the implementation to support push descriptors when using descriptor buffers.BUFFER_USAGE_2_RAY_TRACING_BIT_NVspecifies that the buffer is suitable for use inCmdTraceRaysNV.BUFFER_USAGE_2_SHADER_BINDING_TABLE_BIT_KHRspecifies that the buffer is suitable for use as a Shader Binding Table.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHRspecifies that the buffer is suitable for use as a read-only input to an acceleration structure build.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_STORAGE_BIT_KHRspecifies that the buffer is suitable for storage space for aVkAccelerationStructureKHR.BUFFER_USAGE_2_SHADER_DEVICE_ADDRESS_BIT_KHRspecifies that the buffer can be used to retrieve a buffer device address viaGetBufferDeviceAddressand use that address to access the buffer’s memory from a shader.BUFFER_USAGE_2_VIDEO_DECODE_SRC_BIT_KHRspecifies that the buffer can be used as the source video bitstream buffer in a video decode operation.BUFFER_USAGE_2_VIDEO_DECODE_DST_BIT_KHRis reserved for future use.BUFFER_USAGE_2_VIDEO_ENCODE_DST_BIT_KHRspecifies that the buffer can be used as the destination video bitstream buffer in a video encode operation.BUFFER_USAGE_2_VIDEO_ENCODE_SRC_BIT_KHRis reserved for future use.BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDXspecifies that the buffer can be used for as scratch memory for execution graph dispatch.
- See Also:
-
VK_BUFFER_USAGE_2_TRANSFER_DST_BIT_KHR
public static final long VK_BUFFER_USAGE_2_TRANSFER_DST_BIT_KHRVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdDescription
BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHRspecifies that the buffer can be used as the source of a transfer command (see the definition ofPIPELINE_STAGE_TRANSFER_BIT).BUFFER_USAGE_2_TRANSFER_DST_BIT_KHRspecifies that the buffer can be used as the destination of a transfer command.BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER.BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER.BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_UNIFORM_BUFFERorDESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_STORAGE_BUFFERorDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.BUFFER_USAGE_2_INDEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdBindIndexBuffer2KHRandCmdBindIndexBuffer.BUFFER_USAGE_2_VERTEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as an element of thepBuffersarray toCmdBindVertexBuffers.BUFFER_USAGE_2_INDIRECT_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdDrawIndirect,CmdDrawIndexedIndirect,CmdDrawMeshTasksIndirectNV,CmdDrawMeshTasksIndirectCountNV,vkCmdDrawMeshTasksIndirectEXT,vkCmdDrawMeshTasksIndirectCountEXT,CmdDrawClusterIndirectHUAWEI, orCmdDispatchIndirect. It is also suitable for passing as thebuffermember ofVkIndirectCommandsStreamNV, orsequencesCountBufferorsequencesIndexBufferorpreprocessedBuffermember ofVkGeneratedCommandsInfoNVBUFFER_USAGE_2_CONDITIONAL_RENDERING_BIT_EXTspecifies that the buffer is suitable for passing as thebufferparameter toCmdBeginConditionalRenderingEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_BUFFER_BIT_EXTspecifies that the buffer is suitable for using for binding as a transform feedback buffer withCmdBindTransformFeedbackBuffersEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXTspecifies that the buffer is suitable for using as a counter buffer withCmdBeginTransformFeedbackEXTandCmdEndTransformFeedbackEXT.BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain sampler and combined image sampler descriptors when bound as a descriptor buffer. Buffers containing combined image sampler descriptors must also specifyBUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT.BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain resource descriptors when bound as a descriptor buffer.BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer, when bound, can be used by the implementation to support push descriptors when using descriptor buffers.BUFFER_USAGE_2_RAY_TRACING_BIT_NVspecifies that the buffer is suitable for use inCmdTraceRaysNV.BUFFER_USAGE_2_SHADER_BINDING_TABLE_BIT_KHRspecifies that the buffer is suitable for use as a Shader Binding Table.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHRspecifies that the buffer is suitable for use as a read-only input to an acceleration structure build.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_STORAGE_BIT_KHRspecifies that the buffer is suitable for storage space for aVkAccelerationStructureKHR.BUFFER_USAGE_2_SHADER_DEVICE_ADDRESS_BIT_KHRspecifies that the buffer can be used to retrieve a buffer device address viaGetBufferDeviceAddressand use that address to access the buffer’s memory from a shader.BUFFER_USAGE_2_VIDEO_DECODE_SRC_BIT_KHRspecifies that the buffer can be used as the source video bitstream buffer in a video decode operation.BUFFER_USAGE_2_VIDEO_DECODE_DST_BIT_KHRis reserved for future use.BUFFER_USAGE_2_VIDEO_ENCODE_DST_BIT_KHRspecifies that the buffer can be used as the destination video bitstream buffer in a video encode operation.BUFFER_USAGE_2_VIDEO_ENCODE_SRC_BIT_KHRis reserved for future use.BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDXspecifies that the buffer can be used for as scratch memory for execution graph dispatch.
- See Also:
-
VK_BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHR
public static final long VK_BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHRVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdDescription
BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHRspecifies that the buffer can be used as the source of a transfer command (see the definition ofPIPELINE_STAGE_TRANSFER_BIT).BUFFER_USAGE_2_TRANSFER_DST_BIT_KHRspecifies that the buffer can be used as the destination of a transfer command.BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER.BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER.BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_UNIFORM_BUFFERorDESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_STORAGE_BUFFERorDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.BUFFER_USAGE_2_INDEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdBindIndexBuffer2KHRandCmdBindIndexBuffer.BUFFER_USAGE_2_VERTEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as an element of thepBuffersarray toCmdBindVertexBuffers.BUFFER_USAGE_2_INDIRECT_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdDrawIndirect,CmdDrawIndexedIndirect,CmdDrawMeshTasksIndirectNV,CmdDrawMeshTasksIndirectCountNV,vkCmdDrawMeshTasksIndirectEXT,vkCmdDrawMeshTasksIndirectCountEXT,CmdDrawClusterIndirectHUAWEI, orCmdDispatchIndirect. It is also suitable for passing as thebuffermember ofVkIndirectCommandsStreamNV, orsequencesCountBufferorsequencesIndexBufferorpreprocessedBuffermember ofVkGeneratedCommandsInfoNVBUFFER_USAGE_2_CONDITIONAL_RENDERING_BIT_EXTspecifies that the buffer is suitable for passing as thebufferparameter toCmdBeginConditionalRenderingEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_BUFFER_BIT_EXTspecifies that the buffer is suitable for using for binding as a transform feedback buffer withCmdBindTransformFeedbackBuffersEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXTspecifies that the buffer is suitable for using as a counter buffer withCmdBeginTransformFeedbackEXTandCmdEndTransformFeedbackEXT.BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain sampler and combined image sampler descriptors when bound as a descriptor buffer. Buffers containing combined image sampler descriptors must also specifyBUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT.BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain resource descriptors when bound as a descriptor buffer.BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer, when bound, can be used by the implementation to support push descriptors when using descriptor buffers.BUFFER_USAGE_2_RAY_TRACING_BIT_NVspecifies that the buffer is suitable for use inCmdTraceRaysNV.BUFFER_USAGE_2_SHADER_BINDING_TABLE_BIT_KHRspecifies that the buffer is suitable for use as a Shader Binding Table.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHRspecifies that the buffer is suitable for use as a read-only input to an acceleration structure build.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_STORAGE_BIT_KHRspecifies that the buffer is suitable for storage space for aVkAccelerationStructureKHR.BUFFER_USAGE_2_SHADER_DEVICE_ADDRESS_BIT_KHRspecifies that the buffer can be used to retrieve a buffer device address viaGetBufferDeviceAddressand use that address to access the buffer’s memory from a shader.BUFFER_USAGE_2_VIDEO_DECODE_SRC_BIT_KHRspecifies that the buffer can be used as the source video bitstream buffer in a video decode operation.BUFFER_USAGE_2_VIDEO_DECODE_DST_BIT_KHRis reserved for future use.BUFFER_USAGE_2_VIDEO_ENCODE_DST_BIT_KHRspecifies that the buffer can be used as the destination video bitstream buffer in a video encode operation.BUFFER_USAGE_2_VIDEO_ENCODE_SRC_BIT_KHRis reserved for future use.BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDXspecifies that the buffer can be used for as scratch memory for execution graph dispatch.
- See Also:
-
VK_BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHR
public static final long VK_BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHRVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdDescription
BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHRspecifies that the buffer can be used as the source of a transfer command (see the definition ofPIPELINE_STAGE_TRANSFER_BIT).BUFFER_USAGE_2_TRANSFER_DST_BIT_KHRspecifies that the buffer can be used as the destination of a transfer command.BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER.BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER.BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_UNIFORM_BUFFERorDESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_STORAGE_BUFFERorDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.BUFFER_USAGE_2_INDEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdBindIndexBuffer2KHRandCmdBindIndexBuffer.BUFFER_USAGE_2_VERTEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as an element of thepBuffersarray toCmdBindVertexBuffers.BUFFER_USAGE_2_INDIRECT_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdDrawIndirect,CmdDrawIndexedIndirect,CmdDrawMeshTasksIndirectNV,CmdDrawMeshTasksIndirectCountNV,vkCmdDrawMeshTasksIndirectEXT,vkCmdDrawMeshTasksIndirectCountEXT,CmdDrawClusterIndirectHUAWEI, orCmdDispatchIndirect. It is also suitable for passing as thebuffermember ofVkIndirectCommandsStreamNV, orsequencesCountBufferorsequencesIndexBufferorpreprocessedBuffermember ofVkGeneratedCommandsInfoNVBUFFER_USAGE_2_CONDITIONAL_RENDERING_BIT_EXTspecifies that the buffer is suitable for passing as thebufferparameter toCmdBeginConditionalRenderingEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_BUFFER_BIT_EXTspecifies that the buffer is suitable for using for binding as a transform feedback buffer withCmdBindTransformFeedbackBuffersEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXTspecifies that the buffer is suitable for using as a counter buffer withCmdBeginTransformFeedbackEXTandCmdEndTransformFeedbackEXT.BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain sampler and combined image sampler descriptors when bound as a descriptor buffer. Buffers containing combined image sampler descriptors must also specifyBUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT.BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain resource descriptors when bound as a descriptor buffer.BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer, when bound, can be used by the implementation to support push descriptors when using descriptor buffers.BUFFER_USAGE_2_RAY_TRACING_BIT_NVspecifies that the buffer is suitable for use inCmdTraceRaysNV.BUFFER_USAGE_2_SHADER_BINDING_TABLE_BIT_KHRspecifies that the buffer is suitable for use as a Shader Binding Table.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHRspecifies that the buffer is suitable for use as a read-only input to an acceleration structure build.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_STORAGE_BIT_KHRspecifies that the buffer is suitable for storage space for aVkAccelerationStructureKHR.BUFFER_USAGE_2_SHADER_DEVICE_ADDRESS_BIT_KHRspecifies that the buffer can be used to retrieve a buffer device address viaGetBufferDeviceAddressand use that address to access the buffer’s memory from a shader.BUFFER_USAGE_2_VIDEO_DECODE_SRC_BIT_KHRspecifies that the buffer can be used as the source video bitstream buffer in a video decode operation.BUFFER_USAGE_2_VIDEO_DECODE_DST_BIT_KHRis reserved for future use.BUFFER_USAGE_2_VIDEO_ENCODE_DST_BIT_KHRspecifies that the buffer can be used as the destination video bitstream buffer in a video encode operation.BUFFER_USAGE_2_VIDEO_ENCODE_SRC_BIT_KHRis reserved for future use.BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDXspecifies that the buffer can be used for as scratch memory for execution graph dispatch.
- See Also:
-
VK_BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHR
public static final long VK_BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHRVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdDescription
BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHRspecifies that the buffer can be used as the source of a transfer command (see the definition ofPIPELINE_STAGE_TRANSFER_BIT).BUFFER_USAGE_2_TRANSFER_DST_BIT_KHRspecifies that the buffer can be used as the destination of a transfer command.BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER.BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER.BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_UNIFORM_BUFFERorDESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_STORAGE_BUFFERorDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.BUFFER_USAGE_2_INDEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdBindIndexBuffer2KHRandCmdBindIndexBuffer.BUFFER_USAGE_2_VERTEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as an element of thepBuffersarray toCmdBindVertexBuffers.BUFFER_USAGE_2_INDIRECT_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdDrawIndirect,CmdDrawIndexedIndirect,CmdDrawMeshTasksIndirectNV,CmdDrawMeshTasksIndirectCountNV,vkCmdDrawMeshTasksIndirectEXT,vkCmdDrawMeshTasksIndirectCountEXT,CmdDrawClusterIndirectHUAWEI, orCmdDispatchIndirect. It is also suitable for passing as thebuffermember ofVkIndirectCommandsStreamNV, orsequencesCountBufferorsequencesIndexBufferorpreprocessedBuffermember ofVkGeneratedCommandsInfoNVBUFFER_USAGE_2_CONDITIONAL_RENDERING_BIT_EXTspecifies that the buffer is suitable for passing as thebufferparameter toCmdBeginConditionalRenderingEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_BUFFER_BIT_EXTspecifies that the buffer is suitable for using for binding as a transform feedback buffer withCmdBindTransformFeedbackBuffersEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXTspecifies that the buffer is suitable for using as a counter buffer withCmdBeginTransformFeedbackEXTandCmdEndTransformFeedbackEXT.BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain sampler and combined image sampler descriptors when bound as a descriptor buffer. Buffers containing combined image sampler descriptors must also specifyBUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT.BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain resource descriptors when bound as a descriptor buffer.BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer, when bound, can be used by the implementation to support push descriptors when using descriptor buffers.BUFFER_USAGE_2_RAY_TRACING_BIT_NVspecifies that the buffer is suitable for use inCmdTraceRaysNV.BUFFER_USAGE_2_SHADER_BINDING_TABLE_BIT_KHRspecifies that the buffer is suitable for use as a Shader Binding Table.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHRspecifies that the buffer is suitable for use as a read-only input to an acceleration structure build.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_STORAGE_BIT_KHRspecifies that the buffer is suitable for storage space for aVkAccelerationStructureKHR.BUFFER_USAGE_2_SHADER_DEVICE_ADDRESS_BIT_KHRspecifies that the buffer can be used to retrieve a buffer device address viaGetBufferDeviceAddressand use that address to access the buffer’s memory from a shader.BUFFER_USAGE_2_VIDEO_DECODE_SRC_BIT_KHRspecifies that the buffer can be used as the source video bitstream buffer in a video decode operation.BUFFER_USAGE_2_VIDEO_DECODE_DST_BIT_KHRis reserved for future use.BUFFER_USAGE_2_VIDEO_ENCODE_DST_BIT_KHRspecifies that the buffer can be used as the destination video bitstream buffer in a video encode operation.BUFFER_USAGE_2_VIDEO_ENCODE_SRC_BIT_KHRis reserved for future use.BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDXspecifies that the buffer can be used for as scratch memory for execution graph dispatch.
- See Also:
-
VK_BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHR
public static final long VK_BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHRVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdDescription
BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHRspecifies that the buffer can be used as the source of a transfer command (see the definition ofPIPELINE_STAGE_TRANSFER_BIT).BUFFER_USAGE_2_TRANSFER_DST_BIT_KHRspecifies that the buffer can be used as the destination of a transfer command.BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER.BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER.BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_UNIFORM_BUFFERorDESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_STORAGE_BUFFERorDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.BUFFER_USAGE_2_INDEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdBindIndexBuffer2KHRandCmdBindIndexBuffer.BUFFER_USAGE_2_VERTEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as an element of thepBuffersarray toCmdBindVertexBuffers.BUFFER_USAGE_2_INDIRECT_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdDrawIndirect,CmdDrawIndexedIndirect,CmdDrawMeshTasksIndirectNV,CmdDrawMeshTasksIndirectCountNV,vkCmdDrawMeshTasksIndirectEXT,vkCmdDrawMeshTasksIndirectCountEXT,CmdDrawClusterIndirectHUAWEI, orCmdDispatchIndirect. It is also suitable for passing as thebuffermember ofVkIndirectCommandsStreamNV, orsequencesCountBufferorsequencesIndexBufferorpreprocessedBuffermember ofVkGeneratedCommandsInfoNVBUFFER_USAGE_2_CONDITIONAL_RENDERING_BIT_EXTspecifies that the buffer is suitable for passing as thebufferparameter toCmdBeginConditionalRenderingEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_BUFFER_BIT_EXTspecifies that the buffer is suitable for using for binding as a transform feedback buffer withCmdBindTransformFeedbackBuffersEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXTspecifies that the buffer is suitable for using as a counter buffer withCmdBeginTransformFeedbackEXTandCmdEndTransformFeedbackEXT.BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain sampler and combined image sampler descriptors when bound as a descriptor buffer. Buffers containing combined image sampler descriptors must also specifyBUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT.BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain resource descriptors when bound as a descriptor buffer.BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer, when bound, can be used by the implementation to support push descriptors when using descriptor buffers.BUFFER_USAGE_2_RAY_TRACING_BIT_NVspecifies that the buffer is suitable for use inCmdTraceRaysNV.BUFFER_USAGE_2_SHADER_BINDING_TABLE_BIT_KHRspecifies that the buffer is suitable for use as a Shader Binding Table.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHRspecifies that the buffer is suitable for use as a read-only input to an acceleration structure build.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_STORAGE_BIT_KHRspecifies that the buffer is suitable for storage space for aVkAccelerationStructureKHR.BUFFER_USAGE_2_SHADER_DEVICE_ADDRESS_BIT_KHRspecifies that the buffer can be used to retrieve a buffer device address viaGetBufferDeviceAddressand use that address to access the buffer’s memory from a shader.BUFFER_USAGE_2_VIDEO_DECODE_SRC_BIT_KHRspecifies that the buffer can be used as the source video bitstream buffer in a video decode operation.BUFFER_USAGE_2_VIDEO_DECODE_DST_BIT_KHRis reserved for future use.BUFFER_USAGE_2_VIDEO_ENCODE_DST_BIT_KHRspecifies that the buffer can be used as the destination video bitstream buffer in a video encode operation.BUFFER_USAGE_2_VIDEO_ENCODE_SRC_BIT_KHRis reserved for future use.BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDXspecifies that the buffer can be used for as scratch memory for execution graph dispatch.
- See Also:
-
VK_BUFFER_USAGE_2_INDEX_BUFFER_BIT_KHR
public static final long VK_BUFFER_USAGE_2_INDEX_BUFFER_BIT_KHRVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdDescription
BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHRspecifies that the buffer can be used as the source of a transfer command (see the definition ofPIPELINE_STAGE_TRANSFER_BIT).BUFFER_USAGE_2_TRANSFER_DST_BIT_KHRspecifies that the buffer can be used as the destination of a transfer command.BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER.BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER.BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_UNIFORM_BUFFERorDESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_STORAGE_BUFFERorDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.BUFFER_USAGE_2_INDEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdBindIndexBuffer2KHRandCmdBindIndexBuffer.BUFFER_USAGE_2_VERTEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as an element of thepBuffersarray toCmdBindVertexBuffers.BUFFER_USAGE_2_INDIRECT_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdDrawIndirect,CmdDrawIndexedIndirect,CmdDrawMeshTasksIndirectNV,CmdDrawMeshTasksIndirectCountNV,vkCmdDrawMeshTasksIndirectEXT,vkCmdDrawMeshTasksIndirectCountEXT,CmdDrawClusterIndirectHUAWEI, orCmdDispatchIndirect. It is also suitable for passing as thebuffermember ofVkIndirectCommandsStreamNV, orsequencesCountBufferorsequencesIndexBufferorpreprocessedBuffermember ofVkGeneratedCommandsInfoNVBUFFER_USAGE_2_CONDITIONAL_RENDERING_BIT_EXTspecifies that the buffer is suitable for passing as thebufferparameter toCmdBeginConditionalRenderingEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_BUFFER_BIT_EXTspecifies that the buffer is suitable for using for binding as a transform feedback buffer withCmdBindTransformFeedbackBuffersEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXTspecifies that the buffer is suitable for using as a counter buffer withCmdBeginTransformFeedbackEXTandCmdEndTransformFeedbackEXT.BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain sampler and combined image sampler descriptors when bound as a descriptor buffer. Buffers containing combined image sampler descriptors must also specifyBUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT.BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain resource descriptors when bound as a descriptor buffer.BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer, when bound, can be used by the implementation to support push descriptors when using descriptor buffers.BUFFER_USAGE_2_RAY_TRACING_BIT_NVspecifies that the buffer is suitable for use inCmdTraceRaysNV.BUFFER_USAGE_2_SHADER_BINDING_TABLE_BIT_KHRspecifies that the buffer is suitable for use as a Shader Binding Table.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHRspecifies that the buffer is suitable for use as a read-only input to an acceleration structure build.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_STORAGE_BIT_KHRspecifies that the buffer is suitable for storage space for aVkAccelerationStructureKHR.BUFFER_USAGE_2_SHADER_DEVICE_ADDRESS_BIT_KHRspecifies that the buffer can be used to retrieve a buffer device address viaGetBufferDeviceAddressand use that address to access the buffer’s memory from a shader.BUFFER_USAGE_2_VIDEO_DECODE_SRC_BIT_KHRspecifies that the buffer can be used as the source video bitstream buffer in a video decode operation.BUFFER_USAGE_2_VIDEO_DECODE_DST_BIT_KHRis reserved for future use.BUFFER_USAGE_2_VIDEO_ENCODE_DST_BIT_KHRspecifies that the buffer can be used as the destination video bitstream buffer in a video encode operation.BUFFER_USAGE_2_VIDEO_ENCODE_SRC_BIT_KHRis reserved for future use.BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDXspecifies that the buffer can be used for as scratch memory for execution graph dispatch.
- See Also:
-
VK_BUFFER_USAGE_2_VERTEX_BUFFER_BIT_KHR
public static final long VK_BUFFER_USAGE_2_VERTEX_BUFFER_BIT_KHRVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdDescription
BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHRspecifies that the buffer can be used as the source of a transfer command (see the definition ofPIPELINE_STAGE_TRANSFER_BIT).BUFFER_USAGE_2_TRANSFER_DST_BIT_KHRspecifies that the buffer can be used as the destination of a transfer command.BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER.BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER.BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_UNIFORM_BUFFERorDESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_STORAGE_BUFFERorDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.BUFFER_USAGE_2_INDEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdBindIndexBuffer2KHRandCmdBindIndexBuffer.BUFFER_USAGE_2_VERTEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as an element of thepBuffersarray toCmdBindVertexBuffers.BUFFER_USAGE_2_INDIRECT_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdDrawIndirect,CmdDrawIndexedIndirect,CmdDrawMeshTasksIndirectNV,CmdDrawMeshTasksIndirectCountNV,vkCmdDrawMeshTasksIndirectEXT,vkCmdDrawMeshTasksIndirectCountEXT,CmdDrawClusterIndirectHUAWEI, orCmdDispatchIndirect. It is also suitable for passing as thebuffermember ofVkIndirectCommandsStreamNV, orsequencesCountBufferorsequencesIndexBufferorpreprocessedBuffermember ofVkGeneratedCommandsInfoNVBUFFER_USAGE_2_CONDITIONAL_RENDERING_BIT_EXTspecifies that the buffer is suitable for passing as thebufferparameter toCmdBeginConditionalRenderingEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_BUFFER_BIT_EXTspecifies that the buffer is suitable for using for binding as a transform feedback buffer withCmdBindTransformFeedbackBuffersEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXTspecifies that the buffer is suitable for using as a counter buffer withCmdBeginTransformFeedbackEXTandCmdEndTransformFeedbackEXT.BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain sampler and combined image sampler descriptors when bound as a descriptor buffer. Buffers containing combined image sampler descriptors must also specifyBUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT.BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain resource descriptors when bound as a descriptor buffer.BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer, when bound, can be used by the implementation to support push descriptors when using descriptor buffers.BUFFER_USAGE_2_RAY_TRACING_BIT_NVspecifies that the buffer is suitable for use inCmdTraceRaysNV.BUFFER_USAGE_2_SHADER_BINDING_TABLE_BIT_KHRspecifies that the buffer is suitable for use as a Shader Binding Table.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHRspecifies that the buffer is suitable for use as a read-only input to an acceleration structure build.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_STORAGE_BIT_KHRspecifies that the buffer is suitable for storage space for aVkAccelerationStructureKHR.BUFFER_USAGE_2_SHADER_DEVICE_ADDRESS_BIT_KHRspecifies that the buffer can be used to retrieve a buffer device address viaGetBufferDeviceAddressand use that address to access the buffer’s memory from a shader.BUFFER_USAGE_2_VIDEO_DECODE_SRC_BIT_KHRspecifies that the buffer can be used as the source video bitstream buffer in a video decode operation.BUFFER_USAGE_2_VIDEO_DECODE_DST_BIT_KHRis reserved for future use.BUFFER_USAGE_2_VIDEO_ENCODE_DST_BIT_KHRspecifies that the buffer can be used as the destination video bitstream buffer in a video encode operation.BUFFER_USAGE_2_VIDEO_ENCODE_SRC_BIT_KHRis reserved for future use.BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDXspecifies that the buffer can be used for as scratch memory for execution graph dispatch.
- See Also:
-
VK_BUFFER_USAGE_2_INDIRECT_BUFFER_BIT_KHR
public static final long VK_BUFFER_USAGE_2_INDIRECT_BUFFER_BIT_KHRVkBufferUsageFlagBits2KHR - Bitmask controlling how a pipeline is createdDescription
BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHRspecifies that the buffer can be used as the source of a transfer command (see the definition ofPIPELINE_STAGE_TRANSFER_BIT).BUFFER_USAGE_2_TRANSFER_DST_BIT_KHRspecifies that the buffer can be used as the destination of a transfer command.BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER.BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHRspecifies that the buffer can be used to create aVkBufferViewsuitable for occupying aVkDescriptorSetslot of typeDESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER.BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_UNIFORM_BUFFERorDESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHRspecifies that the buffer can be used in aVkDescriptorBufferInfosuitable for occupying aVkDescriptorSetslot either of typeDESCRIPTOR_TYPE_STORAGE_BUFFERorDESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.BUFFER_USAGE_2_INDEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdBindIndexBuffer2KHRandCmdBindIndexBuffer.BUFFER_USAGE_2_VERTEX_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as an element of thepBuffersarray toCmdBindVertexBuffers.BUFFER_USAGE_2_INDIRECT_BUFFER_BIT_KHRspecifies that the buffer is suitable for passing as thebufferparameter toCmdDrawIndirect,CmdDrawIndexedIndirect,CmdDrawMeshTasksIndirectNV,CmdDrawMeshTasksIndirectCountNV,vkCmdDrawMeshTasksIndirectEXT,vkCmdDrawMeshTasksIndirectCountEXT,CmdDrawClusterIndirectHUAWEI, orCmdDispatchIndirect. It is also suitable for passing as thebuffermember ofVkIndirectCommandsStreamNV, orsequencesCountBufferorsequencesIndexBufferorpreprocessedBuffermember ofVkGeneratedCommandsInfoNVBUFFER_USAGE_2_CONDITIONAL_RENDERING_BIT_EXTspecifies that the buffer is suitable for passing as thebufferparameter toCmdBeginConditionalRenderingEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_BUFFER_BIT_EXTspecifies that the buffer is suitable for using for binding as a transform feedback buffer withCmdBindTransformFeedbackBuffersEXT.BUFFER_USAGE_2_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXTspecifies that the buffer is suitable for using as a counter buffer withCmdBeginTransformFeedbackEXTandCmdEndTransformFeedbackEXT.BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain sampler and combined image sampler descriptors when bound as a descriptor buffer. Buffers containing combined image sampler descriptors must also specifyBUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT.BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer is suitable to contain resource descriptors when bound as a descriptor buffer.BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXTspecifies that the buffer, when bound, can be used by the implementation to support push descriptors when using descriptor buffers.BUFFER_USAGE_2_RAY_TRACING_BIT_NVspecifies that the buffer is suitable for use inCmdTraceRaysNV.BUFFER_USAGE_2_SHADER_BINDING_TABLE_BIT_KHRspecifies that the buffer is suitable for use as a Shader Binding Table.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHRspecifies that the buffer is suitable for use as a read-only input to an acceleration structure build.BUFFER_USAGE_2_ACCELERATION_STRUCTURE_STORAGE_BIT_KHRspecifies that the buffer is suitable for storage space for aVkAccelerationStructureKHR.BUFFER_USAGE_2_SHADER_DEVICE_ADDRESS_BIT_KHRspecifies that the buffer can be used to retrieve a buffer device address viaGetBufferDeviceAddressand use that address to access the buffer’s memory from a shader.BUFFER_USAGE_2_VIDEO_DECODE_SRC_BIT_KHRspecifies that the buffer can be used as the source video bitstream buffer in a video decode operation.BUFFER_USAGE_2_VIDEO_DECODE_DST_BIT_KHRis reserved for future use.BUFFER_USAGE_2_VIDEO_ENCODE_DST_BIT_KHRspecifies that the buffer can be used as the destination video bitstream buffer in a video encode operation.BUFFER_USAGE_2_VIDEO_ENCODE_SRC_BIT_KHRis reserved for future use.BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDXspecifies that the buffer can be used for as scratch memory for execution graph dispatch.
- See Also:
-
-
Method Details
-
vkCmdBindIndexBuffer2KHR
public static void vkCmdBindIndexBuffer2KHR(org.lwjgl.vulkan.VkCommandBuffer commandBuffer, long buffer, long offset, long size, int indexType) Bind an index buffer to a command buffer.C Specification
To bind an index buffer, along with its size, to a command buffer, call:
void vkCmdBindIndexBuffer2KHR( VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkDeviceSize size, VkIndexType indexType);Description
sizespecifies the bound size of the index buffer starting fromoffset. IfsizeisWHOLE_SIZEthen the bound size is fromoffsetto the end of thebuffer.If the
maintenance6feature is enabled,buffercan beNULL_HANDLE. IfbufferisNULL_HANDLEand thenullDescriptorfeature is enabled, every index fetched results in a value of zero.Valid Usage
offsetmust be less than the size ofbuffer- The sum of
offsetand the base address of the range ofVkDeviceMemoryobject that is backingbuffer, must be a multiple of the size of the type indicated byindexType buffermust have been created with theBUFFER_USAGE_INDEX_BUFFER_BITflag- If
bufferis non-sparse then it must be bound completely and contiguously to a singleVkDeviceMemoryobject indexTypemust not beINDEX_TYPE_NONE_KHR- If
indexTypeisINDEX_TYPE_UINT8_KHR, theindexTypeUint8feature must be enabled - If
maintenance6is not enabled,buffermust not beNULL_HANDLE - If
bufferisNULL_HANDLE, offset must be zero - If
sizeis notWHOLE_SIZE,sizemust be a multiple of the size of the type indicated byindexType - If
sizeis notWHOLE_SIZE, the sum ofoffsetandsizemust be less than or equal to the size ofbuffer
Valid Usage (Implicit)
commandBuffermust be a validVkCommandBufferhandle- If
bufferis notNULL_HANDLE,buffermust be a validVkBufferhandle indexTypemust be a validVkIndexTypevaluecommandBuffermust be in the recording state- The
VkCommandPoolthatcommandBufferwas allocated from must support graphics operations - This command must only be called outside of a video coding scope
- Both of
buffer, andcommandBufferthat are valid handles of non-ignored parameters must have been created, allocated, or retrieved from the sameVkDevice
Host Synchronization
- Host access to
commandBuffermust be externally synchronized - Host access to the
VkCommandPoolthatcommandBufferwas allocated from must be externally synchronized
Command Properties
Command Buffer Levels Render Pass Scope Video Coding Scope Supported Queue Types Command Type Primary Secondary Both Outside Graphics State - Parameters:
commandBuffer- the command buffer into which the command is recorded.buffer- the buffer being bound.offset- the starting offset in bytes withinbufferused in index buffer address calculations.size- the size in bytes of index data bound frombuffer.indexType- aVkIndexTypevalue specifying the size of the indices.
-
nvkGetRenderingAreaGranularityKHR
public static void nvkGetRenderingAreaGranularityKHR(org.lwjgl.vulkan.VkDevice device, long pRenderingAreaInfo, long pGranularity) Unsafe version of:GetRenderingAreaGranularityKHR -
vkGetRenderingAreaGranularityKHR
public static void vkGetRenderingAreaGranularityKHR(org.lwjgl.vulkan.VkDevice device, VkRenderingAreaInfoKHR pRenderingAreaInfo, VkExtent2D pGranularity) Returns the granularity for dynamic rendering optimal render area.C Specification
To query the render area granularity for a render pass instance, call:
void vkGetRenderingAreaGranularityKHR( VkDevice device, const VkRenderingAreaInfoKHR* pRenderingAreaInfo, VkExtent2D* pGranularity);Description
The conditions leading to an optimal
renderAreaare:- the
offset.xmember inrenderAreais a multiple of thewidthmember of the returnedVkExtent2D(the horizontal granularity). - the
offset.ymember inrenderAreais a multiple of theheightmember of the returnedVkExtent2D(the vertical granularity). - either the
extent.widthmember inrenderAreais a multiple of the horizontal granularity oroffset.x+extent.widthis equal to thewidthof each attachment used in the render pass instance. - either the
extent.heightmember inrenderAreais a multiple of the vertical granularity oroffset.y+extent.heightis equal to theheightof each attachment used in the render pass instance.
Valid Usage (Implicit)
devicemust be a validVkDevicehandlepRenderingAreaInfomust be a valid pointer to a validVkRenderingAreaInfoKHRstructurepGranularitymust be a valid pointer to aVkExtent2Dstructure
See Also
- Parameters:
device- the logical device that owns the render pass instance.pRenderingAreaInfo- a pointer to aVkRenderingAreaInfoKHRstructure specifying details of the render pass instance to query the render area granularity for.pGranularity- a pointer to aVkExtent2Dstructure in which the granularity is returned.
- the
-
nvkGetDeviceImageSubresourceLayoutKHR
public static void nvkGetDeviceImageSubresourceLayoutKHR(org.lwjgl.vulkan.VkDevice device, long pInfo, long pLayout) Unsafe version of:GetDeviceImageSubresourceLayoutKHR -
vkGetDeviceImageSubresourceLayoutKHR
public static void vkGetDeviceImageSubresourceLayoutKHR(org.lwjgl.vulkan.VkDevice device, VkDeviceImageSubresourceInfoKHR pInfo, VkSubresourceLayout2KHR pLayout) Retrieve information about an image subresource without an image object.C Specification
To query the memory layout of an image subresource, without an image object, call:
void vkGetDeviceImageSubresourceLayoutKHR( VkDevice device, const VkDeviceImageSubresourceInfoKHR* pInfo, VkSubresourceLayout2KHR* pLayout);Description
vkGetDeviceImageSubresourceLayoutKHRbehaves similarly toGetImageSubresourceLayout2KHR, but uses aVkImageCreateInfostructure to specify the image rather than aVkImageobject.Valid Usage (Implicit)
devicemust be a validVkDevicehandlepInfomust be a valid pointer to a validVkDeviceImageSubresourceInfoKHRstructurepLayoutmust be a valid pointer to aVkSubresourceLayout2KHRstructure
See Also
- Parameters:
device- the logical device that owns the image.pInfo- a pointer to aVkDeviceImageSubresourceInfoKHRstructure containing parameters required for the subresource layout query.pLayout- a pointer to aVkSubresourceLayout2KHRstructure in which the layout is returned.
-
nvkGetImageSubresourceLayout2KHR
public static void nvkGetImageSubresourceLayout2KHR(org.lwjgl.vulkan.VkDevice device, long image, long pSubresource, long pLayout) Unsafe version of:GetImageSubresourceLayout2KHR -
vkGetImageSubresourceLayout2KHR
public static void vkGetImageSubresourceLayout2KHR(org.lwjgl.vulkan.VkDevice device, long image, VkImageSubresource2KHR pSubresource, VkSubresourceLayout2KHR pLayout) Retrieve information about an image subresource.C Specification
To query the memory layout of an image subresource, call:
void vkGetImageSubresourceLayout2KHR( VkDevice device, VkImage image, const VkImageSubresource2KHR* pSubresource, VkSubresourceLayout2KHR* pLayout);or the equivalent command
void vkGetImageSubresourceLayout2EXT( VkDevice device, VkImage image, const VkImageSubresource2KHR* pSubresource, VkSubresourceLayout2KHR* pLayout);Description
vkGetImageSubresourceLayout2KHRbehaves similarly toGetImageSubresourceLayout, with the ability to specify extended inputs via chained input structures, and to return extended information via chained output structures.It is legal to call
vkGetImageSubresourceLayout2KHRwith animagecreated withtilingequal toIMAGE_TILING_OPTIMAL, but the members ofVkSubresourceLayout2KHR::subresourceLayoutwill have undefined values in this case.Note
Structures chained from
VkImageSubresource2KHR::pNextwill also be updated whentilingis equal toIMAGE_TILING_OPTIMAL.Valid Usage
- The
aspectMaskmember ofpSubresourcemust only have a single bit set - The
mipLevelmember ofpSubresourcemust be less than themipLevelsspecified inimage - The
arrayLayermember ofpSubresourcemust be less than thearrayLayersspecified inimage - If
formatof theimageis a color format that is not a multi-planar image format, andtilingof theimageisIMAGE_TILING_LINEARorIMAGE_TILING_OPTIMAL, theaspectMaskmember ofpSubresourcemust beIMAGE_ASPECT_COLOR_BIT - If
formatof theimagehas a depth component, theaspectMaskmember ofpSubresourcemust containIMAGE_ASPECT_DEPTH_BIT - If
formatof theimagehas a stencil component, theaspectMaskmember ofpSubresourcemust containIMAGE_ASPECT_STENCIL_BIT - If
formatof theimagedoes not contain a stencil or depth component, theaspectMaskmember ofpSubresourcemust not containIMAGE_ASPECT_DEPTH_BITorIMAGE_ASPECT_STENCIL_BIT - If the
tilingof theimageisIMAGE_TILING_LINEARand has a multi-planar image format, then theaspectMaskmember ofpSubresourcemust be a single valid multi-planar aspect mask bit - If
imagewas created with theEXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROIDexternal memory handle type, thenimagemust be bound to memory - If the
tilingof theimageisIMAGE_TILING_DRM_FORMAT_MODIFIER_EXT, then theaspectMaskmember ofpSubresourcemust beVK_IMAGE_ASPECT_MEMORY_PLANE_i_BIT_EXTand the index i must be less than theVkDrmFormatModifierPropertiesEXT::drmFormatModifierPlaneCountassociated with the image’sformatandVkImageDrmFormatModifierPropertiesEXT::drmFormatModifier
Valid Usage (Implicit)
devicemust be a validVkDevicehandleimagemust be a validVkImagehandlepSubresourcemust be a valid pointer to a validVkImageSubresource2KHRstructurepLayoutmust be a valid pointer to aVkSubresourceLayout2KHRstructureimagemust have been created, allocated, or retrieved fromdevice
See Also
- Parameters:
device- the logical device that owns the image.image- the image whose layout is being queried.pSubresource- a pointer to aVkImageSubresource2KHRstructure selecting a specific image for the image subresource.pLayout- a pointer to aVkSubresourceLayout2KHRstructure in which the layout is returned.
- The
-