Top Description Fields Constructors Methods
org.lwjgl.opengles

public Class NVFramebufferMixedSamples

extends Object
Class Inheritance
Imports
java.nio.*, org.lwjgl.system.*

Native bindings to the NV_framebuffer_mixed_samples extension.

This extension allows multisample rendering with a raster and depth/stencil sample count that is larger than the color sample count. Rasterization and the results of the depth and stencil tests together determine the portion of a pixel that is "covered". It can be useful to evaluate coverage at a higher frequency than color samples are stored. This coverage is then "reduced" to a collection of covered color samples, each having an opacity value corresponding to the fraction of the color sample covered. The opacity can optionally be blended into individual color samples.

In the current hardware incarnation both depth and stencil testing are supported with mixed samples, although the API accommodates supporting only one or the other.

Rendering with fewer color samples than depth/stencil samples can greatly reduce the amount of memory and bandwidth consumed by the color buffer. However, converting the coverage values into opacity can introduce artifacts where triangles share edges and may not be suitable for normal triangle mesh rendering.

One expected use case for this functionality is Stencil-then-Cover path rendering (NV_path_rendering). The stencil step determines the coverage (in the stencil buffer) for an entire path at the higher sample frequency, and then the cover step can draw the path into the lower frequency color buffer using the coverage information to antialias path edges. With this two-step process, internal edges are fully covered when antialiasing is applied and there is no corruption on these edges.

The key features of this extension are:

Field Summary

Modifier and TypeField and Description
public static final int
GL_COLOR_SAMPLES_NV

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

public static final int
GL_COVERAGE_MODULATION_NV

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

public static final int
GL_COVERAGE_MODULATION_TABLE_NV

Accepted by the cap parameter of Enable, Disable, IsEnabled.

public static final int
GL_COVERAGE_MODULATION_TABLE_SIZE_NV

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

public static final int
GL_DEPTH_SAMPLES_NV

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

public static final int
GL_EFFECTIVE_RASTER_SAMPLES_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

public static final int
GL_MAX_RASTER_SAMPLES_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

public static final int
GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

public static final int
GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

public static final int
GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

public static final int
GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

public static final int
GL_RASTER_MULTISAMPLE_EXT

Accepted by the cap parameter of Enable, Disable, IsEnabled.

public static final int
GL_RASTER_SAMPLES_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

public static final int
GL_STENCIL_SAMPLES_NV

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public static native void
glCoverageModulationNV(int components)

public static void
public static void
public static void
public static void
public static void
glRasterSamplesEXT(int samples, boolean fixedsamplelocations)

public static native void
public static native void
nglGetCoverageModulationTableNV(int bufsize, long v)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

GL_COLOR_SAMPLES_NVback to summary
public static final int GL_COLOR_SAMPLES_NV

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

GL_COVERAGE_MODULATION_NVback to summary
public static final int GL_COVERAGE_MODULATION_NV

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

GL_COVERAGE_MODULATION_TABLE_NVback to summary
public static final int GL_COVERAGE_MODULATION_TABLE_NV

Accepted by the cap parameter of Enable, Disable, IsEnabled.

GL_COVERAGE_MODULATION_TABLE_SIZE_NVback to summary
public static final int GL_COVERAGE_MODULATION_TABLE_SIZE_NV

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

GL_DEPTH_SAMPLES_NVback to summary
public static final int GL_DEPTH_SAMPLES_NV

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

GL_EFFECTIVE_RASTER_SAMPLES_EXTback to summary
public static final int GL_EFFECTIVE_RASTER_SAMPLES_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

GL_MAX_RASTER_SAMPLES_EXTback to summary
public static final int GL_MAX_RASTER_SAMPLES_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NVback to summary
public static final int GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NVback to summary
public static final int GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXTback to summary
public static final int GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXTback to summary
public static final int GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

GL_RASTER_MULTISAMPLE_EXTback to summary
public static final int GL_RASTER_MULTISAMPLE_EXT

Accepted by the cap parameter of Enable, Disable, IsEnabled.

GL_RASTER_SAMPLES_EXTback to summary
public static final int GL_RASTER_SAMPLES_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

GL_STENCIL_SAMPLES_NVback to summary
public static final int GL_STENCIL_SAMPLES_NV

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.

Constructor Detail

NVFramebufferMixedSamplesback to summary
protected NVFramebufferMixedSamples()

Method Detail

glCoverageModulationNVback to summary
public static native void glCoverageModulationNV(int components)
glCoverageModulationTableNVback to summary
public static void glCoverageModulationTableNV(FloatBuffer v)
glCoverageModulationTableNVback to summary
public static void glCoverageModulationTableNV(float[] v)

Array version of: CoverageModulationTableNV

glGetCoverageModulationTableNVback to summary
public static void glGetCoverageModulationTableNV(FloatBuffer v)
glGetCoverageModulationTableNVback to summary
public static void glGetCoverageModulationTableNV(float[] v)

Array version of: GetCoverageModulationTableNV

glRasterSamplesEXTback to summary
public static void glRasterSamplesEXT(int samples, boolean fixedsamplelocations)
nglCoverageModulationTableNVback to summary
public static native void nglCoverageModulationTableNV(int n, long v)
nglGetCoverageModulationTableNVback to summary
public static native void nglGetCoverageModulationTableNV(int bufsize, long v)