Class EXTTextureInteger
- java.lang.Object
-
- org.lwjgl.opengl.EXTTextureInteger
-
public class EXTTextureInteger extends java.lang.Object
Native bindings to the EXT_texture_integer extension.Fixed-point textures in unextended OpenGL have integer components, but those values are taken to represent floating-point values in the range [0,1]. These integer components are considered "normalized" integers. When such a texture is accessed by a shader or by fixed-function fragment processing, floating-point values are returned.
This extension provides a set of new "unnormalized" integer texture formats. Formats with both signed and unsigned integers are provided. In these formats, the components are treated as true integers. When such textures are accessed by a shader, actual integer values are returned.
Pixel operations that read from or write to a texture or color buffer with unnormalized integer components follow a path similar to that used for color index pixel operations, except that more than one component may be provided at once. Integer values flow through the pixel processing pipe, and no pixel transfer operations are performed. Integer format enumerants used for such operations indicate unnormalized integer data.
Textures or render buffers with unnormalized integer formats may also be attached to framebuffer objects to receive fragment color values written by a fragment shader. Per-fragment operations that require floating-point color components, including multisample alpha operations, alpha test, blending, and dithering, have no effect when the corresponding colors are written to an integer color buffer. The NV_gpu_program4 and EXT_gpu_shader4 extensions add the capability to fragment programs and fragment shaders to write signed and unsigned integer output values.
This extension does not enforce type consistency for texture accesses or between fragment shaders and the corresponding framebuffer attachments. The results of a texture lookup from an integer texture are undefined:
- for fixed-function fragment processing, or
- for shader texture accesses expecting floating-point return values.
The color components used for per-fragment operations and written into a color buffer are undefined:
- for fixed-function fragment processing with an integer color buffer,
- for fragment shaders that write floating-point color components to an integer color buffer, or
- for fragment shaders that write integer color components to a color buffer with floating point or normalized integer components.
Requires
OpenGL 2.0
and NV_gpu_program4 or EXT_gpu_shader4. Promoted to core inOpenGL 3.0
.
-
-
Field Summary
Fields Modifier and Type Field and Description static int
GL_ALPHA_INTEGER_EXT
Accepted by theformat
parameter of TexImage1D, TexImage2D, TexImage3D, TexSubImage1D, TexSubImage2D, TexSubImage3D, DrawPixels and ReadPixels.static int
GL_ALPHA16I_EXT
GL_ALPHA16UI_EXT
GL_ALPHA32I_EXT
GL_ALPHA32UI_EXT
GL_ALPHA8I_EXT
GL_ALPHA8UI_EXTAccepted by theinternalFormat
parameter of TexImage1D, TexImage2D, and TexImage3D.static int
GL_BGR_INTEGER_EXT
GL_BGRA_INTEGER_EXT
GL_BLUE_INTEGER_EXT
GL_GREEN_INTEGER_EXTAccepted by theformat
parameter of TexImage1D, TexImage2D, TexImage3D, TexSubImage1D, TexSubImage2D, TexSubImage3D, DrawPixels and ReadPixels.static int
GL_INTENSITY16I_EXT
GL_INTENSITY16UI_EXT
GL_INTENSITY32I_EXT
GL_INTENSITY32UI_EXT
GL_INTENSITY8I_EXT
GL_INTENSITY8UI_EXTAccepted by theinternalFormat
parameter of TexImage1D, TexImage2D, and TexImage3D.static int
GL_LUMINANCE_ALPHA_INTEGER_EXT
Accepted by theformat
parameter of TexImage1D, TexImage2D, TexImage3D, TexSubImage1D, TexSubImage2D, TexSubImage3D, DrawPixels and ReadPixels.static int
GL_LUMINANCE_ALPHA16I_EXT
GL_LUMINANCE_ALPHA16UI_EXT
GL_LUMINANCE_ALPHA32I_EXT
GL_LUMINANCE_ALPHA32UI_EXT
GL_LUMINANCE_ALPHA8I_EXT
GL_LUMINANCE_ALPHA8UI_EXTAccepted by theinternalFormat
parameter of TexImage1D, TexImage2D, and TexImage3D.static int
GL_LUMINANCE_INTEGER_EXT
Accepted by theformat
parameter of TexImage1D, TexImage2D, TexImage3D, TexSubImage1D, TexSubImage2D, TexSubImage3D, DrawPixels and ReadPixels.static int
GL_LUMINANCE16I_EXT
GL_LUMINANCE16UI_EXT
GL_LUMINANCE32I_EXT
GL_LUMINANCE32UI_EXT
GL_LUMINANCE8I_EXT
GL_LUMINANCE8UI_EXTAccepted by theinternalFormat
parameter of TexImage1D, TexImage2D, and TexImage3D.static int
GL_RED_INTEGER_EXT
GL_RGB_INTEGER_EXTAccepted by theformat
parameter of TexImage1D, TexImage2D, TexImage3D, TexSubImage1D, TexSubImage2D, TexSubImage3D, DrawPixels and ReadPixels.static int
GL_RGB16I_EXT
GL_RGB16UI_EXT
GL_RGB32I_EXT
GL_RGB32UI_EXT
GL_RGB8I_EXT
GL_RGB8UI_EXTAccepted by theinternalFormat
parameter of TexImage1D, TexImage2D, and TexImage3D.static int
GL_RGBA_INTEGER_EXT
Accepted by theformat
parameter of TexImage1D, TexImage2D, TexImage3D, TexSubImage1D, TexSubImage2D, TexSubImage3D, DrawPixels and ReadPixels.static int
GL_RGBA_INTEGER_MODE_EXT
Accepted by thepname
parameters of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev.static int
GL_RGBA16I_EXT
GL_RGBA16UI_EXT
GL_RGBA32I_EXT
GL_RGBA32UI_EXT
GL_RGBA8I_EXT
GL_RGBA8UI_EXTAccepted by theinternalFormat
parameter of TexImage1D, TexImage2D, and TexImage3D.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static void
glClearColorIiEXT(int r, int g, int b, int a)
static void
glClearColorIuiEXT(int r, int g, int b, int a)
static int
glGetTexParameterIiEXT(int target, int pname)
static void
glGetTexParameterIivEXT(int target, int pname, int[] params)
Array version of:GetTexParameterIivEXT
static void
glGetTexParameterIivEXT(int target, int pname, java.nio.IntBuffer params)
static int
glGetTexParameterIuiEXT(int target, int pname)
static void
glGetTexParameterIuivEXT(int target, int pname, int[] params)
Array version of:GetTexParameterIuivEXT
static void
glGetTexParameterIuivEXT(int target, int pname, java.nio.IntBuffer params)
static void
glTexParameterIiEXT(int target, int pname, int param)
static void
glTexParameterIivEXT(int target, int pname, int[] params)
Array version of:TexParameterIivEXT
static void
glTexParameterIivEXT(int target, int pname, java.nio.IntBuffer params)
static void
glTexParameterIuiEXT(int target, int pname, int param)
static void
glTexParameterIuivEXT(int target, int pname, int[] params)
Array version of:TexParameterIuivEXT
static void
glTexParameterIuivEXT(int target, int pname, java.nio.IntBuffer params)
-
-
-
Field Detail
-
GL_RGBA_INTEGER_MODE_EXT
Accepted by thepname
parameters of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev.
-
GL_RGBA32UI_EXT, GL_RGB32UI_EXT, GL_ALPHA32UI_EXT, GL_INTENSITY32UI_EXT, GL_LUMINANCE32UI_EXT, GL_LUMINANCE_ALPHA32UI_EXT, GL_RGBA16UI_EXT, GL_RGB16UI_EXT, GL_ALPHA16UI_EXT, GL_INTENSITY16UI_EXT, GL_LUMINANCE16UI_EXT, GL_LUMINANCE_ALPHA16UI_EXT, GL_RGBA8UI_EXT, GL_RGB8UI_EXT, GL_ALPHA8UI_EXT, GL_INTENSITY8UI_EXT, GL_LUMINANCE8UI_EXT, GL_LUMINANCE_ALPHA8UI_EXT, GL_RGBA32I_EXT, GL_RGB32I_EXT, GL_ALPHA32I_EXT, GL_INTENSITY32I_EXT, GL_LUMINANCE32I_EXT, GL_LUMINANCE_ALPHA32I_EXT, GL_RGBA16I_EXT, GL_RGB16I_EXT, GL_ALPHA16I_EXT, GL_INTENSITY16I_EXT, GL_LUMINANCE16I_EXT, GL_LUMINANCE_ALPHA16I_EXT, GL_RGBA8I_EXT, GL_RGB8I_EXT, GL_ALPHA8I_EXT, GL_INTENSITY8I_EXT, GL_LUMINANCE8I_EXT, GL_LUMINANCE_ALPHA8I_EXT
Accepted by theinternalFormat
parameter of TexImage1D, TexImage2D, and TexImage3D.
-
GL_RED_INTEGER_EXT, GL_GREEN_INTEGER_EXT, GL_BLUE_INTEGER_EXT, GL_ALPHA_INTEGER_EXT, GL_RGB_INTEGER_EXT, GL_RGBA_INTEGER_EXT, GL_BGR_INTEGER_EXT, GL_BGRA_INTEGER_EXT, GL_LUMINANCE_INTEGER_EXT, GL_LUMINANCE_ALPHA_INTEGER_EXT
Accepted by theformat
parameter of TexImage1D, TexImage2D, TexImage3D, TexSubImage1D, TexSubImage2D, TexSubImage3D, DrawPixels and ReadPixels.
-
-
Method Detail
-
glClearColorIiEXT
public static void glClearColorIiEXT(int r, int g, int b, int a)
-
glClearColorIuiEXT
public static void glClearColorIuiEXT(int r, int g, int b, int a)
-
glTexParameterIivEXT
public static void glTexParameterIivEXT(int target, int pname, java.nio.IntBuffer params)
-
glTexParameterIiEXT
public static void glTexParameterIiEXT(int target, int pname, int param)
-
glTexParameterIuivEXT
public static void glTexParameterIuivEXT(int target, int pname, java.nio.IntBuffer params)
-
glTexParameterIuiEXT
public static void glTexParameterIuiEXT(int target, int pname, int param)
-
glGetTexParameterIivEXT
public static void glGetTexParameterIivEXT(int target, int pname, java.nio.IntBuffer params)
-
glGetTexParameterIiEXT
public static int glGetTexParameterIiEXT(int target, int pname)
-
glGetTexParameterIuivEXT
public static void glGetTexParameterIuivEXT(int target, int pname, java.nio.IntBuffer params)
-
glGetTexParameterIuiEXT
public static int glGetTexParameterIuiEXT(int target, int pname)
-
glTexParameterIivEXT
public static void glTexParameterIivEXT(int target, int pname, int[] params)
Array version of:TexParameterIivEXT
-
glTexParameterIuivEXT
public static void glTexParameterIuivEXT(int target, int pname, int[] params)
Array version of:TexParameterIuivEXT
-
glGetTexParameterIivEXT
public static void glGetTexParameterIivEXT(int target, int pname, int[] params)
Array version of:GetTexParameterIivEXT
-
glGetTexParameterIuivEXT
public static void glGetTexParameterIuivEXT(int target, int pname, int[] params)
Array version of:GetTexParameterIuivEXT
-
-