Visualizacin Computacional II Quienes somos Profesor Dr Marcelo

  • Slides: 52
Download presentation
Visualización Computacional II

Visualización Computacional II

Quienes somos? Profesor: Dr. Marcelo Javier Vénere: venerem@exa. unicen. edu. ar Ayudantes: Ing. Juan

Quienes somos? Profesor: Dr. Marcelo Javier Vénere: venerem@exa. unicen. edu. ar Ayudantes: Ing. Juan P. D’Amato: jpdamato@exa. unicen. edu. ar Ing. Cristian García Bauza: crgarcia@exa. unicen. edu. ar Edificio PLADEMA

Logística (o como va a ser la cosa…) Seis clases teóricas repartidas entre esta

Logística (o como va a ser la cosa…) Seis clases teóricas repartidas entre esta semana y la que viene. Dos prácticas (a confirmar) para explicación de conceptos (Open. GL) y uso de tutoriales. Tres prácticas adicionales Forma de evaluación: Cursada y Final con un trabajo. Una entrega a corto plazo (antes de fin de año) y entrega final posterior. http: //www. exa. unicen. edu. ar/catedras/visdat 2/index. html

Horarios y Lugares Teórica: Martes 21/10: Miércoles 22/10: Viernes 24/10: Lunes 27/10: Martes 28/10:

Horarios y Lugares Teórica: Martes 21/10: Miércoles 22/10: Viernes 24/10: Lunes 27/10: Martes 28/10: Miércoles 29/10: Aula 2 (Facultad) Aula 1 (Facultad) Aula 3 (Facultad) Aula 2 (Facultad) A confirmar 19 -22 hs. 19 -21 hs. 18 -21 hs. 19 -22 hs.

Información Bibliografía: Foley, van Dam, Feiner, Hughes “Computer Graphics: Principles and Practice”. Woo, Neider,

Información Bibliografía: Foley, van Dam, Feiner, Hughes “Computer Graphics: Principles and Practice”. Woo, Neider, Davis, Shreiner: “Open. GL Programming Guide”. Alan Watt “ 3 D Computer Graphics”. IEEE Computer Graphics an applications.

Objetivo Idea: Entender los principios y metodologías para lograr efectos especiales en aplicaciones 3

Objetivo Idea: Entender los principios y metodologías para lograr efectos especiales en aplicaciones 3 D.

Resumen de la materia Iluminación y transformaciones. Texturas. Raycasting, Raytracing y Radiosity. Sombras. Animación

Resumen de la materia Iluminación y transformaciones. Texturas. Raycasting, Raytracing y Radiosity. Sombras. Animación y comportamiento físico. Optimizaciones.

Transformaciones Las transformaciones se aplican sobre los puntos que definen el objeto P 1

Transformaciones Las transformaciones se aplican sobre los puntos que definen el objeto P 1 Pi P 2 Pi = (px, py)

Transformaciones Simples Escala isotrópica Pi = (px, py) S= sx 0 0 sy Pi

Transformaciones Simples Escala isotrópica Pi = (px, py) S= sx 0 0 sy Pi = S. Pi

Transformaciones Simples Traslación dy dx Pi = Pi + D Pi = (px, py)

Transformaciones Simples Traslación dy dx Pi = Pi + D Pi = (px, py) D = (dx, dy)

Transformaciones Simples Rotación Pi = (px, py) cos -sin R = sin cos Pi

Transformaciones Simples Rotación Pi = (px, py) cos -sin R = sin cos Pi = R. Pi

Como representar las transformaciones? x' = ax + by + c y' = dx

Como representar las transformaciones? x' = ax + by + c y' = dx + ey + f x' = y' p' = a d b e Mp x c + y f + t

Coordenadas homogeneas Se agrega una dimensión extra en 2 D, se usa 3 x

Coordenadas homogeneas Se agrega una dimensión extra en 2 D, se usa 3 x 3 matrices en 3 D, se usa 4 x 4 matrices Cada punto tiene entonces un valor extra, w a b x' e f y' = i j z' m n w' c g k o d h l p p' = Mp x y z w

Pasar a coordenadas homogeneas x' = ax + by + c y' = dx

Pasar a coordenadas homogeneas x' = ax + by + c y' = dx + ey + f Forma Afín x' = y' p' = a d b e Forma Homogénea x c + y f Mp + t x' = y‘ 1 p' = a b c d e f 0 0 1 Mp x y 1

Traslación (tx, ty, tz) Por que utilizar coordenadas homogéneas? Porque ahora las traslaciones se

Traslación (tx, ty, tz) Por que utilizar coordenadas homogéneas? Porque ahora las traslaciones se expresan como matriz! x' y' z' 10 = 1 0 0 0 0 1 0 tx ty tz 1 x y z 1

Scale(s, s, s) Escala (sx, sy, sz) p' y p Isotrópica (uniforme) scaling: sx

Scale(s, s, s) Escala (sx, sy, sz) p' y p Isotrópica (uniforme) scaling: sx = sy = sz x' y' z' 1 sx 0 = 0 0 q q' x 0 sy 0 0 sz 0 0 1 x y z 1

Rotación y ZRotate(θ) p' Sobre eje z θ p x z x' y' z'

Rotación y ZRotate(θ) p' Sobre eje z θ p x z x' y' z' 1 = cos θ -sin θ cos θ 0 0 0 1 x y z 1

Rotación General x' y' z' 1 = r 11 r 21 r 31 0

Rotación General x' y' z' 1 = r 11 r 21 r 31 0 r 12 r 22 r 32 0 V’ = R. V r 13 r 23 r 33 0 0 1 x y z 1

Proyección en perspectiva x' y' = z' w’ 1 0 0 0 0 1

