La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Computación Gráfica Modelado de la Iluminación y el Color Docentes: Néstor Calvo Ángel Calegaris Walter Sotil 2008.

Presentaciones similares


Presentación del tema: "Computación Gráfica Modelado de la Iluminación y el Color Docentes: Néstor Calvo Ángel Calegaris Walter Sotil 2008."— Transcripción de la presentación:

1 Computación Gráfica Modelado de la Iluminación y el Color Docentes: Néstor Calvo Ángel Calegaris Walter Sotil 2008

2 Color y Sombreado 2 1 a Parte: COLOR Como se percibe y como se cuantifica el color

3 Color y Sombreado 3 Reproducción: Colores Aditivos y Sustractivos Agregan color (emisores, monitor) Quitan color (tintas, impresora) -La tinta cian (celeste) absorbe el color rojo -La tinta magenta absorbe el color verde -La tinta amarilla absorbe el color azul -Las tres tintas C+M+Y absorben todo el color = negro (Las impresoras suelen usar también tinta negra) Colores Aditivos (RGB) Colores Sustractivos (CMY) Complementarios

4 Color y Sombreado 4 Creemos saber todo sobre el color ¿Ya está? ¿Con una terna de RGB podemos representar cualquier color? ¿Por que una terna? ¿Que tres colores? ¿Que hace el violeta cerca del rojo?

5 Color y Sombreado 5 Pero la realidad es mucho más complicada Un color es una distribución continua o espectro de longitudes de onda P(). Es una función, no un valor. Además el ojo tiene sus particularidades fisiológicas color

6 Color y Sombreado 6 Tres tipos especializados de Conos

7 Color y Sombreado 7 Teoría Tricromática: Von Helmholtz (1859) Los colores son percibidos de acuerdo a las respuestas relativas de los tres tipos de receptores.

8 Color y Sombreado 8 Teoría de Colores Opuestos: Hering (1872) ¿Alguien vio un rojo verdoso o un azul amarillento? ¿Cómo se explican los contrastes y las afterimages con la teoría tricromática? Y Cb Cr

9 Color y Sombreado 9 Teoría Dual Los colores son percibidos de acuerdo a las respuestas relativas de los tres tipos de receptores. Pero se procesan tanto las contribuciones individuales como las sumas y las diferencias.

10 Color y Sombreado 10 Percepción del color Hue, Saturation, Value or Lightness (HSV o HSL) Tono, Saturación, Intensidad o Luminancia

11 Color y Sombreado 11 Reproducción del color Los valores negativos (del rojo en este caso) significan que: 1) no se puede reproducir ese color en RGB 2) a menos que se agregue luz (roja) al campo de referencia Wright and Guild 1930: Comparación visual entre un color de referencia y uno generado mediante tres luces (RGB)

12 Color y Sombreado 12 Commission Internationale de l’Éclairage (CIE) CIE 1931: Standard Colorimetric Observer

13 Color y Sombreado 13 Commission Internationale de l’Éclairage (CIE) CIE 1931: Chromaticity Diagram CIE 1975: Uniform Chromaticity Scale

14 Color y Sombreado 14 Gamut 3D!? I=0.299R+0.587G+0.114B

15 Color y Sombreado 15 2 a Parte: Iluminación y Sombreado Como interactúan los materiales con la luz

16 Color y Sombreado 16 Sombreado Analizaremos el sombreado debido a la forma del objeto en relación con el ojo y las fuentes de luz. (No confundir sombreado con sombras)

17 Color y Sombreado 17 Iluminación Local / Global Iluminación local: depende del material, la luz ambiente, el ángulo de incidencia de la luz y el ángulo con el eje visual Iluminación Global: considera además la luz reflejada por los otros objetos y un ambiente mas complejo.

18 Color y Sombreado 18 BRDF: Bidirectional Reflectance Distribution Function Cantidad de luz que refleja una superficie en función del ángulo de incidencia y el ángulo de visión (4D) Los ángulos se miden respecto a la normal a la superficie en el punto considerado Dirección de incidencia de la luz Dirección de visualización Normal

19 Color y Sombreado 19 Modelo de luz e iluminación recibida I(  ) = I l max(cos(  ),0) Superficie  n d   I(  ) = I l cos(  ) I = I l cos r (  ) si  <  (k c + k l d + k q d 2 ) I = 0 si  > 

20 Color y Sombreado 20 Reflexión Difusa Lambertiana o Ideal Superficie I r = K d I l cos(  )

21 Color y Sombreado 21 Reflexión Especular Ideal Superficie  l n r  La luz de un foco puntual (o la luz que llega a la superficie desde un dado punto) solo es visible si el ángulo de visión es exactamente igual al de incidencia

22 Color y Sombreado 22 Reflexión no ideal  l n r  v  I r = K s I l cos q (  ) independiente de cos()!!?? (Fresnel?) q

