glTexGenfv man page on SunOS

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
SunOS logo
[printable version]

GLTEXGEN(3gl)							 GLTEXGEN(3gl)

NAME
       glTexGend,  glTexGenf,  glTexGeni, glTexGendv, glTexGenfv, glTexGeniv -
       control the generation of texture coordinates

C SPECIFICATION
       void glTexGend( GLenum coord,
		       GLenum pname,
		       GLdouble param )
       void glTexGenf( GLenum coord,
		       GLenum pname,
		       GLfloat param )
       void glTexGeni( GLenum coord,
		       GLenum pname,
		       GLint param )

PARAMETERS
       coord   Specifies a texture coordinate.	Must be	 one  of  GL_S,	 GL_T,
	       GL_R, or GL_Q.

       pname   Specifies  the  symbolic name of the texture-coordinate genera‐
	       tion function.  Must be GL_TEXTURE_GEN_MODE.

       param   Specifies a single-valued texture generation parameter, one  of
	       GL_OBJECT_LINEAR,   GL_EYE_LINEAR,   GL_SPHERE_MAP,  GL_REFLEC‐
	       TION_MAP or GL_NORMAL_MAP.

C SPECIFICATION
       void glTexGendv( GLenum coord,
			GLenum pname,
			const GLdouble *params )
       void glTexGenfv( GLenum coord,
			GLenum pname,
			const GLfloat *params )
       void glTexGeniv( GLenum coord,
			GLenum pname,
			const GLint *params )

PARAMETERS
       coord  Specifies a texture coordinate.  Must  be	 one  of  GL_S,	 GL_T,
	      GL_R, or GL_Q.

       pname  Specifies the symbolic name of the texture-coordinate generation
	      function or function parameters.	Must  be  GL_TEXTURE_GEN_MODE,
	      GL_OBJECT_PLANE, or GL_EYE_PLANE.

       params Specifies	 a  pointer  to an array of texture generation parame‐
	      ters.  If pname is GL_TEXTURE_GEN_MODE, then the array must con‐
	      tain  a  single  symbolic	 constant,  one	 of  GL_OBJECT_LINEAR,
	      GL_EYE_LINEAR,  GL_SPHERE_MAP,  GL_REFLECTION_MAP,  or   GL_NOR‐
	      MAL_MAP.	 Otherwise, params holds the coefficients for the tex‐
	      ture-coordinate generation function specified by pname.

