Función glLightModeli

La función glLightModeli establece los parámetros del modelo de iluminación.

Sintaxis

void WINAPI glLightModeli(
   GLenum pname,
   GLint  param
);

Parámetros

pname

Un parámetro de modelo de iluminación de valor único. Se aceptan los valores siguientes.

Value Significado
GL_LIGHT_MODEL_LOCAL_VIEWER
El parámetro param es un valor entero único que especifica cómo se calculan los ángulos de reflexión especulares. Si el parámetro es 0 (o 0,0), los ángulos de reflexión especular toman la dirección de la vista hacia y en la dirección del eje -z , independientemente de la ubicación del vértice en coordenadas oculares. De lo contrario, las reflexiones especulares se calculan desde el origen del sistema de coordenadas oculares. El valor predeterminado es 0.
GL_LIGHT_MODEL_TWO_SIDE
El parámetro param es un valor entero único que especifica si se realizan cálculos de iluminación de un lado o dos para polígonos. No tiene ningún efecto en los cálculos de iluminación de puntos, líneas o mapas de bits. Si el parámetro es 0 (o 0,0), se especifica la iluminación de un lado y solo se usan los parámetros de material frontal en la ecuación de iluminación. De lo contrario, se especifica la iluminación de dos lados.
En este caso, los vértices de polígonos hacia atrás se iluminan mediante los parámetros de material posterior y tienen sus normales invertidos antes de evaluar la ecuación de iluminación. Los vértices de polígonos frontales siempre se iluminan con los parámetros de material frontal, sin cambios en sus normales. El valor predeterminado es 0.

param

Valor en el que se establecerá el parámetro .

Valor devuelto

Esta función no devuelve ningún valor.

Códigos de error

La función glGetError puede recuperar los siguientes códigos de error.

Nombre Significado
GL_INVALID_ENUM
pname no era un valor aceptado.
GL_INVALID_OPERATION
Se llamó a la función entre una llamada a glBegin y la llamada correspondiente a glEnd.

Comentarios

La función glLightModeli establece el parámetro del modelo de iluminación. El parámetro pname asigna un parámetro y parámetro al nuevo valor.el valor o los valores de parámetros individuales de origen de luz.

En el modo RGBA, el color claro de un vértice es la suma de la intensidad de emisión de material, el producto de la reflectancia ambiental del material y la intensidad ambiental del modelo de iluminación completa, y la contribución de cada fuente de luz habilitada. Cada fuente de luz contribuye a la suma de tres términos: ambiente, difuso y especular.

  • La contribución de la fuente de luz ambiental es el producto de la reflectancia ambiental del material y la intensidad ambiental de la luz.
  • La contribución de la fuente de luz difusa es el producto de la reflectancia difusa del material, la intensidad difusa de la luz y el producto de punto de la normalización del vértice con el vector normalizado del vértice a la fuente de luz.
  • La contribución de la fuente de luz especular es el producto de la reflectancia especular del material, la intensidad especular de la luz y el producto de punto de los vectores normalizados de vértice a ojo y vértice a luz, elevado a la potencia de la brillo del material.

Las tres contribuciones de fuente de luz se atenuan igualmente en función de la distancia desde el vértice hasta la fuente de luz y en la dirección de la fuente de luz, exponente de propagación y ángulo de corte de propagación. Todos los productos de puntos se reemplazan por cero si se evalúan como un valor negativo.

El componente alfa del color claro resultante se establece en el valor alfa de la reflectancia difusa del material.

En el modo de índice de color, el valor del índice claro de un vértice oscila entre el ambiente y los valores especulares pasados a glMaterial mediante GL_COLOR_INDEXES. Coeficientes difusos y especulares, calculados con una ponderación (.30, .59, .11) de los colores de la luz, la brillosidad del material y la misma ecuación de reflexión y atenuación que en el caso RGBA, determinan la cantidad de ambiente anterior al índice resultante.

Las siguientes funciones recuperan información relacionada con la función glLightModeli :

glGet con GL_LIGHT_MODEL_LOCAL_VIEWER de argumentos

glGet con GL_LIGHT_MODEL_TWO_SIDE de argumentos

glIsEnabled con GL_LIGHTING de argumentos

Requisitos

Requisito Value
Cliente mínimo compatible
Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado
Gl.h
Biblioteca
Opengl32.lib
Archivo DLL
Opengl32.dll

Consulte también

glBegin

glEnd

glLight

glMaterial