glHint

specify implementation-specific hints

Signature

glHint( GLenum ( target ) , GLenum ( mode ) )-> void
glHint( target , mode )

Parameters

VariablesDescription
target
Specifies a symbolic constant indicating the behavior to be controlled. GL_LINE_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.

Description

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_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_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_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.

Notes

The interpretation of hints depends on the implementation. Some implementations ignore glHint settings.

Errors

GL_INVALID_ENUM is generated if either target or mode is not an accepted value.

Version Support

glHint

See Also

Copyright

Copyright
1991-2006 Silicon Graphics, Inc. Copyright
2010-2014 Khronos Group. This document is licensed under the SGI Free Software B License. For details, see .

Sample Code References

The following code samples have been found which appear to reference the functions described here. Take care that the code may be old, broken or not even use PyOpenGL.

glHint
OpenGLContext tests/shadow_1.py Lines: 90
OpenGL-Demo PyOpenGL-Demo/NeHe/lesson41.py Lines: 187, 195
OpenGL-Demo PyOpenGL-Demo/NeHe/lesson16.py Lines: 92
OpenGL-Demo PyOpenGL-Demo/NeHe/lesson26.py Lines: 62
OpenGL-Demo PyOpenGL-Demo/NeHe/lesson12.py Lines: 46
OpenGL-Demo PyOpenGL-Demo/NeHe/lesson13.py Lines: 117
OpenGL-Demo PyOpenGL-Demo/NeHe/lesson19.py Lines: 98, 99
OpenGL-Demo PyOpenGL-Demo/NeHe/lesson45.py Lines: 346
OpenGL-Demo PyOpenGL-Demo/redbook/fog.py Lines: 92
OpenGL-Demo PyOpenGL-Demo/tom/fog.py Lines: 52
{LGPL} PyMT pymt/ui/window/__init__.py Lines: 18, 306
{LGPL} Pyggel pyggel/view.py Lines: 167, 178
{LGPL} pygl2d pygl2d/display.py Lines: 44
{LGPL or GPL or MPL} Kamaelia Code/Python/Kamaelia/Kamaelia/UI/OpenGL/OpenGLDisplay.py Lines: 463, 470
{LGPL or GPL or MPL} Kamaelia Sketches/CL/Topology3D/Experiments/Cubes.py Lines: 85
{LGPL or GPL or MPL} Kamaelia Sketches/CL/Topology3D/Experiments/Spheres.py Lines: 62
{LGPL or GPL or MPL} Kamaelia Sketches/CL/Topology3D/THF/Kamaelia/UI/OpenGL/OpenGLDisplay.py Lines: 462, 469
{LGPL or GPL or MPL} Kamaelia Sketches/CL/Topology3D/THF/Sketches/Display3D.py Lines: 138
{LGPL or GPL or MPL} Kamaelia Sketches/CL/Topology3D/THF/Sketches/playground/Display3D.py Lines: 147
{LGPL or GPL or MPL} Kamaelia Sketches/THF/3D/Display3D.py Lines: 138
{LGPL or GPL or MPL} Kamaelia Sketches/THF/3D/playground/Display3D.py Lines: 147
Gloopy gloopy/view/render.py Lines: 78
Visvis core/baseFigure.py Lines: 876, 877, 879, 880