glGetFragmentLight(3G) OpenGL Reference glGetFragmentLight(3G)
glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX - return fragment
light source parameter values
void glGetFragmentLightfvSGIX( GLenum light,
GLenum pname,
GLfloat *params )
void glGetFragmentLightivSGIX( GLenum light,
GLenum pname,
GLint *params )
light Specifies a fragment light source. The number of possible
fragment lights depends on the implementation. They are
identified by symbolic names of the form GL_FRAGMENT_LIGHTi_SGIX
where 0 < i < GL_MAX_FRAGMENT_LIGHTS_SGIX.
pname Specifies a fragment 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.
glGetFragmentLight returns in params the value or values of a fragment
light source parameter. light names the fragment light and is a symbolic
name of the form GL_FRAGMENT_LIGHTi_SGIX for 0 < i <
GL_MAX_FRAGMENT_LIGHTS_SGIX, where GL_MAX_FRAGMENT_LIGHTS_SGIX is an
implementation dependent constant. pname specifies one of ten fragment
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 fragment
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 fragment
light source. Integer values, when requested, are
Page 1
glGetFragmentLight(3G) OpenGL Reference glGetFragmentLight(3G)
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_FRAGMENT_LIGHT0_SGIX is (1, 1,
1, 1); for other fragment 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 fragment
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_FRAGMENT_LIGHT0_SGIX is (1, 1,
1, 1); for other fragment lights, the initial value
is (0, 0, 0, 0).
GL_POSITION params returns four integer or floating-point values
representing the position of the fragment 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 glFragmentLight,
unless the modelview matrix was identity at the time
glFragmentLight 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 fragment 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 glFragmentLight,
unless the modelview matrix was identity at the time
glFragmentLight was called. Although spot direction
is normalized before being used in the fragment
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 fragment
light. An integer value, when requested, is computed
by rounding the internal floating-point
Page 2
glGetFragmentLight(3G) OpenGL Reference glGetFragmentLight(3G)
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
fragment 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 [Toc] [Back]
params returns a single integer or floating-point
value representing the constant (not distancerelated)
attenuation of the fragment 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 [Toc] [Back]
params returns a single integer or floating-point
value representing the linear attenuation of the
fragment 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 [Toc] [Back]
params returns a single integer or floating-point
value representing the quadratic attenuation of the
fragment light. An integer value, when requested, is
computed by rounding the internal floating-point
representation to the nearest integer. The initial
value is 0.
It is always the case that GL_FRAGMENT_LIGHTi_SGIX =
GL_FRAGMENT_LIGHT0_SGIX + i.
If an error is generated, no change is made to the contents of params.
GL_INVALID_ENUM is generated if light or pname is not an accepted value.
GL_INVALID_OPERATION is generated if glGetFragmentLight is executed
between the execution of glBegin and the corresponding execution of
glEnd.
MACHINE DEPENDENCIES
The SGIX_fragment_lighting extension is supported only on Octane2 VPro
systems.
Page 3
glGetFragmentLight(3G) OpenGL Reference glGetFragmentLight(3G)
glFragmentLight
PPPPaaaaggggeeee 4444 [ Back ]
|