Top Description Fields Constructors Methods
org.lwjgl.vulkan

public Class EXTMeshShader

extends Object
Class Inheritance
Imports
org.lwjgl.system.*

This extension provides a new mechanism allowing applications to generate collections of geometric primitives via programmable mesh shading. It is an alternative to the existing programmable primitive shading pipeline, which relied on generating input primitives by a fixed function assembler as well as fixed function vertex fetch.

This extension also adds support for the following SPIR-V extension in Vulkan:

VK_EXT_mesh_shader
Name String
VK_EXT_mesh_shader
Extension Type
Device extension
Registered Extension Number
329
Revision
1
Extension and Version Dependencies
VK_KHR_spirv_1_4
Contact
Extension Proposal
VK_EXT_mesh_shader
Other Extension Metadata
Last Modified Date
2022-01-20
Interactions and External Dependencies
Contributors
  • Christoph Kubisch, NVIDIA
  • Pat Brown, NVIDIA
  • Jeff Bolz, NVIDIA
  • Daniel Koch, NVIDIA
  • Piers Daniell, NVIDIA
  • Pierre Boudier, NVIDIA
  • Patrick Mours, NVIDIA
  • David Zhao Akeley, NVIDIA
  • Kedarnath Thangudu, NVIDIA
  • Timur Kristóf, Valve
  • Hans-Kristian Arntzen, Valve
  • Philip Rebohle, Valve
  • Mike Blumenkrantz, Valve
  • Slawomir Grajewski, Intel
  • Michal Pietrasiuk, Intel
  • Mariusz Merecki, Intel
  • Tom Olson, ARM
  • Jan-Harald Fredriksen, ARM
  • Sandeep Kakarlapudi, ARM
  • Ruihao Zhang, QUALCOMM
  • Ricardo Garcia, Igalia, S.L.
  • Tobias Hector, AMD
  • Stu Smith, AMD

Field Summary

Modifier and TypeField and Description
public static final String
public static final int
VK_EXT_MESH_SHADER_SPEC_VERSION

The extension specification version.

public static final int
VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_MESH_TASKS_NV

Extends VkIndirectCommandsTokenTypeNV.

public static final int
VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT

Extends VkPipelineStageFlagBits.

public static final int
VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT

Extends VkPipelineStageFlagBits.

public static final int
VK_QUERY_PIPELINE_STATISTIC_MESH_SHADER_INVOCATIONS_BIT_EXT

Extends VkQueryPipelineStatisticFlagBits.

public static final int
VK_QUERY_PIPELINE_STATISTIC_TASK_SHADER_INVOCATIONS_BIT_EXT

Extends VkQueryPipelineStatisticFlagBits.

public static final int
public static final int
VK_SHADER_STAGE_MESH_BIT_EXT

Extends VkShaderStageFlagBits.

public static final int
VK_SHADER_STAGE_TASK_BIT_EXT

Extends VkShaderStageFlagBits.

public static final int
public static final int

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public static void
vkCmdDrawMeshTasksEXT(VkCommandBuffer
the command buffer into which the command will be recorded.
commandBuffer
,
int
the number of local workgroups to dispatch in the X dimension.
groupCountX
,
int
the number of local workgroups to dispatch in the Y dimension.
groupCountY
,
int
the number of local workgroups to dispatch in the Z dimension.
groupCountZ
)

Draw mesh task work items.

public static void
vkCmdDrawMeshTasksIndirectCountEXT(VkCommandBuffer
the command buffer into which the command is recorded.
commandBuffer
,
long
the buffer containing draw parameters.
buffer
,
long
the byte offset into buffer where parameters begin.
offset
,
long
the buffer containing the draw count.
countBuffer
,
long
the byte offset into countBuffer where the draw count begins.
countBufferOffset
,
int
specifies the maximum number of draws that will be executed. The actual number of executed draw calls is the minimum of the count specified in countBuffer and maxDrawCount.
maxDrawCount
,
int
the byte stride between successive sets of draw parameters.
stride
)

Perform an indirect mesh tasks draw with the draw count sourced from a buffer.

public static void
vkCmdDrawMeshTasksIndirectEXT(VkCommandBuffer
the command buffer into which the command is recorded.
commandBuffer
,
long
the buffer containing draw parameters.
buffer
,
long
the byte offset into buffer where parameters begin.
offset
,
int
the number of draws to execute, and can be zero.
drawCount
,
int
the byte stride between successive sets of draw parameters.
stride
)

Issue an indirect mesh tasks draw into a command buffer.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait