Visualización Computacional II. Quienes somos? Profesor: Dr. Marcelo Javier Vénere:...
-
Upload
eulalio-forero -
Category
Documents
-
view
8 -
download
2
Transcript of Visualización Computacional II. Quienes somos? Profesor: Dr. Marcelo Javier Vénere:...
Visualización Computacional IIVisualización Computacional IIVisualización Computacional IIVisualización Computacional II
Quienes somos?Quienes somos?
Profesor:
Dr. Marcelo Javier Vénere: [email protected]
Ayudantes:
Ing. Juan P. D’Amato: [email protected]
Ing. Cristian García Bauza: [email protected]
Edificio PLADEMAEdificio PLADEMA
Logística Logística (o como va a ser la cosa…)(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 (OpenGL) 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/visdat2/index.htmlhttp://www.exa.unicen.edu.ar/catedras/visdat2/index.html
Horarios y LugaresHorarios y Lugares
Martes 21/10: Aula 2 (Facultad) 19-22 hs.Miércoles 22/10: Aula 2 (Facultad) 19-21 hs.Viernes 24/10: Aula 1 (Facultad) 18-21 hs.Lunes 27/10: Aula 3 (Facultad) 19-22 hs.Martes 28/10: Aula 2 (Facultad) 19-22 hs.Miércoles 29/10: A confirmar
Teórica:
InformaciónInformación
Bibliografía:
Foley, van Dam, Feiner, Hughes “Computer Graphics: Principles and Practice”.
Woo, Neider, Davis, Shreiner: “OpenGL Programming Guide”.
Alan Watt “3D Computer Graphics”.
IEEE Computer Graphics an applications.
ObjetivoObjetivo
Idea: Entender los principios y metodologías para lograr efectos especiales en aplicaciones 3D.
Resumen de la materiaResumen de la materia
Iluminación y transformaciones.
Texturas.
Raycasting, Raytracing y Radiosity.
Sombras.
Animación y comportamiento físico.
Optimizaciones.
TransformacionesTransformaciones
P1
P2
Pi
Pi = (px, py)
Las transformaciones se aplican sobrelos puntos que definen el objeto
Transformaciones SimplesTransformaciones Simples
Escala isotrópica
Pi = S.Pi
Pi = (px, py)
sx 00 syS =
Transformaciones SimplesTransformaciones Simples
Traslación
Pi = Pi + D
Pi = (px, py)
D = (dx, dy)
dxdy
Transformaciones SimplesTransformaciones Simples
Rotación
Pi = R.Pi
Pi = (px, py)
cos -sin sin cos R =
Como representar las transformaciones?Como representar las transformaciones?
x' = ax + by + c
y' = dx + ey + f
x'
y'
a b
d e
c
f=
x
y+
p' = M p + t
Coordenadas homogeneasCoordenadas homogeneas
Se agrega una dimensión extraen 2D, se usa 3 x 3 matrices
en 3D, se usa 4 x 4 matrices
Cada punto tiene entonces un valor extra, w
x'
y'
z'
w'
=
x
y
z
w
a
e
i
m
b
f
j
n
c
g
k
o
d
h
l
p
p' = M p
Pasar a coordenadas homogeneasPasar a coordenadas homogeneas
x' = ax + by + c
y' = dx + ey + f
x'
y‘
1
a b
d e
0 0
c
f
1
=x
y
1
p' = M p
x'
y'
a b
d e
c
f=
x
y+
p' = M p + t
Forma Afín Forma Homogénea
Traslación (Traslación (ttxx, t, tyy, t, tzz))
Por que utilizar coordenadas homogéneas?Porque ahora las traslaciones se expresan como matriz!
x'
y'
z'
0
=
x
y
z
1
1
0
0
0
0
1
0
0
0
0
1
0
tx
ty
tz
1
x'
y'
z'
1
Escala (Escala (ssxx, s, syy, s, szz))
Isotrópica (uniforme) scaling: sx = sy = sz
x'
y'
z'
1
=
x
y
z
1
sx
0
0
0
0
sy
0
0
0
0
sz
0
0
0
0
1
Scale(s,s,s)
x
p
p'
qq'
y
RotaciónRotación
Sobre eje z
x'
y'
z'
1
=
x
y
z
1
cos θ
sin θ
0
0
-sin θ
cos θ
0
0
0
0
1
0
0
0
0
1
ZRotate(θ)
x
y
z
p
p'
θ
RotaciónRotación
General
x'
y'
z'
1
=
x
y
z
1
r12r22r320
0
0
0
1
r11r21r310
r13r23r330
V’ = RR . V
Proyección en perspectivaProyección en perspectiva
x'
y'
z'
w’
=
x
y
z
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
1
1/d
V’ = P. RP. R . V
Necesidad de un modelo de iluminaciónNecesidad de un modelo de iluminación
Difusor perfectoDifusor perfecto
Asumimos que la superficie refleja igual en todas las direcciones.
Ejemplo: tiza, arcilla, algunas pinturas
Superficie
R = I.KrG = I.KgB = I.Kb
I
Cantidad de luz recibidaCantidad de luz recibida
n
Surface
n
nI0
I0I = I0.cos
R = I0.cos .KrG = I0.cos .KgB = I0.cos .Kb
ReflejosReflejos
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
Surface
l
n
r
Reflectores no idealesReflectores no ideales
Materiales reales no son como espejos.
Brillos no son puntuales sino borrosos
Reflectores no idealesReflectores 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 PhongEl modelo Phong
Parámetros
ks: coeficiente reflexión especular
q : exponente reflexión especular
Surface
L
nr
Cámara
V
I = I0.Ks.cosq
El modelo PhongEl modelo Phong
Efecto del coeficiente q
Cálculo de la dirección especularCálculo de la dirección especular
Surface
L
n
r
r
LnLnr
nLr
)(2
cos 2
R = I0.((1-Ks).Kr. L.n + Ks. (V.r)q)G = I0.((1-Ks).Kg. L.n + Ks. (V.r)q)B = I0.((1-Ks).Kb. L.n + Ks. (V.r)q)
Surface
Modelo de iluminación simpleModelo de iluminación simple
R =Ia.Kr + I0.((1-Ks).Kr. L.n + Ks. (V.r)q)G = Ia.Kg + I0.((1-Ks).Kg. L.n + Ks. (V.r)q)B = Ia.Kb + I0.((1-Ks).Kb. L.n + Ks. (V.r)q)
Modelos de iluminación (resumen)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)
Surface
LV
r n
Kr, Kg, Kb Ks, q
Propiedadesdel cuerpo
Intensidad de la luzIntensidad de la luz
Decae como 1/r2
Misma energía en todas las direcciones
En realidad se usa 1/r
Modelo de iluminación simpleModelo de iluminación simple
Flat shadingGourard shading
Gourard shadingGourard shading
Ir1 , Ig1 , Ib1 Ir2 , Ig2 , Ib2
Ir3 , Ig3 , Ib3
Irpixel= (Ir1.A1+Ir2.A2+Ir3.A3)/A
n1 , n2 , n3
A1
A3
A2
1
2
3
Phong shadingPhong shading
n1 , n2 , n3
npixel
Ir , Ig , Ib
Modelo de iluminación simpleModelo de iluminación simple
Modelo de iluminación simpleModelo de iluminación simple
Que falta tener en cuenta?Que falta tener en cuenta?
Texturas
Sombras
Transparencias
Reflexiones
Refracciones
Fuentes no puntuales
Iluminación proveniente de otros objetos
Para obtener imágenes realistas
Resumen - Resumen - TexturasTexturas
•Por qué usar texturas•Conceptos básicos•Mapeo y Tiling•Filtros y Mipmapping•Lightmaps y efectos.•Environment Mapping
Resumen - Resumen - SombrasSombras
•Fake shadows•Planar & Projective•Shadow Mapping•Shadow volumes
TransparenciasTransparencias
Refracción Refracción
ReflexionesReflexiones
Ray TracingRay Tracing
I = Ilocal + Ireflejada + Irefractada
Sombras difusasSombras difusas
RadiosityRadiosity
Que falta tener en cuenta?Que falta tener en cuenta?
Para lograr realidad virtual
Matrix
Inmersión
Comportamientos realistas
Efectos físicosEfectos físicos
Efectos físicosEfectos físicos