glLight man page on DigitalUNIX

Printed from http://www.polarhome.com/service/man/?qf=glLight&af=0&tf=2&of=DigitalUNIX

glLight(3G)							   glLight(3G)

NAME
       glLight,	 glLightf,  glLighti,  glLightfv, glLightiv - set light source
       parameters

SYNOPSIS
       void glLightf(
	       GLenum light,
	       GLenum pname,
	       GLfloat param ); void glLighti(
	       GLenum light,
	       GLenum pname,
	       GLint param );

PARAMETERS
       Specifies a light.  The number of lights depends on the implementation,
       but  at	least  eight lights are supported. They are identified by sym‐
       bolic names of the form GL_LIGHTi where 0 <= i < GL_MAX_LIGHTS.	Speci‐
       fies  a	single-valued light source parameter for light.	 GL_SPOT_EXPO‐
       NENT, GL_SPOT_CUTOFF,  GL_CONSTANT_ATTENUATION,	GL_LINEAR_ATTENUATION,
       and  GL_QUADRATIC_ATTENUATION  are  accepted.  Specifies the value that
       parameter pname of light source light will be set to.

SYNOPSIS
       void glLightfv(
	       GLenum light,
	       GLenum pname,
	       const GLfloat *params ); void glLightiv(
	       GLenum light,
	       GLenum pname,
	       const GLint *params );

PARAMETERS
       Specifies a light.  The number of lights depends on the implementation,
       but  at	least  eight lights are supported. They are identified by sym‐
       bolic names of the form GL_LIGHTi  where	 0  <=	 i   <	GL_MAX_LIGHTS.
       Specifies  a light source parameter for light.  GL_AMBIENT, GL_DIFFUSE,
       GL_SPECULAR,    GL_POSITION,	GL_SPOT_CUTOFF,	    GL_SPOT_DIRECTION,
       GL_SPOT_EXPONENT,  GL_CONSTANT_ATTENUATION,  GL_LINEAR_ATTENUATION, and
       GL_QUADRATIC_ATTENUATION are accepted.	Specifies  a  pointer  to  the
       value  or values that parameter pname of light source light will be set
       to.