Proyección en perspectiva x' y' = z' w’ 1 0 0 0 0 1 1/d V’ = P. R. V 0 0 x y z 1

Necesidad de un modelo de iluminación

Necesidad de un modelo de iluminación

Difusor perfecto Asumimos que la superficie refleja igual en todas las direcciones. Ejemplo: tiza,

Difusor perfecto Asumimos que la superficie refleja igual en todas las direcciones. Ejemplo: tiza, arcilla, algunas pinturas R = I. Kr G = I. Kg B = I. Kb I Superficie

Cantidad de luz recibida I 0 n n I = I 0. cos n

Cantidad de luz recibida I 0 n n I = I 0. cos n R = I 0. cos . Kr G = I 0. cos . Kg B = I 0. cos . Kb Surface I 0

Reflejos Reflexión ocurre solo en la dirección especular. Depende de la posición relativa de

Reflejos Reflexión ocurre solo en la dirección especular. Depende de la posición relativa de la fuente de luz y el punto de vista n r l Surface

Reflectores no ideales Materiales reales no son como espejos. Brillos no son puntuales sino

Reflectores no ideales Materiales reales no son como espejos. Brillos no son puntuales sino borrosos

Reflectores no ideales Modelo empírico simple: Se supone que la luz se reflejará en

Reflectores no ideales Modelo empírico simple: Se supone que la luz se reflejará en la dirección del rayo ideal. Sin embargo, debido a imperfecciones microscópicas de la superficie, algunos rayos reflejados se apartarán un poco de la dirección ideal.

El modelo Phong Parámetros I = I 0. Ks. cosq ks: coeficiente reflexión especular

El modelo Phong Parámetros I = I 0. Ks. cosq ks: coeficiente reflexión especular q : exponente reflexión especular n r Cámara L V Surface

El modelo Phong Efecto del coeficiente q

El modelo Phong Efecto del coeficiente q

Cálculo de la dirección especular R = I 0. ((1 -Ks). Kr. L. n

Cálculo de la dirección especular R = I 0. ((1 -Ks). Kr. L. n + Ks. G = I 0. ((1 -Ks). Kg. L. n + Ks. (V. r)q) B = I 0. ((1 -Ks). Kb. L. n + Ks. (V. r)q) n (V. r)q) r r Surface L

Modelo de iluminación simple R =Ia. Kr + I 0. ((1 -Ks). Kr. L.

Modelo de iluminación simple R =Ia. Kr + I 0. ((1 -Ks). Kr. L. n + Ks. (V. r)q) G = Ia. Kg + I 0. ((1 -Ks). Kg. L. n + Ks. (V. r)q) B = Ia. Kb + I 0. ((1 -Ks). Kb. L. n + Ks. (V. r)q) Surface

Modelos de iluminación (resumen) R = Ia. Kr + Σ Ii. ((1 -Ks). Kr.

Modelos de iluminación (resumen) R = Ia. Kr + Σ Ii. ((1 -Ks). Kr. Li. n + Ks. (V. ri)q) G = Ia. Kg + Σ Ii. ((1 -Ks). Kg. Li. n + Ks. (V. ri)q) B = Ia. Kb + Σ Ii. ((1 -Ks). Kb. Li. n + Ks. (V. ri)q) Propiedades del cuerpo Kr, Kg, Kb Ks, q V r n Surface L

Intensidad de la luz Decae como 1/r 2 Misma energía en todas las direcciones

Intensidad de la luz Decae como 1/r 2 Misma energía en todas las direcciones En realidad se usa 1/r

Modelo de iluminación simple Flat shading Gourard shading

Modelo de iluminación simple Flat shading Gourard shading

Gourard shading n 1 , n 2 , n 3 Ir 1 , Ig

Gourard shading n 1 , n 2 , n 3 Ir 1 , Ig 1 , Ib 1 Ir 2 , Ig 2 , Ib 2 Ir 3 , Ig 3 , Ib 3 3 A 2 A 1 A 3 Irpixel= (Ir 1. A 1+Ir 2. A 2+Ir 3. A 3)/A 1 2

Phong shading n 1 , n 2 , n 3 npixel Ir , Ig

Phong shading n 1 , n 2 , n 3 npixel Ir , Ig , Ib

Modelo de iluminación simple

Modelo de iluminación simple

Modelo de iluminación simple

Modelo de iluminación simple

Que falta tener en cuenta? Texturas Sombras Para obtener imágenes realistas Transparencias Reflexiones Refracciones

Que falta tener en cuenta? Texturas Sombras Para obtener imágenes realistas Transparencias Reflexiones Refracciones Fuentes no puntuales Iluminación proveniente de otros objetos

Resumen - Texturas • Por qué usar texturas • Conceptos básicos • Mapeo y

Resumen - Texturas • Por qué usar texturas • Conceptos básicos • Mapeo y Tiling • Filtros y Mipmapping • Lightmaps y efectos. • Environment Mapping

Resumen - Sombras • Fake shadows • Planar & Projective • Shadow Mapping •

Resumen - Sombras • Fake shadows • Planar & Projective • Shadow Mapping • Shadow volumes

Transparencias

Transparencias

Refracción

Refracción

Reflexiones

Reflexiones

Ray Tracing I = Ilocal + Ireflejada + Irefractada

Ray Tracing I = Ilocal + Ireflejada + Irefractada

Sombras difusas

Sombras difusas

Radiosity

Radiosity

Que falta tener en cuenta? Para lograr realidad virtual Inmersión Comportamientos realistas Matrix

Que falta tener en cuenta? Para lograr realidad virtual Inmersión Comportamientos realistas Matrix

Efectos físicos

Efectos físicos

Efectos físicos

Efectos físicos