Class KHRFragmentShaderBarycentric

java.lang.Object
org.lwjgl.vulkan.KHRFragmentShaderBarycentric

public final class KHRFragmentShaderBarycentric extends Object
This extension is based on the VK_NV_fragment_shader_barycentric extension, and adds support for the following SPIR-V extension in Vulkan:

The extension provides access to three additional fragment shader variable decorations in SPIR-V:

  • PerVertexKHR, which indicates that a fragment shader input will not have interpolated values, but instead must be accessed with an extra array index that identifies one of the vertices of the primitive producing the fragment
  • BaryCoordKHR, which indicates that the variable is a three-component floating-point vector holding barycentric weights for the fragment produced using perspective interpolation
  • BaryCoordNoPerspKHR, which indicates that the variable is a three-component floating-point vector holding barycentric weights for the fragment produced using linear interpolation

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

  • in vec3 gl_BaryCoordEXT;BaryCoordKHR
  • in vec3 gl_BaryCoordNoPerspEXT;BaryCoordNoPerspKHR

GLSL variables declared using the pervertexEXT GLSL qualifier are expected to be decorated with PerVertexKHR in SPIR-V.

Name String
VK_KHR_fragment_shader_barycentric
Extension Type
Device extension
Registered Extension Number
323
Revision
1
Extension and Version Dependencies
VK_KHR_get_physical_device_properties2 or Version 1.1
SPIR-V Dependencies
Contact
  • Stu Smith
Extension Proposal
VK_KHR_fragment_shader_barycentric
Other Extension Metadata
Last Modified Date
2022-03-10
IP Status
No known IP claims.
Interactions and External Dependencies
Contributors
  • Stu Smith, AMD
  • Tobias Hector, AMD
  • Graeme Leese, Broadcom
  • Jan-Harald Fredriksen, Arm
  • Slawek Grajewski, Intel
  • Pat Brown, NVIDIA
  • Hans-Kristian Arntzen, Valve
  • Contributors to the VK_NV_fragment_shader_barycentric specification