DESCRIPTION
       glLight() sets the values of individual light source parameters.	 light
       names  the  light and is a symbolic name of the form GL_LIGHTi, where 0
       <= i < GL_MAX_LIGHTS.  pname specifies one of ten light source  parame‐
       ters,  again  by	 symbolic  name.  params is either a single value or a
       pointer to an array that contains the new values.

       To enable and disable lighting calculation, call glEnable() and	glDis‐
       able()  with argument GL_LIGHTING. Lighting is initially disabled. When
       it is enabled, light sources that are enabled contribute to the	light‐
       ing  calculation.  Light	 source	 i is enabled and disabled using glEn‐
       able() and glDisable() with argument GL_LIGHTi.

       The ten light parameters are as follows: params contains	 four  integer
       or floating-point values that specify the ambient RGBA intensity of the
       light. Integer values are mapped linearly such that the	most  positive
       representable  value  maps  to 1.0, and the most negative representable
       value maps to -1.0. Floating-point values are mapped directly.  Neither
       integer	nor  floating-point  values  are  clamped. The initial ambient
       light intensity is (0, 0, 0,  1).   params  contains  four  integer  or
       floating-point  values  that  specify the diffuse RGBA intensity of the
       light. Integer values are mapped linearly such that the	most  positive
       representable  value  maps  to 1.0, and the most negative representable
       value maps to -1.0. Floating-point values are mapped directly.  Neither
       integer	nor  floating-point  values are clamped. The initial value for
       GL_LIGHT0 is (1, 1, 1, 1); for other lights, the initial value  is  (0,
       0,  0,  0).  params contains four integer or floating-point values that
       specify the specular RGBA intensity of the light.  Integer  values  are
       mapped linearly such that the most positive representable value maps to
       1.0, and the most negative representable value maps to -1.0.  Floating-
       point  values  are  mapped directly. Neither integer nor floating-point
       values are clamped. The initial value for GL_LIGHT0 is (1,  1,  1,  1);
       for  other  lights, the initial value is (0, 0, 0, 0).  params contains
       four integer or floating-point values that specify the position of  the
       light  in  homogeneous  object  coordinates. Both integer and floating-
       point values are mapped directly. Neither  integer  nor	floating-point
       values are clamped.

	      The  position  is	 transformed  by  the  modelview  matrix  when
	      glLight() is called (just as if it were  a  point),  and	it  is
	      stored in eye coordinates. If the w component of the position is
	      0, the light is treated as a  directional	 source.  Diffuse  and
	      specular	lighting  calculations take the light's direction, but
	      not its actual position, into account, and attenuation  is  dis‐
	      abled. Otherwise, diffuse and specular lighting calculations are
	      based on the actual location of the light	 in  eye  coordinates,
	      and  attenuation	is  enabled. The initial position is (0, 0, 1,
	      0); thus, the initial light source is directional, parallel  to,
	      and  in  the  direction  of  the -z axis.	 params contains three
	      integer or floating-point values that specify the	 direction  of
	      the  light  in  homogeneous object coordinates. Both integer and
	      floating-point values are mapped directly. Neither  integer  nor
	      floating-point values are clamped.

	      The  spot	 direction  is	transformed by the inverse of the mod‐
	      elview matrix when glLight() is called (just as  if  it  were  a
	      normal),	and it is stored in eye coordinates. It is significant
	      only when GL_SPOT_CUTOFF is not 180, which it is initially.  The
	      initial  direction is (0, 0, -1).	 params is a single integer or
	      floating-point value that specifies the  intensity  distribution
	      of  the  light.  Integer	and  floating-point  values are mapped
	      directly. Only values in the range [0,128] are accepted.

	      Effective light intensity is attenuated by  the  cosine  of  the
	      angle  between the direction of the light and the direction from
	      the light to the vertex being lighted, raised to	the  power  of
	      the  spot exponent. Thus, higher spot exponents result in a more
	      focused light source, regardless of the spot cutoff  angle  (see
	      GL_SPOT_CUTOFF, next paragraph). The initial spot exponent is 0,
	      resulting in uniform light distribution.	 params	 is  a	single
	      integer  or  floating-point  value  that	specifies  the maximum
	      spread angle of a light source. Integer and floating-point  val‐
	      ues are mapped directly. Only values in the range [0,90] and the
	      special value 180 are accepted. If the angle between the	direc‐
	      tion of the light and the direction from the light to the vertex
	      being lighted is greater than the spot cutoff angle,  the	 light
	      is  completely masked. Otherwise, its intensity is controlled by
	      the spot exponent and the attenuation factors. The initial  spot
	      cutoff is 180, resulting in uniform light distribution.

       GL_CONSTANT_ATTENUATION
       GL_LINEAR_ATTENUATION

       params  is  a single integer or floating-point value that specifies one
       of the three light attenuation factors. Integer and floating-point val‐
       ues  are	 mapped directly. Only nonnegative values are accepted. If the
       light is positional, rather than directional, its intensity is  attenu‐
       ated  by	 the  reciprocal of the sum of the constant factor, the linear
       factor times the distance  between  the	light  and  the	 vertex	 being
       lighted,	 and  the  quadratic  factor times the square of the same dis‐
       tance. The initial attenuation factors are (1, 0, 0), resulting	in  no
       attenuation.

NOTES
       It is always the case that GL_LIGHTi = GL_LIGHT0 + i.

ERRORS
       GL_INVALID_ENUM	is  generated  if  either  light  or  pname  is not an
       accepted value.

       GL_INVALID_VALUE is generated if a spot	exponent  value	 is  specified
       outside	the  range [0,128], or if spot cutoff is specified outside the
       range [0,90] (except for the special  value  180),  or  if  a  negative
       attenuation factor is specified.

       GL_INVALID_OPERATION  is generated if glLight() is executed between the
       execution of glBegin() and the corresponding execution of glEnd().

ASSOCIATED GETS
       glGetLight()
       glIsEnabled() with argument GL_LIGHTING

SEE ALSO
       glColorMaterial(3), glLightModel(3), glMaterial(3)

								   glLight(3G)
[top]

List of man pages available for DigitalUNIX

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