Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
GLTEXENV()							      GLTEXENV()

NAME
     glTexEnvf,  glTexEnvi, glTexEnvfv, glTexEnviv - set texture environment pa-
     rameters

C SPECIFICATION
     void glTexEnvf( GLenum target,
		     GLenum pname,
		     GLfloat param )
     void glTexEnvi( GLenum target,
		     GLenum pname,
		     GLint param )

     delim $$

PARAMETERS
     target  Specifies a texture environment.  Must be GL_TEXTURE_ENV.

     pname   Specifies the symbolic name of a single-valued texture  environment
	     parameter.  Must be GL_TEXTURE_ENV_MODE.

     param   Specifies a single symbolic constant, one of GL_MODULATE, GL_DECAL,
	     GL_BLEND, or GL_REPLACE.

C SPECIFICATION
     void glTexEnvfv( GLenum target,
		      GLenum pname,
		      const GLfloat *params )
     void glTexEnviv( GLenum target,
		      GLenum pname,
		      const GLint *params )

PARAMETERS
     target
	    Specifies a texture environment.  Must be GL_TEXTURE_ENV.

     pname  Specifies the symbolic name of a texture environment parameter.  Ac-
	    cepted values are GL_TEXTURE_ENV_MODE and GL_TEXTURE_ENV_COLOR.

     params
	    Specifies a pointer to a parameter array that contains either a sin-
	    gle symbolic constant or an RGBA color.

DESCRIPTION
     A	texture  environment specifies how texture values are interpreted when a
     fragment is textured.  target must be GL_TEXTURE_ENV.  pname can be  either
     GL_TEXTURE_ENV_MODE or GL_TEXTURE_ENV_COLOR.

     If pname is GL_TEXTURE_ENV_MODE, then params is (or points to) the symbolic
     name  of  a  texture  function.   Four  texture functions may be specified:
     GL_MODULATE, GL_DECAL, GL_BLEND, and GL_REPLACE.

     A texture function acts on the fragment to be textured  using  the  texture
     image  value that applies to the fragment (see glTexParameter) and produces
     an RGBA color for that fragment.  The following table shows  how  the  RGBA
     color  is produced for each of the three texture functions that can be cho-
     sen.  $C$ is a triple of color values (RGB) and $A$ is the associated alpha
     value.  RGBA values extracted from a texture image are in the range  [0,1].
     The subscript $f$ refers to the incoming fragment, the subscript $t$ to the
     texture image, the subscript $c$ to the texture environment color, and sub-
     script $v$ indicates a value produced by the texture function.

     A texture image can have up to four components per texture element (see gl-
     TexImage1D,  glTexImage2D,  glCopyTexImage1D,  and glCopyTexImage2D).  In a
     one-component image, $L sub t$ indicates that single component.  A two-com-
     ponent image uses $L sub t$ and $A sub t$.   A  three-component  image  has
     only  a  color  value,  $C sub t$.  A four-component image has both a color
     value $C sub t$ and an alpha value $A sub t$.

