visualización computacional ii. quienes somos? profesor: dr. marcelo javier vénere:...

Post on 18-Apr-2015

6 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Visualización Computacional IIVisualización Computacional IIVisualización Computacional IIVisualización Computacional II

Quienes somos?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 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

top related