org.lwjgl.vulkan.NVFragmentShaderBarycentric 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 support for the following SPIR-V extension in Vulkan:
*
*
*
* The extension provides access to three additional fragment shader variable decorations in SPIR-V:
*
*
* - {@code PerVertexNV}, which indicates that a fragment shader input will not have interpolated values, but instead must be accessed with an extra array index that identifies one of the vertices of the primitive producing the fragment
* - {@code BaryCoordNV}, which indicates that the variable is a three-component floating-point vector holding barycentric weights for the fragment produced using perspective interpolation
* - {@code BaryCoordNoPerspNV}, which indicates that the variable is a three-component floating-point vector holding barycentric weights for the fragment produced using linear interpolation
*
*
* When using GLSL source-based shader languages, the following variables from {@code GL_NV_fragment_shader_barycentric} maps to these SPIR-V built-in decorations:
*
*
* - {@code in vec3 gl_BaryCoordNV;} → {@code BaryCoordNV}
* - {@code in vec3 gl_BaryCoordNoPerspNV;} → {@code BaryCoordNoPerspNV}
*
*
* GLSL variables declared using the {@code __pervertexNV} GLSL qualifier are expected to be decorated with {@code PerVertexNV} in SPIR-V.
*
* VK_NV_fragment_shader_barycentric
*
*
* - Name String
* - {@code VK_NV_fragment_shader_barycentric}
* - Extension Type
* - Device extension
* - Registered Extension Number
* - 204
* - 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-08-03
* - IP Status
* - No known IP claims.
* - Interactions and External Dependencies
*
* - This extension requires {@code SPV_NV_fragment_shader_barycentric}
* - This extension provides API support for {@code GL_NV_fragment_shader_barycentric}
*
* - Contributors
*
* - Pat Brown, NVIDIA
* - Daniel Koch, NVIDIA
*
*
*/
public final class NVFragmentShaderBarycentric {
/** The extension specification version. */
public static final int VK_NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION = 1;
/** The extension name. */
public static final String VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME = "VK_NV_fragment_shader_barycentric";
/** Extends {@code VkStructureType}. */
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV = 1000203000;
private NVFragmentShaderBarycentric() {}
}