vulkan-3.23: Bindings to the Vulkan graphics API.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Vulkan.Extensions.VK_KHR_shader_terminate_invocation

Description

Name

VK_KHR_shader_terminate_invocation - device extension

VK_KHR_shader_terminate_invocation

Name String
VK_KHR_shader_terminate_invocation
Extension Type
Device extension
Registered Extension Number
216
Revision
1
Extension and Version Dependencies
  • Requires support for Vulkan 1.0
  • Requires VK_KHR_get_physical_device_properties2 to be enabled for any device-level functionality
Deprecation state
Contact

Other Extension Metadata

Last Modified Date
2020-08-11
Interactions and External Dependencies
IP Status
No known IP claims.
Contributors
  • Alan Baker, Google
  • Jeff Bolz, NVIDIA
  • Jesse Hall, Google
  • Ralph Potter, Samsung
  • Tom Olson, Arm

Description

This extension adds Vulkan support for the SPV_KHR_terminate_invocation SPIR-V extension. That SPIR-V extension provides a new instruction, OpTerminateInvocation, which causes a shader invocation to immediately terminate and sets the coverage of shaded samples to 0; only previously executed instructions will have observable effects. The OpTerminateInvocation instruction, along with the OpDemoteToHelperInvocation instruction from the VK_EXT_shader_demote_to_helper_invocation extension, together replace the OpKill instruction, which could behave like either of these instructions. OpTerminateInvocation provides the behavior required by the GLSL discard statement, and should be used when available by GLSL compilers and applications that need the GLSL discard behavior.

New Structures

New Enum Constants

Promotion to Vulkan 1.3

Functionality in this extension is included in core Vulkan 1.3, with the KHR suffix omitted. The original type, enum and command names are still available as aliases of the core functionality.

Version History

  • Revision 1, 2020-08-11 (Jesse Hall)

See Also

PhysicalDeviceShaderTerminateInvocationFeaturesKHR

Document Notes

For more information, see the Vulkan Specification

This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.

Documentation

type KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME = "VK_KHR_shader_terminate_invocation" Source #