org.lwjgl.vulkan.KHRShaderTerminateInvocation Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of lwjgl-vulkan Show documentation
Show all versions of lwjgl-vulkan Show documentation
A new generation graphics and compute API that provides high-efficiency, cross-platform access to modern GPUs used in a wide variety of devices from PCs and consoles to mobile phones and embedded platforms.
/*
* Copyright LWJGL. All rights reserved.
* License terms: https://www.lwjgl.org/license
* MACHINE GENERATED FILE, DO NOT EDIT
*/
package org.lwjgl.vulkan;
/**
* This extension adds Vulkan support for the {@code SPV_KHR_terminate_invocation} SPIR-V extension. That SPIR-V extension provides a new instruction, {@code 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 {@code OpTerminateInvocation} instruction, along with the {@code OpDemoteToHelperInvocation} instruction from the {@link EXTShaderDemoteToHelperInvocation VK_EXT_shader_demote_to_helper_invocation} extension, together replace the {@code OpKill} instruction, which could behave like either of these instructions. {@code OpTerminateInvocation} provides the behavior required by the GLSL {@code discard} statement, and should be used when available by GLSL compilers and applications that need the GLSL {@code discard} behavior.
*
* VK_KHR_shader_terminate_invocation
*
*
* - Name String
* - {@code VK_KHR_shader_terminate_invocation}
* - Extension Type
* - Device extension
* - Registered Extension Number
* - 216
* - Revision
* - 1
* - Extension and Version Dependencies
*
* - Requires Vulkan 1.0
* - Requires {@link KHRGetPhysicalDeviceProperties2 VK_KHR_get_physical_device_properties2}
*
* - Contact
*
* - Jesse Hall critsec
*
*
*
* Other Extension Metadata
*
*
* - Last Modified Date
* - 2020-08-11
* - IP Status
* - No known IP claims.
* - Interactions and External Dependencies
*
* - Requires the {@code SPV_KHR_terminate_invocation} SPIR-V extension.
*
* - Contributors
*
* - Alan Baker, Google
* - Jeff Bolz, NVIDIA
* - Jesse Hall, Google
* - Ralph Potter, Samsung
* - Tom Olson, Arm
*
*
*/
public final class KHRShaderTerminateInvocation {
/** The extension specification version. */
public static final int VK_KHR_SHADER_TERMINATE_INVOCATION_SPEC_VERSION = 1;
/** The extension name. */
public static final String VK_KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME = "VK_KHR_shader_terminate_invocation";
/** Extends {@code VkStructureType}. */
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR = 1000215000;
private KHRShaderTerminateInvocation() {}
}