Libro Render
Libro Render
Libro Render
Texturado, iluminación
y render de imágenes
sintéticas
Diego Gutiérrez
Francisco José Serón
Informática Gráfica
Texturado, iluminación
y render de imágenes
sintéticas
Diego Gutiérrez
Francisco José Serón
Edita:
Departamento de Informática e Ingeniería de Sistemas
C/María de Luna 1, Campus Río Ebro, Edificio Ada Byron
50018 Zaragoza (España)
ISBN:
Depósito Legal:
Imprime:
Tabla de contenidos
1. Introducción 1
2. Modelos de iluminación local 7
3. Shading 27
4. Modelos de iluminación global 40
5. Ray tracing 52
6. Técnicas de aceleración de Ray Tracing 73
7. Sampling y antialiasing 82
8. Texturas 93
9. Luz virtual 139
10. Bibliografía 215
Grupo de Informática Gráfica Avanzada
Universidad de Zaragoza
Introducción
Diego Gutiérrez y Francisco J. Serón
Introducción
Ambitos
Introducción
Necesitamos:
¾ Descripción de la escena:
Forma de los objetos
Localización y orientación
Propiedades de las superficies
Fuentes de luz
...
¾ Información de la visibilidad:
Qué puntos son visibles?
Cómo están iluminados?
...
Polígonos
Geometría Curvas
Eliminación Superficies...
de líneas
ocultas
Luces
Render Shaders
Texturas...
Imágenes
Introducción
Introducción
Indice
Introducción
Tipos de reflexiones
Un modelo sencillo de
iluminación
Reflexión difusa: segundo
modelo
Reflexión especular:
modelo de Phong
Otro modelo más
completo
Transparencia
Color
Tipos de reflexiones
Problemas?
Reflexión difusa
Reflexión especular
Ecuación de la reflexión
Reflexión especular
Teníamos:
Ejemplos:
¾ Kd=0.4 Ia=0.2Ip
n=3 n=10 n=100
Ks=0.25
Ks=0.5
Transparencia
Color
Qué?
Diego Gutiérrez y Francisco J. Serón
Color
Color
Reproducción de tono
Shading
Diego Gutiérrez y Francisco J. Serón
Indice
Sombreado de polígonos
Sombreado plano
Sombreado de Gouraud
Sombreado de Phong
Cheap Phong
Coste computacional
Shading = sombreado
Conclusión:
Los polígonos son tus amigos
Sombreado de polígonos
Sombreado de polígonos
Diferentes enfoques:
¾ Repetimos el cálculo para todos los puntos del polígono (innecesario,
poco práctico, nada inteligente)
¾ Flat shading: calculamos en un punto del polígono (generalmente el
centroide) y con el valor obtenido pintamos todo el polígono
¾ Gouraud y Phong: calculamos en puntos clave del polígono (vértices)
e interpolamos
Mach banding
Mach banding
Sombreado de Gouraud
Sombreado de Gouraud
...con lo que sólo hace falta calcular ΔI y Δv una vez por scanline,
reduciendo los cálculos por pixel a una suma
Sombreado de Gouraud
Problemas de Gouraud:
¾ Las aristas tienden a desaparecer
¾ Los reflejos especulares pueden perderse si caen dentro de un solo
polígono
¾ Como hemos visto, las bandas de Mach no se eliminan del todo
Sombreado de Phong
Cheap Phong
Flat shading:
¾ Una sola vez
Gouraud
¾ Σscanlinespixels por scanline (Todo el modelo)
Cheap Phong
¾ Σscanlinespixels por scanline (N·L y R·V)
¾ Σscanlinespixels por scanline (Todo el modelo)
Phong
¾ Σscanlinespixels por scanline (N)
¾ Σscanlinespixels por scanline (N·L y R·V)
¾ Σscanlinespixels por scanline (Todo el modelo)
Iluminación Global
Diego Gutiérrez y Francisco J. Serón
Indice
Iluminación directa
¾ Fuentes de luz discretas
¾ Cálculos de iluminación eficientes basados en vectores de luz y
superficies (trucos!)
Iluminación indirecta
¾ Luz reflejada, dispersada, cáusticas...
¾ Cálculos basados en la física del transporte de luz en la escena
¾ BRDF’s (Bidireccional Reflective Distribution Function)
Luz indirecta
Color bleed
Color bleed
Luz indirecta
Objetivos
Objetivos
Objetivos
Ray Tracing
Diego Gutiérrez y Francisco J. Serón
Indice
Fenómeno real:
Ray tracing:
El nivel de recursividad
puede afectar al
resultado!
En el ejemplo, el nivel
de recursividad es 0,1,2
y 3 respectivamente
Otro ejemplo
Profundidad 1 (=recursividad 0)
Profundidad 2 (=recursividad 1)
Otro ejemplo
Profundidad 3 (=recursividad 2)
Profundidad 4 (=recursividad 3)
Características
Ventajas:
¾ Reflejos
¾ Transparencias y refracciones
¾ Sombras
¾ Diseño conceptualmente sencillo
Inconvenientes:
¾ No permite una solución completa al problema de la iluminación
global
¾ Utiliza aproximaciones a la solución real
Procedimiento (I)
Procedimiento (III)
Procedimiento (IV)
Sombras
Estructura de árbol
Intersección rayo-esfera
Esquema:
Intersección rayo-esfera
Intersección rayo-polígono
[Graphic Gems]
Continúa...
Diego Gutiérrez y Francisco J. Serón
Intersección rayo-polígono
[Graphic Gems]
Intersección rayo-polígono
[Graphic Gems]
[Graphic Gems]
Continúa...
Diego Gutiérrez y Francisco J. Serón
Intersección rayo-polígono
[Graphic Gems]
http://www.siggraph.org/education/materials/HyperGraph/raytrac
e/rt_java/raytrace.html
Indice
Introducción
Bounding volumes
Subdivisión espacial
Subdivisión espacial no uniforme:
octrees
Conclusiones
Bounding volumes
Bounding volumes
Subdivisión espacial
Idea general:
¾ Subdividir el espacio en regiones
¾ Hacer una lista con los objetos en cada región
¾ Sólo miramos las regiones por las que pasa el rayo
¾ Evitar computar dos veces una intersección si el objeto cae en dos o
más regiones
¿Qué ganamos?:
¾ Tras hallar la primera intersección, todos los objetos con los que
intersecta el rayo en su camino no son calculados
¾ En el ejemplo, sólo 3 voxels se han tenido en cuenta para la
intersección
Básicamente, lo que hacemos es testear intersecciones sólo en las
proximidades del rayo
Sampling y aliasing
Diego Gutiérrez y Francisco J. Serón
Indice
Qué es el aliasing
Mundo real vs. mundo digital
Sampling
Antialiasing uniforme
Antialiasing adaptativo
Qué es el aliasing
Qué es el aliasing
Sampling
Una imagen es, por lo general, una función continua I(x,y), que
da un valor de intensidad para cada coordenada (x,y)
Sampling
Antialiasing
¾ Jittered supersampling
Antialiasing
Antialiasing adaptativo:
¾ Supersampling en cada pixel: altamente ineficiente!
¾ El aliasing sólo es visible en zonas de alto contraste
¾ Los esquemas adaptativos localizan los pixels donde el antialiasing es
más necesario
Antialiasing adaptativo
Antialiasing
Texturas
Diego Gutiérrez y Francisco J. Serón
Indice
Aumentando el realismo
El concepto
Tipos de texturas
Mapeado bidimensional
¾ Planar, cilíndrico, esférico
Repetición de texturas
Superficies paramétricas
Texturas 3D
Bump y displacement mapping
Mapas de entorno
Antialiasing y mipmapping
Indice
Aumentando el realismo
Aumentando el realismo
Aumentando el realismo
El concepto
Las posibilidades son ilimitadas:
Tipos de texturas
Tipos de texturas
Mapeado bidimensional
Mapeado bidimensional
Mapeado bidimensional
Mapeado bidimensional
Interpolación lineal:
Efecto de la proyección
Efecto de la proyección
UN MOMENTO!!!!
SI
Diego Gutiérrez y Francisco J. Serón
UN MOMENTO!!!!
Mapeado bidimensional
Mapeado bidimensional
Para el mapeado S:
¾ Plano
¾ Cilindro
¾ Esfera
¾ Cubo
Para el mapeado O:
Mapeado planar
Mapeado planar
Mapeado cilíndrico
Mapeado esférico
Mapeado esférico
Mapeado en caja
Repetición de texturas
Superficies paramétricas
Superficies paramétricas
El canal alfa
Texturas 3D
Texturas 3D
Mármol, madera...
Procedimientos similares pueden aplicarse durante el modelado
Algunos ejemplos:
¾ gray = noise(x,y,z)
if(gray > threshold)
choose white
else choose black
¾ Madera a partir de
círculos concéntricos
¾ Mármol a partir de
noise(x,y,z)
Bump mapping
Bump mapping
Bump mapping
Bump mapping
Bump mapping
Mapas de entorno
<parentesis>
¾ No todo es ray-tracing en informática gráfica!!
</parentesis>
Mapas de entorno
Mapas de entorno
Antialiasing
Antialiasing
Mipmapping
Mipmapping
Mipmapping
(Blinn, 1978) J. Blinn, Simulations of Wrinkled Surfaces. Computer Graphics 12(3) August
1978, 286-292.
(Blinn and Newell, 1976) J. Blinn and M. Newell, Texture and Reflection in Computer
Generated Images. Communications of the ACM 19(10) October 1976, 542-546.
(Catmull, 1974) E. Catmull, A Subdivision Algorithm for Computer Display of Curved
Surfaces. PhD thesis, Department of Computer Science, University of Utah, December 1974.
(Catmull, 1978) E. Catmull, A Hidden-Surface Algorithm with Anti-Aliasing. Computer
Graphics 12 (3) August 1978, 6-10.
(Cook, 1984) R. Cook, Shade Trees. Computer Graphics 18 (3) July 1984 223-231.
(Crow, 1981) F. Crow, A Comparison of Antialiasing Techniques. IEEE Computer Graphics
and Applications. 1 (1) January 1981, 40-49.
(Peachey, 1985) D. Peachey, Solid Texturing of Complex Surfaces. Computer Graphics 19
(3) July 1985, 279-286.
(Perlin, 1985) K. Perlin, An Image Synthesizer. Computer Graphics 19 (3) July 1985, 287-
296.
(Williams, 1983) L. Williams, Pyradmial Parametrics. Computer Graphics 17 (3) July
1983, 1-11.
D. Ebert, F. K. Musgrave, D. Peachey, K. Perlin and S. Worley, Texturing and Modeling: A
Procedural Approach. Academic Press, 1994.
J. Foley, A. vanDam, S. Feiner and J. Hughes, Computer Graphics: Principles and
Practice. 2nd. ed. Addison-Wesley, 1990.
A. Watt and M. Watt, Advanced Animation and Rendering Techniques: Theory and
Practice. Addison-Wesley, 1992.
Aprender a iluminar es
aprender a observar
• Foco: énfasis
• Enfasis por
reconocimiento y
movimiento.
• Foco:
• Reconstruimos las escenas a
base de recorrer la imagen en
busca de puntos focales (2º)
• Equilibrio:
• Encuadre: imágenes que “se salen” de los límites del cuadro crean
un espacio más allá del encuadre. La composición queda más plana
si nada se sale del cuadro
• Encuadre
Aprender a iluminar es
aprender a observar
• El jarrón podría ser sólo una silueta oscura; los personajes estar
bien iluminados; la pared sumida en semisombra y el paisaje
fuertemente iluminado por la luz del sol.
• Podemos añadir más sensación de profundidad variando la
temperatura de la luz en cada plano (personajes con luz cálida y
luz más fría para la pared).
• Como toque final, podemos desenfocar tanto el jarrón como el
paisaje al fondo
Imágenes basadas en la
percepción: Sin limitarnos a
los cálculos físicos de la
interacción de la luz con la
materia.
Luz Virtual
• Una buena
composición
generalmente
juega con los
colores de
cada fuente de
luz
• Luz ocular
• Kicker
• Interreflexión difusa:
(Blinn, 1978) J. Blinn, Simulations of Wrinkled Surfaces. Computer Graphics 12(3) August
1978, 286-292.
(Blinn and Newell, 1976) J. Blinn and M. Newell, Texture and Reflection in Computer
Generated Images. Communications of the ACM 19(10) October 1976, 542-546.
(Catmull, 1974) E. Catmull, A Subdivision Algorithm for Computer Display of Curved
Surfaces. PhD thesis, Department of Computer Science, University of Utah, December 1974.
(Catmull, 1978) E. Catmull, A Hidden-Surface Algorithm with Anti-Aliasing. Computer
Graphics 12 (3) August 1978, 6-10.
(Cook, 1984) R. Cook, Shade Trees. Computer Graphics 18 (3) July 1984 223-231.
(Crow, 1981) F. Crow, A Comparison of Antialiasing Techniques. IEEE Computer Graphics
and Applications. 1 (1) January 1981, 40-49.
(Peachey, 1985) D. Peachey, Solid Texturing of Complex Surfaces. Computer Graphics 19
(3) July 1985, 279-286.
(Perlin, 1985) K. Perlin, An Image Synthesizer. Computer Graphics 19 (3) July 1985, 287-
296.
(Williams, 1983) L. Williams, Pyradmial Parametrics. Computer Graphics 17 (3) July
1983, 1-11.
D. Ebert, F. K. Musgrave, D. Peachey, K. Perlin and S. Worley, Texturing and Modeling: A
Procedural Approach. Academic Press, 1994.
J. Foley, A. vanDam, S. Feiner and J. Hughes, Computer Graphics: Principles and
Practice. 2nd. ed. Addison-Wesley, 1990.
A. Watt and M. Watt, Advanced Animation and Rendering Techniques: Theory and
Practice. Addison-Wesley, 1992.
Informática Gráfica
Texturado, iluminación y render de
imágenes sintéticas