DESCRIPTION
       glTexGen selects a texture-coordinate generation function  or  supplies
       coefficients  for  one of the functions.	 coord names one of the (s, t,
       r, q) texture coordinates; it must be one of the	 symbols  GL_S,	 GL_T,
       GL_R,  or GL_Q.	pname must be one of three symbolic constants: GL_TEX‐
       TURE_GEN_MODE, GL_OBJECT_PLANE, or GL_EYE_PLANE.	 If pname  is  GL_TEX‐
       TURE_GEN_MODE,  then  params  chooses  a mode, one of GL_OBJECT_LINEAR,
       GL_EYE_LINEAR, GL_SPHERE_MAP, GL_REFLECTION_MAP, or GL_NORMAL_MAP.   If
       pname  is either GL_OBJECT_PLANE or GL_EYE_PLANE, params contains coef‐
       ficients for the corresponding texture generation function.

       If the texture generation function is GL_OBJECT_LINEAR, the function

				g=p1xo+p2yo+p3zo+p4wo

       is used, where g is the value computed  for  the	 coordinate  named  in
       coord,  p1,  p2, p3, and p4 are the four values supplied in params, and
       xo, yo, zo, and wo are the object  coordinates  of  the	vertex.	  This
       function	 can  be  used,	 for example, to texture-map terrain using sea
       level as a reference plane (defined by p1, p2, p3, and p4).  The	 alti‐
       tude of a terrain vertex is computed by the GL_OBJECT_LINEAR coordinate
       generation function as its distance from sea level; that	 altitude  can
       then  be	 used  to index the texture image to map white snow onto peaks
       and green grass onto foothills.

       If the texture generation function is GL_EYE_LINEAR, the function

			      g=p1′xe+p2′ye+p3′ze+p4′we

       is used, where

			    (p1′p2′p3′p4′)=(p1p2p3p4)M−1

       and xe, ye, ze, and we are the eye coordinates of the vertex,  p1,  p2,
       p3,  and	 p4  are the values supplied in params, and M is the modelview
       matrix when glTexGen is invoked.	 If M is poorly conditioned or	singu‐
       lar,  texture  coordinates  generated  by the resulting function may be
       inaccurate or undefined.

       Note that the values in params define a reference plane in eye  coordi‐
       nates.	The  modelview	matrix	that is applied to them may not be the
       same one in effect when the polygon  vertices  are  transformed.	  This
       function	 establishes  a	 field of texture coordinates that can produce
       dynamic contour lines on moving objects.

       If pname is GL_SPHERE_MAP and coord is either GL_S or  GL_T,  s	and  t
       texture coordinates are generated as follows.  Let u be the unit vector
       pointing from the origin to the polygon vertex  (in  eye	 coordinates).
       Let  n  sup  prime  be  the current normal, after transformation to eye
       coordinates.  Let

				     f=(fxfyfz)T
       be the reflection vector such that

				     f=u−2n′n′Tu

       Finally, let m=2√fx+fy+(fz+1)2 .	 Then the values assigned to the s and
       t texture coordinates are

				       s=__+_

				       t=__+_

       If pname is GL_REFLECTION_MAP, a reflection vector r is computed as
	      described for the GL_SPHERE_MAP mode. Then the value assigned to
	      s coordinate is s = rx; the value assigned to a t coordinate  is
	      t = ry; and the value assigned to the r coordinate is r = rz.

       If  pname  is  GL_NORMAL_MAP, a normal vector nf is computed.  Then the
       value assigned to s coordinate is s = nfx;  the	value  assigned	 to  t
       coordinate  is t = nfy; and the value assigned to the r coordinate is r
       = nfz. (the values nfx,nfy,and nfz are the components of nf.)

       To enable or disable a  texture-coordinate  generation  function,  call
       glEnable or glDisable with one of the symbolic texture-coordinate names
       (GL_TEXTURE_GEN_S,  GL_TEXTURE_GEN_T,  GL_TEXTURE_GEN_R,	  or   GL_TEX‐
       TURE_GEN_Q) as the argument.  When enabled, the specified texture coor‐
       dinate is computed according to the generating function associated with
       that coordinate.	 When disabled, subsequent vertices take the specified
       texture coordinate from the current set of  texture  coordinates.  Ini‐
       tially,	all  texture generation functions are set to GL_EYE_LINEAR and
       are disabled.  Both s plane equations are (1, 0, 0, 0),	both  t	 plane
       equations  are (0, 1, 0, 0), and all r and q plane equations are (0, 0,
       0, 0).

ERRORS
       GL_INVALID_ENUM is generated when coord or pname	 is  not  an  accepted
       defined	value,	or when pname is GL_TEXTURE_GEN_MODE and params is not
       an accepted defined value.

       GL_INVALID_ENUM is generated when pname is GL_TEXTURE_GEN_MODE,	params
       is GL_SPHERE_MAP, and coord is either GL_R or GL_Q.

       GL_INVALID_OPERATION  is	 generated if glTexGen is executed between the
       execution of glBegin and the corresponding execution of glEnd.

       GL_INVALID_ENUM is generated when TexGen is called with a coord of GL_Q
       when pname indicates GL_REFLECTION_MAP, or GL_NORMAL_MAP.

ASSOCIATED GETS
       glGetTexGen
       glIsEnabled with argument GL_TEXTURE_GEN_S
       glIsEnabled with argument GL_TEXTURE_GEN_T
       glIsEnabled with argument GL_TEXTURE_GEN_R
       glIsEnabled with argument GL_TEXTURE_GEN_Q

SEE ALSO
       glCopyPixels,  glCopyTexImage2D,	 glCopyTexSubImage1D,  glCopyTexSubIm‐
       age2D, glTexEnv,	 glTexImage1D,	glTexImage2D,  glTexParameter,	glTex‐
       SubImage1D, glTexSubImage2D

				   15 Mar 97			 GLTEXGEN(3gl)
[top]

List of man pages available for SunOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net