Class ARBTextureMultisample



  • public class ARBTextureMultisample
    extends java.lang.Object
    Native bindings to the ARB_texture_multisample extension.

    This extension provides support for two new types of "multisample textures" - two-dimensional and two-dimensional array - as well as mechanisms to fetch a specific sample from such a texture in a shader, and to attach such textures to FBOs for rendering.

    This extension also includes the following functionality, first described in NV_explicit_multisample:

    • A query in the API to query the location of samples within the pixel
    • An explicit control for the multisample sample mask to augment the control provided by SampleCoverage

    Promoted to core in OpenGL 3.2.

    • Field Detail

      • GL_SAMPLE_POSITION

        public static final int GL_SAMPLE_POSITION
        Accepted by the pname parameter of GetMultisamplefv.
        See Also:
        Constant Field Values
      • GL_SAMPLE_MASK

        public static final int GL_SAMPLE_MASK
        Accepted by the cap parameter of Enable, Disable, and IsEnabled, and by the pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev.
        See Also:
        Constant Field Values
      • GL_SAMPLE_MASK_VALUE

        public static final int GL_SAMPLE_MASK_VALUE
        Accepted by the target parameter of GetBooleani_v and GetIntegeri_v.
        See Also:
        Constant Field Values
      • GL_TEXTURE_2D_MULTISAMPLE

        public static final int GL_TEXTURE_2D_MULTISAMPLE
        Accepted by the target parameter of BindTexture and TexImage2DMultisample.
        See Also:
        Constant Field Values
      • GL_PROXY_TEXTURE_2D_MULTISAMPLE

        public static final int GL_PROXY_TEXTURE_2D_MULTISAMPLE
        Accepted by the target parameter of TexImage2DMultisample.
        See Also:
        Constant Field Values
      • GL_TEXTURE_2D_MULTISAMPLE_ARRAY

        public static final int GL_TEXTURE_2D_MULTISAMPLE_ARRAY
        Accepted by the target parameter of BindTexture and TexImage3DMultisample.
        See Also:
        Constant Field Values
      • GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY

        public static final int GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY
        Accepted by the target parameter of TexImage3DMultisample.
        See Also:
        Constant Field Values
      • GL_MAX_SAMPLE_MASK_WORDS

        public static final int GL_MAX_SAMPLE_MASK_WORDS
        Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.
        See Also:
        Constant Field Values
      • GL_MAX_COLOR_TEXTURE_SAMPLES

        public static final int GL_MAX_COLOR_TEXTURE_SAMPLES
        Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.
        See Also:
        Constant Field Values
      • GL_MAX_DEPTH_TEXTURE_SAMPLES

        public static final int GL_MAX_DEPTH_TEXTURE_SAMPLES
        Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.
        See Also:
        Constant Field Values
      • GL_MAX_INTEGER_SAMPLES

        public static final int GL_MAX_INTEGER_SAMPLES
        Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.
        See Also:
        Constant Field Values
      • GL_TEXTURE_BINDING_2D_MULTISAMPLE

        public static final int GL_TEXTURE_BINDING_2D_MULTISAMPLE
        Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.
        See Also:
        Constant Field Values
      • GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY

        public static final int GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY
        Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.
        See Also:
        Constant Field Values
      • GL_TEXTURE_SAMPLES

        public static final int GL_TEXTURE_SAMPLES
        Accepted by the pname parameter of GetTexLevelParameter.
        See Also:
        Constant Field Values
      • GL_TEXTURE_FIXED_SAMPLE_LOCATIONS

        public static final int GL_TEXTURE_FIXED_SAMPLE_LOCATIONS
        Accepted by the pname parameter of GetTexLevelParameter.
        See Also:
        Constant Field Values
      • GL_SAMPLER_2D_MULTISAMPLE

        public static final int GL_SAMPLER_2D_MULTISAMPLE
        Returned by the type parameter of GetActiveUniform.
        See Also:
        Constant Field Values
      • GL_INT_SAMPLER_2D_MULTISAMPLE

        public static final int GL_INT_SAMPLER_2D_MULTISAMPLE
        Returned by the type parameter of GetActiveUniform.
        See Also:
        Constant Field Values
      • GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE

        public static final int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE
        Returned by the type parameter of GetActiveUniform.
        See Also:
        Constant Field Values
      • GL_SAMPLER_2D_MULTISAMPLE_ARRAY

        public static final int GL_SAMPLER_2D_MULTISAMPLE_ARRAY
        Returned by the type parameter of GetActiveUniform.
        See Also:
        Constant Field Values
      • GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY

        public static final int GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY
        Returned by the type parameter of GetActiveUniform.
        See Also:
        Constant Field Values
      • GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY

        public static final int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY
        Returned by the type parameter of GetActiveUniform.
        See Also:
        Constant Field Values
    • Method Detail

      • glTexImage2DMultisample

        public static void glTexImage2DMultisample(int target,
                                                   int samples,
                                                   int internalformat,
                                                   int width,
                                                   int height,
                                                   boolean fixedsamplelocations)
        Establishes the data storage, format, dimensions, and number of samples of a 2D multisample texture's image.
        Parameters:
        target - the target of the operation. One of:
        TEXTURE_2D_MULTISAMPLEPROXY_TEXTURE_2D_MULTISAMPLE
        samples - the number of samples in the multisample texture's image
        internalformat - the internal format to be used to store the multisample texture's image. internalformat must specify a color-renderable, depth-renderable, or stencil-renderable format.
        width - the width of the multisample texture's image, in texels
        height - the height of the multisample texture's image, in texels
        fixedsamplelocations - whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image
      • glTexImage3DMultisample

        public static void glTexImage3DMultisample(int target,
                                                   int samples,
                                                   int internalformat,
                                                   int width,
                                                   int height,
                                                   int depth,
                                                   boolean fixedsamplelocations)
        Establishes the data storage, format, dimensions, and number of samples of a 3D multisample texture's image.
        Parameters:
        target - the target of the operation. One of:
        TEXTURE_2D_MULTISAMPLE_ARRAYPROXY_TEXTURE_2D_MULTISAMPLE_ARRAY
        samples - the number of samples in the multisample texture's image
        internalformat - the internal format to be used to store the multisample texture's image. internalformat must specify a color-renderable, depth-renderable, or stencil-renderable format.
        width - the width of the multisample texture's image, in texels
        height - the height of the multisample texture's image, in texels
        depth - the depth of the multisample texture's image, in texels
        fixedsamplelocations - whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image
      • glGetMultisamplefv

        public static void glGetMultisamplefv(int pname,
                                              int index,
                                              java.nio.FloatBuffer val)
        Retrieves the location of a sample.
        Parameters:
        pname - the sample parameter name. Must be:
        SAMPLE_POSITION
        index - the index of the sample whose position to query
        val - an array to receive the position of the sample
      • glGetMultisamplef

        public static float glGetMultisamplef(int pname,
                                              int index)
        Retrieves the location of a sample.
        Parameters:
        pname - the sample parameter name. Must be:
        SAMPLE_POSITION
        index - the index of the sample whose position to query
      • glSampleMaski

        public static void glSampleMaski(int index,
                                         int mask)
        Sets the value of a sub-word of the sample mask.
        Parameters:
        index - which 32-bit sub-word of the sample mask to update
        mask - the new value of the mask sub-word
      • glGetMultisamplefv

        public static void glGetMultisamplefv(int pname,
                                              int index,
                                              float[] val)
        Array version of: GetMultisamplefv