Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ndice
1. Modelos de iluminacin 4. Clculo de sombras
1. Luz ambiente 1. Algoritmo de doble pasada
2. Reflexin difusa 2. Volmenes de sombra
3. Reflexin especular 3. Algoritmos de sombras del Z-buffer
Luz
N incidente Ni
N
L
dA dA/cos
I = I A k a + I d k d ( N L)
I = I A k a + f at I d k d ( N L)
Por tanto la ecuacin se evala tres veces, para obtener 3 componentes de intensidad
I = I A k a + f at I d k d ( N L)
Reflexin especular
Tambin es direccional, pero el reflejo se produce en una direccin concreta
Luz
incidente Ni
Reflexin
especular
ideal
Reflexin
difusa
Modelo de iluminacin de Phong
[
I = I A k a + f at I d k d ( N L) + I e ke cos n ]
donde ke es el coeficiente de
f n especular
reflexin p u
N = L =1
N
R = N cos + S S S
S = N cos L L
R
De aqu deducimos que: V
R = 2 N ( N L) L
[
I = I A k a + f at I d k d ( N L) + I e ke ( R V ) n ]
Combinando los tres tipos
N
Mltiples fuentes de luz
Cuando hay varias luces, se suma el trmino para cada fuente
[
I = I A ka + i f at Iid kd ( N Li ) + Iie ke (Ri V )n ]
z z0 Iniebla
I ( z) = (I n I m ) + I m I
z1 z0
Imodelo Iintermedia
z0 z1
Focos de luz
Los focos son luces que iluminan slo en un
cierto cono visual
Se aade
S d un ffactor
t b booleano
l all t
trmino
i d de
cada fuente, siendo cero si el ngulo es
mayor que el del foco
Modelos de sombreado de polgonos
Se puede iluminar cualquier objeto calculando para cada punto visible su normal, y
evaluando la ecuacin del modelo de iluminacin muy costoso
Sombreado constante de polgonos
El modelo de iluminacin se evala en un solo punto de cada polgono
Un mesh
U h poligonal
li l se ver
mall debido
d bid all
cambio brusco de intensidad en las aristas
ficticias
Los vrtices
L reales
l tendrn
d ms
ded una
normal, una para cada superficie vecina
Sombreado de Gouraud
Otra ventaja:
ventaja si la luz cae en el interior del polgono y
los vrtices estn ms oscuros, con la interpolacin
de Gouraud no se vern con Phong s
Phong vs Gouraud
P1
P0
P0 P0
Problemas del sombreado interpolado II
Dependencia de la orientacin: el
resultado del modelo no es independiente B
de la orientacin del polgono se nota A
mucho en una animacin
A
P P
D C
B
D
C
Problemas en los vrtices compartidos: el
valor del vrtice C no va a coincidir A
normalmente con la interpolacin entre A y B
B
Problemas del sombreado interpolado III
Normales a los vrtices falseadas: en este ejemplo no habra variacin de color en
toda la superficie
poligonal
Superficies curvas
Aadiendo mltiples luces
Superficies curvas
Mltiples luces
Mapeo de texturas
Las tcnicas anteriores producen superficies suaves y uniformes no luce real
http://math.hws.edu/graphicsnotes/c2/s4.html
Mapeo de texturas
La textura viene definida en el espacio UV
Para cada pixel, los texels seleccionados se usan para sustituir o escalar una o ms de
las propiedades del material
v
Coordenadas de textura
A cada vrtice se le asocia una coordenada de textura
Si el mapa es una foto, puede que no coincida la direccin de la luz usada en la foto, con
l direccin
la di i de
d la
l luz
l de
d lla escena
Mapeo de rugosidades (bump mapping)
La tcnica consiste en no alterar la geometra de la superficie, sino perturbar las
normales antes de usarlas en el modelo de iluminacin
E realidad
En lid d es un array de
d ddesplazamientos
l i t
anterior
Bump mapping
Combinando texture map y bump map
Generacin de un render fotorealista
Aadiendo reflection mapping
V
anterior
Reflection mapping
Clculo de sombras
Hay que determinar qu superficies son vistas desde las fuentes de luz si no se ven, hay
sombras
[
I = I A ka + i i f at Iid kd ( N Li ) + Iie ke (Ri V )n ]
Clculo de sombras
Si las fuentes tuviesen reas
habran sombras y penumbras
Ej
Ejecuta
t ell mismo
i algoritmo:
l it
Primero desde la fuente de luz (slo una vez)
Luego desde el observador
Lo ms fcil es:
inicializar v=nmero de volmenes de sombra que me incluyen
Despus, por cada polgono de sombra frontal v++, y por cada trasero v
El polgono est en sombra si v > 0
NOTA: es ms rentable calcular un solo volumen de sombra para cada poliedro usando las
aristas de la silueta
Algoritmo de sombras del Z-buffer
Se ejecuta dos veces el z-buffer:
Una vez desde la fuente de luz
Otra vez desde el observador
Algoritmo de sombras del Z-buffer
Para crear la imagen final se usa un z-buffer modificado
Para cada pixel visible, transformo sus coordenadas (x,y,z) con referencia al ojo en
( ) con referencia
(x,y,z) f i a lla lluz
Los rayos de
L d luz
l no cambian
bi de
d di
direccin
i all
atravesar la superficie
P1
Para calcular la intensidad del pixel P se interpola
entre las intensidades de ambos polgonos
I = (1 kt1 )I 1 + kt1I 2
Radiosidad:
Es independiente del observador
Discretiza toda la escena en patches
pequeos
s
Evala la ecuacin de iluminacin en todos
los patches
Usa un algoritmo de visibilidad para
generar la escena
Simula muy bien los fenmenos difusos
No calcula reflexin especular
Ray-tracing
= + +
Ray-tracing
Es un esquema recursivo
N
Algoritmo recursivo ray-tracing
Funcion TrazaRayo (comienzo, direccin, profundidad, color)
color = negro
Si no
color.local = contribucin_local
Fin Si
}
Ejemplos de ray-tracing
Ms ejemplos
Radiosidad
Para cada polgono se estudia la contribucin de luz proveniente de todos los dems
polgonos de la escena
Una vez calculada la luz de cada polgono, pueden simularse paseos virtuales
Radiosidad: simulacin de interiores
Radiosidad: condiciones de luz
Radiosidad: escenarios sintticos