Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
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
- Ratification Status
- Ratified
- Extension and Version Dependencies
- VK_KHR_get_physical_device_properties2 or Version 1.1
- Deprecation State
- Promoted to Vulkan 1.3
- Contact
Other Extension Metadata
- Last Modified Date
- 2020-08-11
- Interactions and External Dependencies
- Promoted to Vulkan 1.3 Core
- Requires the SPV_KHR_terminate_invocation SPIR-V extension.
- 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
Extending
PhysicalDeviceFeatures2
,DeviceCreateInfo
:
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
pattern STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR :: StructureType Source #
type PhysicalDeviceShaderTerminateInvocationFeaturesKHR = PhysicalDeviceShaderTerminateInvocationFeatures Source #
pattern KHR_SHADER_TERMINATE_INVOCATION_SPEC_VERSION :: forall a. Integral a => a Source #
type KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME = "VK_KHR_shader_terminate_invocation" Source #
pattern KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #