daltomi
Registrado: 28 Abr 2007 Mensajes: 335 Ubicación: Argentina
| Publicado: 03/05/2012 9:50 am | | | Título: |
| Son 3 conceptos: luz direccional, luz posicional y spotlight. Tanto la luz direccional como la luz posicional se determinan con el último elemento de la matriz que se utiliza en la llamada:
| Código: | glLightfv(GL_LIGHT0, GL_POSITION, luzPosicion);
|
Esa matriz luzPosicion contiene 4 elementos: x,y,z,p. Si el último elemento es 1.0 indica que la actual posición de la luz es de donde proviene dicha luz(luz posicional) , si en cambio el valor es 0.0, indica que la posición actual de la luz proviene de un origen infinito(luz direccional, rayos paralelos). Imagen de ejemplo.
Como por defecto la luz en OpenGL irradia en todas direcciones se utiliza el spotlight, una forma de cortar/enmarcar la luz. Piensa en spotlight como una especie de cono que irradia luz, todo objeto que se encuentre fuera del cono de luz no será iluminado. Éste cono tiene un ángulo de corte y un exponente de iluminación.
Saludos. |
|