OpenGL also provides a number of filtering methods to compute the texel value. The simplest of the filters is point sampling, in which the texel value nearest the texture coordinates is selected. Point sampling seldom gives satisfactory results, so most applications will choose some filter which does interpolation. For magnification, OpenGL 1.0 only supports linear interpolation between four texel values. OpenGL does not provide any built-in commands for generating mipmaps, but the GLU provides some simple routines for generating mipmaps using a simple box filter.
Several methods exist for computing the final color, each capable of producing a particular effect.
One of the most commonly used is the modulate function. For all practical purposes the modulate function can be thought of multiplying or modulating the original fragment color with the texel color. Typically, applications generate white polygons, light them, and then use this lit value to modulate the texture image to effectively produce a lit, textured surface. Unfortunately when the lit polygon includes a specular highlight, the resulting modulated texture will not look correct since the specular highlight simply changes the brightness of the texture at that point rather than the desired effect of adding in some specular illumination. Some vendors have tried to address this problem with extensions to perform specular lighting after texturing.