|
glHint — specify implementation-specific hints
void glHint(
GLenum target, GLenum mode)
;
target
Specifies a symbolic constant indicating the behavior to be controlled.
GL_FOG_HINT
,
GL_GENERATE_MIPMAP_HINT
,
GL_LINE_SMOOTH_HINT
,
GL_PERSPECTIVE_CORRECTION_HINT
,
GL_POINT_SMOOTH_HINT
,
GL_POLYGON_SMOOTH_HINT
,
GL_TEXTURE_COMPRESSION_HINT
, and
GL_FRAGMENT_SHADER_DERIVATIVE_HINT
are accepted.
mode
Specifies a symbolic constant indicating the desired behavior.
GL_FASTEST
,
GL_NICEST
, and
GL_DONT_CARE
are accepted.
Certain aspects of GL behavior,
when there is room for interpretation,
can be controlled with hints.
A hint is specified with two arguments.
target
is a symbolic
constant indicating the behavior to be controlled,
and mode
is another symbolic constant indicating the desired
behavior. The initial value for each target
is GL_DONT_CARE
.
mode
can be one of the following:
GL_FASTEST
The most efficient option should be chosen.
GL_NICEST
The most correct, or highest quality, option should be chosen.
GL_DONT_CARE
No preference.
Though the implementation aspects that can be hinted are well defined,
the interpretation of the hints depends on the implementation.
The hint aspects that can be specified with target
,
along with suggested semantics,
are as follows:
GL_FOG_HINT
Indicates the accuracy of fog calculation.
If per-pixel fog calculation is not efficiently supported
by the GL implementation,
hinting GL_DONT_CARE
or GL_FASTEST
can result in per-vertex
calculation of fog effects.
GL_FRAGMENT_SHADER_DERIVATIVE_HINT
Indicates the accuracy of the derivative calculation for the GL shading language fragment processing built-in functions:
dFdx
, dFdy
, and fwidth
.
GL_GENERATE_MIPMAP_HINT
Indicates the quality of filtering when generating mipmap images.
GL_LINE_SMOOTH_HINT
Indicates the sampling quality of antialiased lines.
If a larger filter function is applied, hinting GL_NICEST
can
result in more pixel fragments being generated during rasterization.
GL_PERSPECTIVE_CORRECTION_HINT
Indicates the quality of color, texture coordinate, and fog coordinate
interpolation. If perspective-corrected parameter interpolation is not
efficiently supported by the GL implementation, hinting GL_DONT_CARE
or GL_FASTEST
can result in simple linear interpolation of colors
and/or texture coordinates.
GL_POINT_SMOOTH_HINT
Indicates the sampling quality of antialiased points.
If a larger filter function is applied, hinting GL_NICEST
can
result in more pixel fragments being generated during rasterization.
GL_POLYGON_SMOOTH_HINT
Indicates the sampling quality of antialiased polygons.
Hinting GL_NICEST
can result in more pixel fragments being generated
during rasterization,
if a larger filter function is applied.
GL_TEXTURE_COMPRESSION_HINT
Indicates the quality and performance of the compressing texture images.
Hinting GL_FASTEST
indicates that texture images should be compressed
as quickly as possible, while GL_NICEST
indicates that texture images
should be compressed with as little image quality loss as possible.
GL_NICEST
should be selected if the texture is to be retrieved by
glGetCompressedTexImage for reuse.
The interpretation of hints depends on the implementation.
Some implementations ignore glHint
settings.
GL_TEXTURE_COMPRESSION_HINT
is available only if the GL version is 1.3
or greater.
GL_GENERATE_MIPMAP_HINT
is available only if the GL version is 1.4
or greater.
GL_FRAGMENT_SHADER_DERIVATIVE_HINT
is available only if the GL version is 2.0
or greater.
GL_INVALID_ENUM
is generated if either target
or mode
is not
an accepted value.
GL_INVALID_OPERATION
is generated if glHint
is executed between the execution of glBegin
and the corresponding execution of glEnd.
Copyright © 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see http://oss.sgi.com/projects/FreeB/.