org.lwjgl.vulkan.NVComputeShaderDerivatives 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_NV_compute_shader_derivatives} SPIR-V extension.
*
* The SPIR-V extension provides two new execution modes, both of which allow compute shaders to use built-ins that evaluate compute derivatives explicitly or implicitly. Derivatives will be computed via differencing over a 2x2 group of shader invocations. The {@code DerivativeGroupQuadsNV} execution mode assembles shader invocations into 2x2 groups, where each group has x and y coordinates of the local invocation ID of the form (2m+{0,1}, 2n+{0,1}). The {@code DerivativeGroupLinearNV} execution mode assembles shader invocations into 2x2 groups, where each group has local invocation index values of the form 4m+{0,1,2,3}.
*
* Examples
*
* None.
*
* VK_NV_compute_shader_derivatives
*
*
* - Name String
* - {@code VK_NV_compute_shader_derivatives}
* - Extension Type
* - Device extension
* - Registered Extension Number
* - 202
* - Revision
* - 1
* - Extension and Version Dependencies
*
* - Requires Vulkan 1.0
* - Requires {@link KHRGetPhysicalDeviceProperties2 VK_KHR_get_physical_device_properties2}
*
* - Contact
*
* - Pat Brown nvpbrown
*
*
*
* Other Extension Metadata
*
*
* - Last Modified Date
* - 2018-07-19
* - IP Status
* - No known IP claims.
* - Interactions and External Dependencies
*
* - This extension requires {@code SPV_NV_compute_shader_derivatives}
* - This extension provides API support for {@code GL_NV_compute_shader_derivatives}
*
* - Contributors
*
* - Pat Brown, NVIDIA
*
*
*/
public final class NVComputeShaderDerivatives {
/** The extension specification version. */
public static final int VK_NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION = 1;
/** The extension name. */
public static final String VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME = "VK_NV_compute_shader_derivatives";
/** Extends {@code VkStructureType}. */
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV = 1000201000;
private NVComputeShaderDerivatives() {}
}