glGetLightiv 函数

glGetLightfvglGetLightiv 函数返回光源参数值。

语法

void WINAPI glGetLightiv(
   GLenum light,
   GLenum pname,
   GLint  *params
);

parameters

light

光源。 可能的光数取决于实现,但至少支持八个灯。 它们由形式 GL_LIGHT i 的符号名称标识,其中 0 = i< GL_MAX_LIGHTS。

pname

的光源参数。 接受以下符号名称。

含义
GL_AMBIENT
params 参数返回四个整数或浮点值,表示光源的环境强度。 当请求整数值时,将从内部浮点表示形式线性映射,以便 1.0 映射到最正的可表示整数值,而 -1.0 映射到最负的可表示整数值。 如果内部值在 [-1,1] 范围之外,则相应的整数返回值未定义。
GL_DIFFUSE
params 参数返回四个整数或浮点值,表示光源的漫射强度。 当请求整数值时,将从内部浮点表示形式线性映射,以便 1.0 映射到最正的可表示整数值,而 -1.0 映射到最负的可表示整数值。 如果内部值在 [-1,1] 范围之外,则相应的整数返回值未定义。
GL_SPECULAR
params 参数返回四个整数或浮点值,表示光源的反射强度。 当请求整数值时,将从内部浮点表示形式线性映射,以便 1.0 映射到最正的可表示整数值,而 -1.0 映射到最负的可表示整数值。 如果内部值在 [-1,1] 范围之外,则相应的整数返回值未定义。
GL_POSITION
params 参数返回四个整数或浮点值,表示光源的位置。 整数值在请求时通过将内部浮点值舍入为最接近的整数值来计算。 返回的值是在眼睛坐标中维护的值。 它们不等于使用 glLight 指定的值,除非在调用 glLight 时标识了 modelview 矩阵。
GL_SPOT_DIRECTION
params 参数返回三个表示光源方向的整数或浮点值。 整数值在请求时通过将内部浮点值舍入为最接近的整数值来计算。 返回的值是在眼睛坐标中维护的值。 它们不等于使用 glLight 指定的值,除非在调用 glLight 时标识了 modelview 矩阵。 尽管在照明公式中使用之前已规范化光点方向,但返回的值是规范化之前指定值的转换版本。
GL_SPOT_EXPONENT
params 参数返回表示光的点指数的单一整数或浮点值。 当请求时,整数值是通过将内部浮点表示形式舍入到最接近的整数来计算的。
GL_SPOT_CUTOFF
params 参数返回一个整数或浮点值,表示光的点截止角度。 当请求时,整数值是通过将内部浮点表示形式舍入到最接近的整数来计算的。
GL_CONSTANT_ATTENUATION
params 参数返回一个整数或浮点值,该值表示常量 (与光线的距离无关) 衰减。 当请求时,整数值是通过将内部浮点表示形式舍入到最接近的整数来计算的。
GL_LINEAR_ATTENUATION
params 参数返回表示光线线性衰减的单一整数或浮点值。 当请求时,整数值是通过将内部浮点表示形式舍入到最接近的整数来计算的。
GL_QUADRATIC_ATTENUATION
params 参数返回表示光的二次衰减的单整数或浮点值。 当请求时,整数值是通过将内部浮点表示形式舍入到最接近的整数来计算的。

params

返回请求的数据。

返回值

此函数不返回值。

注解

glGetLight 函数在参数中返回一个或多个光源参数的值。 light 参数为 light 命名,并且是 0 =i GL_MAX_LIGHTS 形式的 GL_LIGHT i< 的符号名称,其中 GL_MAX_LIGHTS 是大于或等于 8 的依赖于实现的常量。 pname 参数指定十个光源参数之一,再次按符号名称指定。

始终GL_LIGHTi = GL_LIGHT0 + i

如果生成错误,则不会更改 参数的内容。

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Gl.h

Opengl32.lib
DLL
Opengl32.dll

另请参阅

glBegin

glEnd

glLight