Class EXTTextureArray

java.lang.Object
org.lwjgl.opengl.EXTTextureArray

public class EXTTextureArray extends Object
Native bindings to the EXT_texture_array extension.

This extension introduces the notion of one- and two-dimensional array textures. An array texture is a collection of one- and two-dimensional images of identical size and format, arranged in layers. A one-dimensional array texture is specified using TexImage2D; a two-dimensional array texture is specified using TexImage3D. The height (1D array) or depth (2D array) specify the number of layers in the image.

An array texture is accessed as a single unit in a programmable shader, using a single coordinate vector. A single layer is selected, and that layer is then accessed as though it were a one- or two-dimensional texture. The layer used is specified using the "t" or "r" texture coordinate for 1D and 2D array textures, respectively. The layer coordinate is provided as an unnormalized floating-point value in the range [0,<n>-1], where <n> is the number of layers in the array texture. Texture lookups do not filter between layers, though such filtering can be achieved using programmable shaders. When mipmapping is used, each level of an array texture has the same number of layers as the base level; the number of layers is not reduced as the image size decreases.

Array textures can be rendered to by binding them to a framebuffer object (EXT_framebuffer_object). A single layer of an array texture can be bound using normal framebuffer object mechanisms, or an entire array texture can be bound and rendered to using the layered rendering mechanisms provided by NV_geometry_program4.

This extension does not provide for the use of array textures with fixed-function fragment processing. Such support could be added by providing an additional extension allowing applications to pass the new target enumerants (TEXTURE_1D_ARRAY_EXT and TEXTURE_2D_ARRAY_EXT) to Enable and Disable.

Promoted to core in OpenGL 3.0.

  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    Accepted by the param parameter of TexParameterf, TexParameteri, TexParameterfv, and TexParameteriv when the pname parameter is TEXTURE_COMPARE_MODE_ARB.
    static final int
    COMPARE_REF_DEPTH_TO_TEXTURE_EXT is simply an alias for the existing COMPARE_R_TO_TEXTURE token in OpenGL 2.0; the alternate name reflects the fact that the R coordinate is not always used.) Accepted by the pname parameter of GetFramebufferAttachmentParameterivEXT.
    static final int
    Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv and GetFloatv.
    static final int
    Accepted by the target parameter of TexImage2D, TexSubImage2D, CopyTexImage2D, CopyTexSubImage2D, CompressedTexImage2D, and CompressedTexSubImage2D.
    static final int
    Accepted by the target parameter of TexImage3D, TexSubImage3D, CopyTexSubImage3D, CompressedTexImage3D, and CompressedTexSubImage3D.
    static final int
    FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER is simply an alias for the FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT token provided in EXT_framebuffer_object.
    static final int
    FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER is simply an alias for the FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT token provided in EXT_framebuffer_object.
    static final int
    FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER is simply an alias for the FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT token provided in EXT_framebuffer_object.
    static final int
    FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER is simply an alias for the FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT token provided in EXT_framebuffer_object.
    static final int
    Accepted by the target parameter of TexParameteri, TexParameteriv, TexParameterf, TexParameterfv, GenerateMipmapEXT, and BindTexture.
    static final int
    Accepted by the target parameter of TexParameteri, TexParameteriv, TexParameterf, TexParameterfv, GenerateMipmapEXT, and BindTexture.
    static final int
    Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv and GetFloatv.
    static final int
    Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv and GetFloatv.
  • Method Summary

    Modifier and Type
    Method
    Description
    static void
    glFramebufferTextureLayerEXT(int target, int attachment, int texture, int level, int layer)
     

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • GL_TEXTURE_1D_ARRAY_EXT

      public static final int GL_TEXTURE_1D_ARRAY_EXT
      Accepted by the target parameter of TexParameteri, TexParameteriv, TexParameterf, TexParameterfv, GenerateMipmapEXT, and BindTexture.
      See Also:
    • GL_TEXTURE_2D_ARRAY_EXT

      public static final int GL_TEXTURE_2D_ARRAY_EXT
      Accepted by the target parameter of TexParameteri, TexParameteriv, TexParameterf, TexParameterfv, GenerateMipmapEXT, and BindTexture.
      See Also:
    • GL_PROXY_TEXTURE_2D_ARRAY_EXT

      public static final int GL_PROXY_TEXTURE_2D_ARRAY_EXT
      Accepted by the target parameter of TexImage3D, TexSubImage3D, CopyTexSubImage3D, CompressedTexImage3D, and CompressedTexSubImage3D.
      See Also:
    • GL_PROXY_TEXTURE_1D_ARRAY_EXT

      public static final int GL_PROXY_TEXTURE_1D_ARRAY_EXT
      Accepted by the target parameter of TexImage2D, TexSubImage2D, CopyTexImage2D, CopyTexSubImage2D, CompressedTexImage2D, and CompressedTexSubImage2D.
      See Also:
    • GL_TEXTURE_BINDING_1D_ARRAY_EXT

      public static final int GL_TEXTURE_BINDING_1D_ARRAY_EXT
      Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv and GetFloatv.
      See Also:
    • GL_TEXTURE_BINDING_2D_ARRAY_EXT

      public static final int GL_TEXTURE_BINDING_2D_ARRAY_EXT
      Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv and GetFloatv.
      See Also:
    • GL_MAX_ARRAY_TEXTURE_LAYERS_EXT

      public static final int GL_MAX_ARRAY_TEXTURE_LAYERS_EXT
      Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv and GetFloatv.
      See Also:
    • GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT

      public static final int GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT
      Accepted by the param parameter of TexParameterf, TexParameteri, TexParameterfv, and TexParameteriv when the pname parameter is TEXTURE_COMPARE_MODE_ARB.
      See Also:
    • GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT

      public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT
      COMPARE_REF_DEPTH_TO_TEXTURE_EXT is simply an alias for the existing COMPARE_R_TO_TEXTURE token in OpenGL 2.0; the alternate name reflects the fact that the R coordinate is not always used.) Accepted by the pname parameter of GetFramebufferAttachmentParameterivEXT.
      See Also:
    • GL_SAMPLER_1D_ARRAY_EXT

      public static final int GL_SAMPLER_1D_ARRAY_EXT
      FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER is simply an alias for the FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT token provided in EXT_framebuffer_object. This extension generalizes the notion of "zoffset" to include layers of an array texture.) Returned by the type parameter of GetActiveUniform.
      See Also:
    • GL_SAMPLER_2D_ARRAY_EXT

      public static final int GL_SAMPLER_2D_ARRAY_EXT
      FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER is simply an alias for the FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT token provided in EXT_framebuffer_object. This extension generalizes the notion of "zoffset" to include layers of an array texture.) Returned by the type parameter of GetActiveUniform.
      See Also:
    • GL_SAMPLER_1D_ARRAY_SHADOW_EXT

      public static final int GL_SAMPLER_1D_ARRAY_SHADOW_EXT
      FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER is simply an alias for the FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT token provided in EXT_framebuffer_object. This extension generalizes the notion of "zoffset" to include layers of an array texture.) Returned by the type parameter of GetActiveUniform.
      See Also:
    • GL_SAMPLER_2D_ARRAY_SHADOW_EXT

      public static final int GL_SAMPLER_2D_ARRAY_SHADOW_EXT
      FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER is simply an alias for the FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT token provided in EXT_framebuffer_object. This extension generalizes the notion of "zoffset" to include layers of an array texture.) Returned by the type parameter of GetActiveUniform.
      See Also:
  • Method Details

    • glFramebufferTextureLayerEXT

      public static void glFramebufferTextureLayerEXT(int target, int attachment, int texture, int level, int layer)