Package org.lwjgl.vulkan
Class KHRDrawIndirectCount
java.lang.Object
org.lwjgl.vulkan.KHRDrawIndirectCount
This extension is based off the
VK_AMD_draw_indirect_count
extension. This extension allows an application to source the number of draws for indirect drawing calls from a buffer.
Applications might want to do culling on the GPU via a compute shader prior to drawing. This enables the application to generate an arbitrary number of drawing commands and execute them without host intervention.
Promotion to Vulkan 1.2
All functionality in this extension is included in core Vulkan 1.2, with the KHR suffix omitted. However, if Vulkan 1.2 is supported and this extension is not, the entry points CmdDrawIndirectCount
and CmdDrawIndexedIndirectCount
are optional. The original type, enum and command names are still available as aliases of the core functionality.
VK_KHR_draw_indirect_count
- Name String
VK_KHR_draw_indirect_count
- Extension Type
- Device extension
- Registered Extension Number
- 170
- Revision
- 1
- Deprecation State
- Promoted to Vulkan 1.2
- Contact
- Piers Daniell pdaniell-nv
Other Extension Metadata
- Last Modified Date
- 2017-08-25
- Interactions and External Dependencies
- Promoted to Vulkan 1.2 Core
- IP Status
- No known IP claims.
- Contributors
- Matthaeus G. Chajdas, AMD
- Derrick Owens, AMD
- Graham Sellers, AMD
- Daniel Rakos, AMD
- Dominik Witczak, AMD
- Piers Daniell, NVIDIA
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
The extension name.static final int
The extension specification version. -
Method Summary
Modifier and TypeMethodDescriptionstatic void
vkCmdDrawIndexedIndirectCountKHR
(VkCommandBuffer commandBuffer, long buffer, long offset, long countBuffer, long countBufferOffset, int maxDrawCount, int stride) static void
vkCmdDrawIndirectCountKHR
(VkCommandBuffer commandBuffer, long buffer, long offset, long countBuffer, long countBufferOffset, int maxDrawCount, int stride) SeeCmdDrawIndirectCount
.
-
Field Details
-
VK_KHR_DRAW_INDIRECT_COUNT_SPEC_VERSION
public static final int VK_KHR_DRAW_INDIRECT_COUNT_SPEC_VERSIONThe extension specification version.- See Also:
-
VK_KHR_DRAW_INDIRECT_COUNT_EXTENSION_NAME
The extension name.- See Also:
-
-
Method Details
-
vkCmdDrawIndirectCountKHR
public static void vkCmdDrawIndirectCountKHR(VkCommandBuffer commandBuffer, long buffer, long offset, long countBuffer, long countBufferOffset, int maxDrawCount, int stride) SeeCmdDrawIndirectCount
.- Parameters:
commandBuffer
- the command buffer into which the command is recorded.buffer
- the buffer containing draw parameters.offset
- the byte offset intobuffer
where parameters begin.countBuffer
- the buffer containing the draw count.countBufferOffset
- the byte offset intocountBuffer
where the draw count begins.maxDrawCount
- specifies the maximum number of draws that will be executed. The actual number of executed draw calls is the minimum of the count specified incountBuffer
andmaxDrawCount
.stride
- the byte stride between successive sets of draw parameters.
-
vkCmdDrawIndexedIndirectCountKHR
public static void vkCmdDrawIndexedIndirectCountKHR(VkCommandBuffer commandBuffer, long buffer, long offset, long countBuffer, long countBufferOffset, int maxDrawCount, int stride) - Parameters:
commandBuffer
- the command buffer into which the command is recorded.buffer
- the buffer containing draw parameters.offset
- the byte offset intobuffer
where parameters begin.countBuffer
- the buffer containing the draw count.countBufferOffset
- the byte offset intocountBuffer
where the draw count begins.maxDrawCount
- specifies the maximum number of draws that will be executed. The actual number of executed draw calls is the minimum of the count specified incountBuffer
andmaxDrawCount
.stride
- the byte stride between successive sets of draw parameters.
-