ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).



GLGETLIGHT(3G)                                                                                GLGETLIGHT(3G)



NAME
       glGetLightfv, glGetLightiv - return light source parameter values


C SPECIFICATION
       void glGetLightfv( GLenum light,
                          GLenum pname,
                          GLfloat *params )
       void glGetLightiv( GLenum light,
                          GLenum pname,
                          GLint *params )


PARAMETERS
       light   Specifies  a  light source.  The number of possible lights depends on the implementation, but
               at least eight lights are supported.  They are identified  by  symbolic  names  of  the  form
               GL_LIGHTi where 0 <=  i  < GL_MAX_LIGHTS.

       pname   Specifies  a  light  source  parameter  for  light.   Accepted symbolic names are GL_AMBIENT,
               GL_DIFFUSE, GL_SPECULAR, GL_POSITION,  GL_SPOT_DIRECTION,  GL_SPOT_EXPONENT,  GL_SPOT_CUTOFF,
               GL_CONSTANT_ATTENUATION, GL_LINEAR_ATTENUATION, and GL_QUADRATIC_ATTENUATION.

       params  Returns the requested data.

DESCRIPTION
       glGetLight  returns in params the value or values of a light source parameter.  light names the light
       and is a symbolic name of the form GL_LIGHTi for 0 <= i < GL_MAX_LIGHTS, where  GL_MAX_LIGHTS  is  an
       implementation dependent constant that is greater than or equal to eight.  pname specifies one of ten
       light source parameters, again by symbolic name.

       The following parameters are defined:

       GL_AMBIENT          params returns four integer or floating-point  values  representing  the  ambient
                           intensity  of  the  light  source.   Integer values, when requested, are linearly
                           mapped from the internal floating-point representation such that 1.0 maps to  the
                           most  positive  representable  integer  value, and -1.0 maps to the most negative
                           representable integer value.  If the internal value is outside the range [-1, 1],
                           the  corresponding integer return value is undefined. The initial value is (0, 0,
                           0, 1).

       GL_DIFFUSE          params returns four integer or floating-point  values  representing  the  diffuse
                           intensity  of  the  light  source.   Integer values, when requested, are linearly
                           mapped from the internal floating-point representation such that 1.0 maps to  the
                           most  positive  representable  integer  value, and -1.0 maps to the most negative
                           representable integer value.  If the internal value is outside the range [-1, 1],
                           the  corresponding  integer  return  value  is  undefined.  The initial value for
                           GL_LIGHT0 is (1, 1, 1, 1); for other lights, the initial value is (0, 0, 0, 0).

       GL_SPECULAR         params returns four integer or floating-point values  representing  the  specular
                           intensity  of  the  light  source.   Integer values, when requested, are linearly
                           mapped from the internal floating-point representation such that 1.0 maps to  the
                           most  positive  representable  integer  value, and -1.0 maps to the most negative
                           representable integer value.  If the internal value is outside the range [-1, 1],
                           the  corresponding  integer  return  value  is  undefined.  The initial value for
                           GL_LIGHT0 is (1, 1, 1, 1); for other lights, the initial value is (0, 0, 0, 0).

       GL_POSITION         params returns four integer or floating-point values representing the position of
                           the  light  source.  Integer values, when requested, are computed by rounding the
                           internal floating-point values to the nearest integer value.  The returned values
                           are  those  maintained  in eye coordinates.  They will not be equal to the values
                           specified using glLight, unless the modelview matrix was  identity  at  the  time
                           glLight was called. The initial value is (0, 0, 1, 0).

       GL_SPOT_DIRECTION   params  returns three integer or floating-point values representing the direction
                           of the light source.  Integer values, when requested, are  computed  by  rounding
                           the  internal  floating-point  values to the nearest integer value.  The returned
                           values are those maintained in eye coordinates.  They will not be  equal  to  the
                           values  specified  using glLight, unless the modelview matrix was identity at the
                           time glLight was called.  Although spot direction is normalized before being used
                           in the lighting equation, the returned values are the transformed versions of the
                           specified values prior to normalization. The initial value is (0, 0, -1).

       GL_SPOT_EXPONENT    params returns a single integer or floating-point  value  representing  the  spot
                           exponent of the light.  An integer value, when requested, is computed by rounding
                           the internal floating-point representation to the nearest  integer.  The  initial
                           value is 0.

       GL_SPOT_CUTOFF      params  returns  a  single  integer or floating-point value representing the spot
                           cutoff angle of the light.  An integer value,  when  requested,  is  computed  by
                           rounding  the  internal floating-point representation to the nearest integer. The
                           initial value is 180.

       GL_CONSTANT_ATTENUATION
                           params returns a single integer or floating-point value representing the constant
                           (not  distance-related)  attenuation  of  the  light.   An  integer  value,  when
                           requested, is computed by rounding the internal floating-point representation  to
                           the nearest integer. The initial value is 1.

       GL_LINEAR_ATTENUATION
                           params  returns  a single integer or floating-point value representing the linear
                           attenuation of the light.  An integer  value,  when  requested,  is  computed  by
                           rounding  the  internal floating-point representation to the nearest integer. The
                           initial value is 0.

       GL_QUADRATIC_ATTENUATION
                           params returns a single integer or floating-point value representing the quadrat-
                           ic  attenuation  of  the light.  An integer value, when requested, is computed by
                           rounding the internal floating-point representation to the nearest  integer.  The
                           initial value is 0.

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

       If an error is generated, no change is made to the contents of params.

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

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

SEE ALSO
       glLight(3G)




                                                                                              GLGETLIGHT(3G)

Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.