Class NVConservativeRaster
This extension adds a "conservative" rasterization mode where any pixel that is partially covered, even if no sample location is covered, is treated as fully covered and a corresponding fragment will be shaded.
A new control is also added to modify window coordinate snapping precision.
These controls can be used to implement "binning" to a low-resolution render target, for example to determine which tiles of a sparse texture need to be populated. An app can construct a framebuffer where there is one pixel per tile in the sparse texture, and adjust the number of subpixel bits such that snapping occurs to the same effective grid as when rendering to the sparse texture. Then triangles should cover (at least) the same pixels in the low-res framebuffer as they do tiles in the sparse texture.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Accepted by thecap
parameter of Enable, Disable, IsEnabled.static final int
Accepted by thepname
parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.static final int
Accepted by thepname
parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.static final int
Accepted by thepname
parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv. -
Method Summary
Modifier and TypeMethodDescriptionstatic void
glSubpixelPrecisionBiasNV
(int xbits, int ybits) Sets theSUBPIXEL_PRECISION_BIAS_X_BITS_NV
andSUBPIXEL_PRECISION_BIAS_Y_BITS_NV
values.
-
Field Details
-
GL_CONSERVATIVE_RASTERIZATION_NV
public static final int GL_CONSERVATIVE_RASTERIZATION_NVAccepted by thecap
parameter of Enable, Disable, IsEnabled.- See Also:
-
GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV
public static final int GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NVAccepted by thepname
parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.- See Also:
-
GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV
public static final int GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NVAccepted by thepname
parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.- See Also:
-
GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV
public static final int GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NVAccepted by thepname
parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.- See Also:
-
-
Method Details
-
glSubpixelPrecisionBiasNV
public static void glSubpixelPrecisionBiasNV(int xbits, int ybits) Sets theSUBPIXEL_PRECISION_BIAS_X_BITS_NV
andSUBPIXEL_PRECISION_BIAS_Y_BITS_NV
values.The vertex's window x and y coordinates may be optionally converted to fixed-point values with
N
fractional bits. IfCONSERVATIVE_RASTERIZATION_NV
is disabled, thenN
is the implementation-dependent value ofSUBPIXEL_BITS
. IfCONSERVATIVE_RASTERIZATION_NV
is enabled,N
is computed as the sum of the value ofSUBPIXEL_BITS
and programmable values ofSUBPIXEL_PRECISION_BIAS_X_BITS_NV
andSUBPIXEL_PRECISION_BIAS_Y_BITS_NV
.When these values are non-zero, the invariance requirement may not apply because the subpixel precision may not be the same at all window coordinates.
- Parameters:
xbits
- theSUBPIXEL_PRECISION_BIAS_X_BITS_NV
value. The initial value is zero.ybits
- theSUBPIXEL_PRECISION_BIAS_Y_BITS_NV
value. The initial value is zero.
-