org.lwjgl.vulkan.EXTShaderDemoteToHelperInvocation 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_EXT_demote_to_helper_invocation} SPIR-V extension. That SPIR-V extension provides a new instruction {@code OpDemoteToHelperInvocationEXT} allowing shaders to “{@code demote}” a fragment shader invocation to behave like a helper invocation for its duration. The demoted invocation will have no further side effects and will not output to the framebuffer, but remains active and can participate in computing derivatives and in group operations. This is a better match for the “{@code discard}” instruction in HLSL.
*
* VK_EXT_shader_demote_to_helper_invocation
*
*
* - Name String
* - {@code VK_EXT_shader_demote_to_helper_invocation}
* - Extension Type
* - Device extension
* - Registered Extension Number
* - 277
* - Revision
* - 1
* - Extension and Version Dependencies
*
* - Requires Vulkan 1.0
* - Requires {@link KHRGetPhysicalDeviceProperties2 VK_KHR_get_physical_device_properties2}
*
* - Contact
*
* - Jeff Bolz jeffbolznv
*
*
*
* Other Extension Metadata
*
*
* - Last Modified Date
* - 2019-06-01
* - IP Status
* - No known IP claims.
* - Interactions and External Dependencies
*
* - This extension requires {@code SPV_EXT_demote_to_helper_invocation}
*
* - Contributors
*
* - Jeff Bolz, NVIDIA
*
*
*/
public final class EXTShaderDemoteToHelperInvocation {
/** The extension specification version. */
public static final int VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION = 1;
/** The extension name. */
public static final String VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME = "VK_EXT_shader_demote_to_helper_invocation";
/** Extends {@code VkStructureType}. */
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT = 1000276000;
private EXTShaderDemoteToHelperInvocation() {}
}