Phong reflection model
Ambient, Diffuse, Specular (Vertex and Pixels)
El modelo de reflexión de Phong es un modelo de iluminación y sombreado que asigna brillo a los puntos de una superficie modelada
La informacion de este modelo se encuentra en la pagina de wikipedia Phong reflexion model.
Describe la forma en que una superficie refleja la luz como una combinación
de la reflexión difusa de las superficies rugosas con la reflexión especular de las superficies brillantes. El modelo también incluye un término de luz ambiental para simular la luz que se dispersa en el entorno.
Los principales componentes básicos del modelo de iluminación Phong constan de 3 componentes: iluminación ambiental, difusa y especular

Doumento relacionado Modelos de iluminacion y sombreado
Modelo de luz difusa
El modelo de luz difusa, también conocida como modelo de Lambert, va un paso más adelante que la luz ambiente, se encarga de simular la dirección de los rayos de luz que afectan directamente al objeto ,de tal forma que un rayo incidente es reflejado en muchos ángulos, para esto necesitamos los vectores normales que son perpendiculares a las caras o superficies del objeto y así mismo necesitaremos la dirección del rayo de luz. Luego calculamos el producto entre cada vector normal y la dirección del rayo de luz, y escogemos el máximo entre dicho resultado y 0 (para evitar negativos), este resultado suele ser conocido como término de Lambert. Al final, para obtener el resultado sobre el color de nuestro objeto, agregamos a la ecuación el término de Lambert, multiplicando así nuestro resultado inicial de luz ambiente para cada cara del objeto.

Modelo de luz especular
La reflexión especular se produce cuando un rayo de luz incide sobre una superficie pulida (espejo) y cambia su dirección sin cambiar el medio por donde se propaga. esta también considera la posición y dirección desde las que se miran al objeto. Para esta simulación agregaremos entonces una variable adicional que tendrá la función de representar la “fuerza especular”, también calcularemos el vector de reflejo teniendo en cuenta el vector de dirección de la vista hacia el objeto. que para la luz difusa.

Comando | Operacion |
---|---|
![]() |
Intercambia modos de iluminacion |
![]() |
Interaccion con los objetos |

Implementacion mediante Vertex

Implementacion mediante Pixeles
De acuerdo a las implementaciones mostradas anteriormente, podemos observar que el modelo phong implementado mediante pixeles tiene una visualizacion mas cercana al reflejo que se observa en la realidad. mientras que el modelo por vertex, se ve un poco mas rectangular, de tal forma que cuando se ve un reflejo este lo muestra en forma de rectangulo. Por otra parte el modelo mediante pixeles tiene un acabado mas suavizado que el implementado mediante vertex. Adicionalmente respecto a la vizualizacion de la iluminacion difusa podemos observar un comportamiento similar en la comparacion entre estas 2 implementaciones, dado que como se menciona anteriormente es mas suavizado uno que el otro.
Modelo con varias luces en nub
En esta implementacion fue realizada implementado nub, para esto se crean 4 luces con las cuales se puede interactuar para modificar la direccion
de la luz inside o refleja , adicionalmente tambien se permite el movimiento de la esfera para percibir este mismo objeto.