+---------------++--------------------------------------------------------------------------------------------------------------------------------+
| Base internal ||						     Texture functions								  |
|    format	||	  GL_MODULATE			      GL_DECAL				     GL_BLEND			  GL_REPLACE	  |
+---------------++----------------------------+--------------------------------------+--------------------------------------+---------------------+
|   GL_ALPHA	||    $C sub v = C sub f$     | 	     undefined		     |	       $C sub v =  C sub f$	    | $C sub v = C sub f$ |
|		||$A sub v = A sub f A sub t$ | 				     |	       $A sub v = A sub f$	    | $A sub v = A sub t$ |
+---------------++----------------------------+--------------------------------------+--------------------------------------+---------------------+
| GL_LUMINANCE	||$C sub v = L sub t C sub f$ | 	     undefined		     | $C sub v = ( 1 - L sub t ) C sub f$  | $C sub v = L sub t$ |
|	1	||			      | 				     |	       $+ L sub t C sub c$	    |			  |
|		||			      | 				     |					    |			  |
|		||    $A sub v = A sub f$     | 				     |		$A sub v = A sub f$	    | $A sub v = A sub f$ |
+---------------++----------------------------+--------------------------------------+--------------------------------------+---------------------+
| GL_LUMINANCE	||$C sub v = L sub t C sub f$ | 	     undefined		     | $C sub v = ( 1 - L sub t ) C sub f $ | $C sub v = L sub t$ |
|   \f3_ALPHA	||			      | 				     |		$+ L sub t C sub c$	    |			  |
|	2	||			      | 				     |					    |			  |
|		||$A sub v = A sub t A sub f$ | 				     |	   $A sub v = A sub t A sub f$	    | $A sub v = A sub t$ |
+---------------++----------------------------+--------------------------------------+--------------------------------------+---------------------+
| GL_INTENSITY	||$C sub v = C sub f I sub t$ | 	     undefined		     | $C sub v = ( 1 - I sub t ) C sub f$  | $C sub v = I sub t$ |
|		||			      | 				     |	       $+ I sub t C sub c$	    |			  |
|		||			      | 				     |					    |			  |
|		||$A sub v = A sub f I sub t$ | 				     | $A sub v = ( 1 - I sub t ) A sub f $ | $A sub v = I sub t$ |
|		||			      | 				     |	       $+ I sub t A sub c$	    |			  |
+---------------++----------------------------+--------------------------------------+--------------------------------------+---------------------+
|    GL_RGB	||$C sub v = C sub t C sub f$ | 	$C sub v = C sub t$	     |	$C sub v = (1 - C sub t) C sub f $  | $C sub v = C sub t$ |
|	3	||			      | 				     |		$+ C sub t C sub c$	    |			  |
|		||			      | 				     |					    |			  |
|		||    $A sub v = A sub f$     | 	$A sub v = A sub f$	     |	       $A sub v = A sub f$	    | $A sub v = A sub f$ |
+---------------++----------------------------+--------------------------------------+--------------------------------------+---------------------+
|    GL_RGBA	||$C sub v = C sub t C sub f$ | $C sub v = ( 1 - A sub t ) C sub f $ |	$C sub v = (1 - C sub t) C sub f $  | $C sub v = C sub t$ |
|	4	||			      | 	$+ A sub t C sub t$	     |		$+ C sub t C sub c$	    |			  |
|		||			      | 				     |					    |			  |
|		||$A sub v = A sub t A sub f$ | 	$A sub v = A sub f$	     |	   $A sub v = A sub t A sub f$	    | $A sub v = A sub t$ |
+---------------++----------------------------+--------------------------------------+--------------------------------------+---------------------+

     If pname is GL_TEXTURE_ENV_COLOR, params is a  pointer  to  an  array  that
     holds  an	RGBA  color consisting of four values.	Integer color components
     are interpreted linearly such that the most positive integer maps	to  1.0,
     and  the most negative integer maps to -1.0.  The values are clamped to the
     range [0,1] when they are specified.  $C sub c$ takes these four values.

     GL_TEXTURE_ENV_MODE defaults to GL_MODULATE  and  GL_TEXTURE_ENV_COLOR  de-
     faults to (0, 0, 0, 0).

NOTES
     GL_REPLACE may only be used if the GL version is 1.1 or greater.

     Internal  formats	other than 1, 2, 3, or 4 may only be used if the GL ver-
     sion is 1.1 or greater.

ERRORS
     GL_INVALID_ENUM is generated when target or pname is not  one  of	the  ac-
     cepted  defined values, or when params should have a defined constant value
     (based on the value of pname) and does not.

     GL_INVALID_OPERATION is generated if glTexEnv is executed between the  exe-
     cution of glBegin and the corresponding execution of glEnd.

ASSOCIATED GETS
     glGetTexEnv

SEE ALSO
     glCopyPixels,   glCopyTexImage1D,	 glCopyTexImage2D,  glCopyTexSubImage1D,
     glCopyTexSubImage2D,  glTexImage1D,  glTexImage2D,  glTexParameter,  glTex-
     SubImage1D, glTexSubImage2D

								      GLTEXENV()

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=glTexEnviv&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help