Class NVFramebufferMixedSamples
- java.lang.Object
-
- org.lwjgl.opengl.NVFramebufferMixedSamples
-
public class NVFramebufferMixedSamples extends java.lang.Object
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.
-
-
Field Summary
Fields Modifier and Type Field Description static int
GL_COLOR_SAMPLES_NV
GL_COVERAGE_MODULATION_NVAccepted by thepname
parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.static int
GL_COVERAGE_MODULATION_TABLE_NV
Accepted by thecap
parameter of Enable, Disable, IsEnabled.static int
GL_COVERAGE_MODULATION_TABLE_SIZE_NV
GL_DEPTH_SAMPLES_NV
GL_EFFECTIVE_RASTER_SAMPLES_EXT
GL_MAX_RASTER_SAMPLES_EXT
GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV
GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV
GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT
GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXTAccepted by thepname
parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.static int
GL_RASTER_MULTISAMPLE_EXT
Accepted by thecap
parameter of Enable, Disable, IsEnabled.static int
GL_RASTER_SAMPLES_EXT
GL_STENCIL_SAMPLES_NVAccepted by thepname
parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
glCoverageModulationNV(int components)
static void
glCoverageModulationTableNV(float[] v)
Array version of:CoverageModulationTableNV
static void
glCoverageModulationTableNV(java.nio.FloatBuffer v)
static void
glGetCoverageModulationTableNV(float[] v)
Array version of:GetCoverageModulationTableNV
static void
glGetCoverageModulationTableNV(java.nio.FloatBuffer v)
static void
glRasterSamplesEXT(int samples, boolean fixedsamplelocations)
Selects the number of samples to be used for rasterization.static void
nglCoverageModulationTableNV(int n, long v)
Unsafe version of:CoverageModulationTableNV
static void
nglGetCoverageModulationTableNV(int bufsize, long v)
-
-
-
Field Detail
-
GL_RASTER_MULTISAMPLE_EXT, GL_COVERAGE_MODULATION_TABLE_NV
Accepted by thecap
parameter of Enable, Disable, IsEnabled.
-
GL_RASTER_SAMPLES_EXT, GL_MAX_RASTER_SAMPLES_EXT, GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT, GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT, GL_EFFECTIVE_RASTER_SAMPLES_EXT, GL_COLOR_SAMPLES_NV, GL_DEPTH_SAMPLES_NV, GL_STENCIL_SAMPLES_NV, GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV, GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV, GL_COVERAGE_MODULATION_NV, GL_COVERAGE_MODULATION_TABLE_SIZE_NV
Accepted by thepname
parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.
-
-
Method Detail
-
glRasterSamplesEXT
public static void glRasterSamplesEXT(int samples, boolean fixedsamplelocations)
Selects the number of samples to be used for rasterization.samples
represents a request for a desired minimum number of samples. Since different implementations may support different sample counts, the actual sample pattern used is implementation-dependent. However, the resulting value forRASTER_SAMPLES_EXT
is guaranteed to be greater than or equal tosamples
and no more than the next larger sample count supported by the implementation. Iffixedsamplelocations
isTRUE
, identical sample locations will be used for all pixels. The sample locations chosen are a function of only the parameters to RasterSamplesEXT and not of any other state.If
RASTER_MULTISAMPLE_EXT
is enabled, then the sample pattern chosen by RasterSamplesEXT will be used instead of sampling at the center of the pixel. The sample locations can be queried withGetMultisamplefv
with apname
ofSAMPLE_POSITION
, similar to normal multisample sample locations.The value
MULTISAMPLE_RASTERIZATION_ALLOWED_EXT
isTRUE
ifSAMPLE_BUFFERS
is one or ifRASTER_MULTISAMPLE_EXT
is enabled. The valueEFFECTIVE_RASTER_SAMPLES_EXT
is equal toRASTER_SAMPLES_EXT
ifRASTER_MULTISAMPLE_EXT
is enabled, otherwise is equal toSAMPLES
.Explicit multisample rasterization can not be used in conjunction with depth, stencil, or depth bounds tests, multisample framebuffers, or if
RASTER_SAMPLES_EXT
is zero. IfRASTER_MULTISAMPLE_EXT
is enabled, the errorINVALID_OPERATION
will be generated by Draw commands if- the value of
RASTER_SAMPLES_EXT
is zero - the depth, stencil, or depth bounds test is enabled
- a multisample draw framebuffer is bound (
SAMPLE_BUFFERS
is one)
Errors
An
INVALID_VALUE
error is generated ifsamples
is greater than the value ofMAX_RASTER_SAMPLES_EXT
(the implementation-dependent maximum number of samples).- Parameters:
samples
- the number of samples to be used for rasterizationfixedsamplelocations
- ifTRUE
, identical sample locations will be used for all pixels
- the value of
-
nglCoverageModulationTableNV
public static void nglCoverageModulationTableNV(int n, long v)
Unsafe version of:CoverageModulationTableNV
- Parameters:
n
- The size of the coverage modulation table. Must be equal to the value of COVERAGE_MODULATION_TABLE_SIZE_NV.
-
glCoverageModulationTableNV
public static void glCoverageModulationTableNV(java.nio.FloatBuffer v)
-
nglGetCoverageModulationTableNV
public static void nglGetCoverageModulationTableNV(int bufsize, long v)
-
glGetCoverageModulationTableNV
public static void glGetCoverageModulationTableNV(java.nio.FloatBuffer v)
-
glCoverageModulationNV
public static void glCoverageModulationNV(int components)
-
glCoverageModulationTableNV
public static void glCoverageModulationTableNV(float[] v)
Array version of:CoverageModulationTableNV
-
glGetCoverageModulationTableNV
public static void glGetCoverageModulationTableNV(float[] v)
Array version of:GetCoverageModulationTableNV
-
-