org.lwjgl.opengles.ANGLEFramebufferMultisample Maven / Gradle / Ivy
Show all versions of lwjgl-opengles Show documentation
/*
* Copyright LWJGL. All rights reserved.
* License terms: https://www.lwjgl.org/license
* MACHINE GENERATED FILE, DO NOT EDIT
*/
package org.lwjgl.opengles;
import static org.lwjgl.system.Checks.*;
/**
* Native bindings to the ANGLE_framebuffer_multisample extension.
*
* This extension extends the framebuffer object framework to enable multisample rendering.
*
* The new operation RenderbufferStorageMultisampleANGLE() allocates storage for a renderbuffer object that can be used as a multisample buffer. A
* multisample render buffer image differs from a single-sample render buffer image in that a multisample image has a number of SAMPLES that is greater
* than zero. No method is provided for creating multisample texture images.
*
* All of the framebuffer-attachable images attached to a framebuffer object must have the same number of SAMPLES or else the framebuffer object is not
* "framebuffer complete". If a framebuffer object with multisample attachments is "framebuffer complete", then the framebuffer object behaves as if
* SAMPLE_BUFFERS is one.
*
* The resolve operation is affected by calling BlitFramebufferANGLE (provided by the ANGLE_framebuffer_blit extension) where the source is a multisample
* application-created framebuffer object and the destination is a single-sample framebuffer object (either application-created or window-system
* provided).
*
* Requires {@link GLES20 GLES 2.0} and {@link ANGLEFramebufferBlit ANGLE_framebuffer_blit}.
*/
public class ANGLEFramebufferMultisample {
/** Accepted by the {@code pname} parameter of GetRenderbufferParameteriv. */
public static final int GL_RENDERBUFFER_SAMPLES_ANGLE = 0x8CAB;
/** Returned by CheckFramebufferStatus. */
public static final int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE = 0x8D56;
/** Accepted by the {@code pname} parameter of GetBooleanv, GetIntegerv, and GetFloatv. */
public static final int GL_MAX_SAMPLES_ANGLE = 0x8D57;
static { GLES.initialize(); }
protected ANGLEFramebufferMultisample() {
throw new UnsupportedOperationException();
}
static boolean isAvailable(GLESCapabilities caps) {
return checkFunctions(
caps.glRenderbufferStorageMultisampleANGLE
);
}
// --- [ glRenderbufferStorageMultisampleANGLE ] ---
public static native void nglRenderbufferStorageMultisampleANGLE(int target, int samples, int internalformat, int width, int height);
public static void glRenderbufferStorageMultisampleANGLE(int target, int samples, int internalformat, int width, int height) {
nglRenderbufferStorageMultisampleANGLE(target, samples, internalformat, width, height);
}
}