23 Color y Sombreado 23 Iluminación Ambiente I r = I l K a La luz reflejada por todo el entorno se simplifica como luz ambiente. Es independiente de la dirección de las fuentes y la de visualización

24 Color y Sombreado 24 Modelo de Phong (Phong Bui Tong 1975) I r = I l (K a + K d cos() + K s cos q (  )) =++

25 Color y Sombreado 25 Modelos avanzados de Iluminación Ray Casting Ray Tracing Radiance Radiosity Photon Map

26 Color y Sombreado 26 2 a Parte: Implementación en Opengl

27 Color y Sombreado 27 Color RGBA El color se asigna a cada vértice con glColor…(…) Puede usarse dentro del loop glBegin(…) – glEnd() La asignación es RGB o RGBA (index no se usa más) En general hay que usar reales (float) entre 0 y 1, los distintos tipos de enteros se mapean con dificultad y luego se pasan a [0,1], siempre clampeados. La A se refiere a un adicional alpha que puede considerarse como “nivel de opacidad”, pero en realidad se puede usar para algunos trucos: - Alpha Test (el fragmento pasa si se cumple el test) - Blending (el entrante se mezcla con el almacenado) El truco básico con alpha es la transparencia que se hace mediante el blending: D=AS+(1-A)D D es cada uno de los valores R, G o B del píxel almacenado en el color buffer. S es lo mismo, pero del píxel entrante. A es el alpha del píxel entrante.

28 Color y Sombreado 28 Color void glColor3{b s i f d ub us ui} (TYPEr, TYPEg, TYPEb); void glColor4{b s i f d ub us ui} (TYPEr, TYPEg, TYPEb, TYPEa); void glColor3{b s i f d ub us ui}v (const TYPE*v); void glColor4{b s i f d ub us ui}v (const TYPE*v);

29 Color y Sombreado 29 Iluminación y Sombreado void glLightModel{if}(GLenum pname, TYPEparam); void glLightModel{if}v(GLenum pname, TYPE *param);glLightModel glEnable(GL_LIGHTING); glEnable(GL_LIGHT_0);... glEnable(GL_LIGHT_7);

30 Color y Sombreado 30 Luces void glLight{if}(GLenum light, GLenum pname, TYPEparam); void glLight{if}v(GLenum light, GLenum pname, TYPE *param);glLight   I = I l cos r (  ) si  <  (k c + k l d + k q d 2 ) I = 0 si  > 

31 Color y Sombreado 31 Modelo de Phong (modificado) I r = K a I ga + K e +  i (K a I lai + I ldi K d cos(  ) + I lsi K s cos(  ) q ) void glColorMaterial(GLenum face, GLenum mode);glColorMaterial void glMaterial{if}(GLenum face, GLenum pname, TYPEparam); void glMaterial{if}v(GLenum face, GLenum pname, TYPE *param);glMaterial face: GL_FRONT, GL_BACK, or GL_FRONT_AND_BACK (default). mode: GL_AMBIENT, GL_DIFFUSE, GL_AMBIENT_AND_DIFFUSE (default), GL_SPECULAR, or GL_EMISSION

32 Color y Sombreado 32 Un par de consejos básicos El “color” puede representarse mediante las componentes ambiente y difusa, haciendo que siempre la reflexión especular sea blanca (el color de la luz sin cambiar) Cambiar materiales con glMaterial() es caro, conviene habilitar glColorMaterial y cambiar solo las componentes arriba mencionadas. El cambio se realiza en cada llamada a glColor. Los cálculos de iluminación se simplifican, sin que se vea mal, poniendo la luz en el infinito y deshabilitando “local viewer”. Si se quieren objetos transparentes u otras formas de blending, hay que saber que el único alpha válido es de la componente difusa del material Si el modelo lo construye uno mismo mediante primitivas simples, en cada vértice hay que asignar una normal con glNormal. glColorMaterial(GL_FRONT_AND_BACK,GL_AMBIENT_AND_DIFFUSE); glEnable(GL_COLOR_MATERIAL); glLightModeli(GL_LIGHT_MODEL_LOCAL_VIEWER,0); glLightfv(GL_LIGHT0,GL_POSITION,lpos); // lpos[3]=0 -> infinito

33 Color y Sombreado 33 Simulación de materiales

34 Color y Sombreado 34 Interpolación del Sombrado void glShadeModel (GLenum mode);glShadeModel GL_SMOOTH (default) or GL_FLAT. - Flat Shading: El color calculado en uno de los vértices (generalmente el ultimo) define el color del polígono. - Gouraud Shading: El color resultante en cada vértice se interpola en cada píxel interior. - Phong Shading: Normales interpoladas y cálculo de iluminación en cada píxel (no está implementado en OpenGL y no confundir con el modelo de iluminación de Phong)


Descargar ppt "Computación Gráfica Modelado de la Iluminación y el Color Docentes: Néstor Calvo Ángel Calegaris Walter Sotil 2008."

Presentaciones similares


Anuncios Google