C SPECIFICATION
void GLAPIENTRY glGetLightfv( GLenum light,
GLenum pnam )
void GLAPIENTRY glGetLightiv( GLenum light,
GLenum pnam )
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.
pnam 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.
_param3
Returns the requested data.
DESCRIPTION
glGetLight returns in _param3 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 imple-
mentation dependent constant that is greater than or equal to eight.
pnam specifies one of ten light source parameters, again by symbolic
name.
The following parameters are defined:
GL_AMBIENT _param3 returns four integer or floating-point val-
ues representing the ambient intensity of the light
source. Integer values, when requested, are lin-
early mapped from the internal floating-point rep-
resentation 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 _param3 returns four integer or floating-point val-
ues representing the diffuse intensity of the light
source. Integer values, when requested, are lin-
early mapped from the internal floating-point rep-
resentation 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
fined. The initial value for GL_LIGHT0 is (1, 1, 1,
1); for other lights, the initial value is (0, 0,
0, 0).
GL_POSITION _param3 returns four integer or floating-point val-
ues 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 _param3 returns three integer or floating-point
values representing the direction of the light
source. Integer values, when requested, are com-
puted by rounding the internal floating-point val-
ues 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 _param3 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 _param3 returns a single integer or floating-point
value representing the spot cutoff angle of the
light. An integer value, when requested, is com-
puted by rounding the internal floating-point rep-
resentation to the nearest integer. The initial
value is 180.
GL_CONSTANT_ATTENUATION
_param3 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 near-
est integer. The initial value is 1.
GL_LINEAR_ATTENUATION
_param3 returns a single integer or floating-point
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 _param3.
ERRORS
GL_INVALID_ENUM is generated if light or pnam 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
GLGETLIGHT(3G)
Man(1) output converted with
man2html