Class ARBTextureMultisample

java.lang.Object
org.lwjgl.opengl.ARBTextureMultisample

public class ARBTextureMultisample extends 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 Details

    • GL_SAMPLE_POSITION

      public static final int GL_SAMPLE_POSITION
      Accepted by the pname parameter of GetMultisamplefv.
      See Also:
    • 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:
    • 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:
    • GL_TEXTURE_2D_MULTISAMPLE

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

      public static final int GL_PROXY_TEXTURE_2D_MULTISAMPLE
      Accepted by the target parameter of TexImage2DMultisample.
      See Also:
    • 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:
    • 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:
    • 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:
    • 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:
    • 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:
    • 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:
    • 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:
    • 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:
    • GL_TEXTURE_SAMPLES

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

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

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

      public static final int GL_INT_SAMPLER_2D_MULTISAMPLE
      Returned by the type parameter of GetActiveUniform.
      See Also:
    • 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:
    • GL_SAMPLER_2D_MULTISAMPLE_ARRAY

      public static final int GL_SAMPLER_2D_MULTISAMPLE_ARRAY
      Returned by the type parameter of GetActiveUniform.
      See Also:
    • 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:
    • 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:
  • Method Details

    • 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
    • nglGetMultisamplefv

      public static void nglGetMultisamplefv(int pname, int index, long val)
      Unsafe version of: GetMultisamplefv
    • glGetMultisamplefv

      public static void glGetMultisamplefv(int pname, int index, 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