Class EXTTextureArray



  • public class EXTTextureArray
    extends java.lang.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 Detail

      • 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:
        Constant Field Values
      • 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:
        Constant Field Values
      • 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:
        Constant Field Values
      • 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:
        Constant Field Values
      • 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:
        Constant Field Values
      • 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:
        Constant Field Values
      • 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:
        Constant Field Values
      • 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:
        Constant Field Values
      • 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:
        Constant Field Values
      • 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:
        Constant Field Values
      • 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:
        Constant Field Values
      • 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:
        Constant Field Values
      • 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:
        Constant Field Values
    • Method Detail

      • glFramebufferTextureLayerEXT

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