Class KHRShaderDrawParameters

java.lang.Object
org.lwjgl.vulkan.KHRShaderDrawParameters

public final class KHRShaderDrawParameters extends Object
This extension adds support for the following SPIR-V extension in Vulkan:
  • SPV_KHR_shader_draw_parameters

The extension provides access to three additional built-in shader variables in Vulkan:

  • BaseInstance, containing the firstInstance parameter passed to drawing commands,
  • BaseVertex, containing the firstVertex or vertexOffset parameter passed to drawing commands, and
  • DrawIndex, containing the index of the draw call currently being processed from an indirect drawing call.

When using GLSL source-based shader languages, the following variables from GL_ARB_shader_draw_parameters can map to these SPIR-V built-in decorations:

  • in int gl_BaseInstanceARB;BaseInstance,
  • in int gl_BaseVertexARB;BaseVertex, and
  • in int gl_DrawIDARB;DrawIndex.
Promotion to Vulkan 1.1

All functionality in this extension is included in core Vulkan 1.1. However, the shaderDrawParameters feature bit was added to distinguish whether it is actually available or not.

Name String
VK_KHR_shader_draw_parameters
Extension Type
Device extension
Registered Extension Number
64
Revision
1
SPIR-V Dependencies
Deprecation State
Contact
Other Extension Metadata
Last Modified Date
2017-09-05
IP Status
No known IP claims.
Interactions and External Dependencies
Contributors
  • Daniel Koch, NVIDIA Corporation
  • Jeff Bolz, NVIDIA
  • Daniel Rakos, AMD
  • Jan-Harald Fredriksen, ARM
  • John Kessenich, Google
  • Stuart Smith, IMG
  • Field Details

    • VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION

      public static final int VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION
      The extension specification version.
      See Also:
    • VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME

      public static final String VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME
      The extension name.
      See Also: