Grficas Interactivas - PowerPoint PPT Presentation

1 / 78
About This Presentation
Title:

Grficas Interactivas

Description:

T cnicas mas modernas incluyen photon mapping y variaciones de raytracing y ... Jittering. Manda rayos a trav s de puntos seleccionados al azar dentro del pixel ... – PowerPoint PPT presentation

Number of Views:54
Avg rating:3.0/5.0
Slides: 79
Provided by: charl220
Category:

less

Transcript and Presenter's Notes

Title: Grficas Interactivas


1
Gráficas Interactivas
  • Isaac Rudomín (Instructor)
  • rudomin_at_itesm.mx
  • Erik Millán (asistente)
  • emillan_at_itesm.mx

2
Iluminación Global
  • Introducción
  • Ray Tracing
  • Radiosidad
  • Photon mapping

3
Iluminación Global
  • Iluminación basada en la escena completa
  • Iluminación basada en física
  • Representada trdicionelmente por dos algoritmos
  • Raytracing 1980
  • Radiosidad 1984
  • Técnicas mas modernas incluyen photon mapping
    y variaciones de raytracing y radiosidad

4
Raytracing
5
Raytracing
Albrecht Duerer, Underweysung der Messung mit
dem Zirkel und Richtscheyt (Nurenberg, 1525),
Book 3, figure 67.
6
Raytracing - Base
  • Representa iluminación global especular
  • Traza luz hacia atrás desde el ojo, a través del
    pixel,a la escena
  • Recursivamente rebota en los objetos, acumulando
    un color para ese pixel
  • Salida es una sola imagen de la escena

7
Raycasting vs. Raytracing
8
Ray Casting
Pantalla
Ojo
Escena
9
Raytracing - Pros
  • idea sencilla con buenos resultados
  • interacción entre objetos posible
  • Sombras
  • Reflejos
  • Refracción
  • Basado en iluminación del mundo real

10
Raytracing - Contra
  • Mucho tiempo
  • Aceleraciones usualmente dependen de la escena
  • Iluminación muy contundente, sin aristas suaves,
    si no se usan técnicas mas avanzadas
  • Dificil poner en hardware (ya no tanto)

11
Ray Tracing Historia
  • Appel 68
  • Whitted 80 recursive ray tracing
  • Se trabaja en varias primitivas geométricas y en
    aceleración
  • Actualmente se investiga
  • Real-Time raytracing (historically, slow
    technique)

12
Sombras
Fuente de luz
Ojo
Rayo de sombra a luz bloqueado objeto en sombra
Pantalla
Objectos
13
Sombras Suaves
  • En vez de luz puntual usa objeto con área
  • Manda rayos con jitter hacia la luz y cuenta solo
    los que le atinan

Sombra dura
Somba suave
14
Reflexiones especulares/refracción
Ojo
pantalla
Objectos
9.6 in textbook
15
Ray Tracing Recursivo
  • Para cada pixel
  • Traza rayo primario desde el ojo hasta
    intersección
  • Traza rayos de sombra a todas las luces
  • Color Visible ? Illumination Model 0
  • Traza rayos reflejados o refractados
  • Color reflectivity Color of reflected ray
  • Cuando detener recursión?

Also see section 9.4 in text
16
Turner Whitted 1980
17
Intersecciones Rayo/Objecto
  • Corazón de Ray Tracer
  • Área de investigación inicial
  • Rutinas optimizadas para varias primitivas
  • Diversos tipos de información
  • Rayos de sombra Intersecta o no
  • Rayos principales Punto de intersección,
    material, normales
  • Texture coordinates
  • Ejemplos
  • Triágulo, esfera, polígono, implícita

Section 9.3
18
Intersecciones con rayo
  • Se reduce a resolver para t
  • x xs t xd
  • y ys t yd
  • z zs t zd
  • Esfera es muy sencillo
  • (x-x0)2(y-y0)2(z-z0)2r2
  • Substituye ecuación del rayo y resuelve para t

19
Esfera
20
Intersección con un plano
  • Ecuación del plano
  • AxByCzD0
  • (A,B,C) normal al plano
  • Dado un punto y la normal, calcular D

21
Intersección con polígono
  • Dada intersección con plano
  • El punto esta dentro del poligono?

22
Punto en polígono
  • inside( vert v, int n, float x, float y )
  • int cross0 float x0, y0, x1, y1
  • x0 vn-1.x x
  • y0 vn-1.y y
  • while (n--)
  • x1 v-gtx x
  • y1 v-gty y
  • if (y0 gt 0)
  • if (y1 lt 0 x1y0 gt y1x0) cross
  • else
  • if (y1 gt 0 x0y1 gt y0x1) cross
  • x0 x1 y0 y1 v
  • return cross 1

23
Intersección con primitivas diversas
24
Aceleración
Lento!
Intersección mas veloz
Menos rayos
Rayos generalizados
N
1
  • Malla uniforme
  • Jerarquía espacial
  • K-D
  • Octtree
  • BSP
  • Mallas jerárquicas
  • Volumen acotante
  • jerárquico

Cotas mas justas Intersector mas rápido
Terminación Temprana de rayos Muestreo
adaptativo
Beam tracing Cone tracing Pencil tracing
25
Malla uniforme
  • Preprocesa escena
  • Encuentra bounding box
  • Determina resolución de malla
  • Coloca objeto en celda si su bounding box está
    sobrepuesto en la celda
  • Checa que objeto si este en celda (caro)

26
Malla uniforme
  • Preprocesa escena
  • Recorre malla
  • linea 3D 3D-DDA
  • linea 6-conexa

27
Jerarquía espacial
A
D
B
B
C
C
D
A
Hojas son regiones únicas en espacio Búsqueda de
puntos es recursiva
28
Variaciones
KD tree
octtree
BSP tree
29
Mallas Jerárquicas
  • Compromiso que gusta a algunos

30
Bounding VolumesJerárquicos
  • Crea árbol de bounding volumes
  • Hijos contenidos en padres
  • Creación
  • A partir de jerarquía del modelo
  • Agrupamiento automático
  • Search
  • intersect(node,ray,hits)
  • if( intersectp(node-gtbound,ray)
  • if( leaf(node) )
  • intersect(node-gtprims,ray,hits)
  • else
  • for each child
  • inter sect(child,ray,hits)

31
Supersampling I
  • Problema cada pixel de la imagen representa un
    solo rayo
  • Aliasing
  • Imágenes muy contundentes
  • Solución Mandar múltiples rayos a través de
    cada pixel y promediar los colores

32
Supersampling II
  • Supersampling Directo
  • Divide cada pixel a en una maya y manda rayos a
    través de cada punto de la malla
  • Supersampling Adaptivo
  • Divide cada pixel solo si son significativamente
    distintos de sus vecinos
  • Jittering
  • Manda rayos a través de puntos seleccionados al
    azar dentro del pixel

33
Distributed Ray Tracing
  • Distribuir rayos estocásticamente
  • Pixel antialiasing
  • Fuente de luz sombras suaves
  • Función de reflexión reflejos suaves reflections
  • Tiempo motion blur
  • Lente profundidad de campo

34
Raytracing Interactivo
  • Ray tracing ha sido lento
  • Ahora es viable para escenas complejas
  • Clave es complejidad sublineal con aceleración
  • Permite algunos efectos en hardware
  • OpenRT (http//www.openrt.de)

35
Raytracing en Hardware Gráfico
  • Permitido por la arquitectura de hardware gráfico
    programable
  • (de hecho versión sencilla en SDK Browser de
    Nvidia. Ir con Erik si quieren verlo)
  • Purcell et al. 2002, 2003
  • http//graphics.stanford.edu/papers/photongfx

36
(No Transcript)
37
Radiosidad
From Cornell University
38
Radiosidad Concepto
  • Radiosidad de cada superficie depende de la
    radiosidad de todas las demás superficies
  • Iluminación global como sistema lineal
  • Necesita BRDF constante (difuso)
  • Resuelve ecuación de render como problema
    matricial
  • Proceso
  • Divide en parches
  • Calcula factores de forma
  • Resuelve radiosidad
  • Dibuja parches

39
Radiosidad - Base
  • Radiosidad de una superficie razón en la que la
    energía deja una superficie
  • Emitida por la superficie y reflejada de otras
    superficies
  • Representa iluminación global difusa
  • Crea sistemas de enrgía cerrados donde todo
    polígono emite o refleja luz hacia todos los
    demás polígonos
  • Calcula como la energía luminosa se dispersa en
    el sistema
  • La radiosidad de cada superficie
  • Depende de las propiedades de emisión
  • Depende de relación con otras superficies (form
    factors)
  • Salida es una maya poligonal con colores
    precalculados para cada vértice (o light maps!!!!)

40
Radiosidad - Pros
  • Independiente de punto de vista significa
    despliegue en tiempo real despues de los cálculos
    iniciales
  • Interacción entre objetos
  • Sombras suaves
  • Luz indirecta
  • Color bleeding
  • Simulación exacta de transferencia de energía

41
Radiosidad - Contra
  • Form factors debe recalcularse si cualquier cosa
    se mueve
  • Costos computacionales y de almacenamiento son
    grandes
  • Luz no difusa no representada
  • Espejos y otros objetos brillantes difíciles de
    incluir
  • Efectos de iluminación son desenfocados si no se
    hace bién la subdivisión
  • No aplica a superficies definidas proceduralmente

42
RadiosidadRadiometría
  • Ecuación de rendering (flujo)
  • Lujo de energía radiante F
  • Radiancia sobre un área en todas direcciones
  • Radiosidad (B)
  • Flujo por unidad de area
  • Radiosidad emitida E
  • Reflejos difusos
  • BRDF Ideal fr 1/p
  • Reflectividad r p fr
  • Factor de Forma (F)
  • Encapsula factores geométricos

Fi
Fo
43
Factor de Forma
Ai
fi
fj
r
  • FdAidAj parte de flujo radiante que sale de un
    punto en el parche i que llega a un punto en
    el parche j
  • FdAiAj parte de flujo radiante que sale de un
    unto en el parche i que llega a todo el parche
    j
  • Fij parte de flujo radiante que sale de todo el
    parche i que llega a todo el parche j
  • (Intensidad flujo por ángulo sólido)
  • Fii 0 (parches planos)
  • Fij 0 si hay oclusión
  • AiFij AjFji
  • Fij no tiene dimensionalidad

Aj
44
Cálculo de Factores de Forma
DA
  • Teorema de Stokes
  • Goral et al. SIGGRAPH 84
  • Reemplaza integral de área con integral de
    contorno
  • Análogo de Nusselt
  • Proyectar parche a
  • Hemicubo
  • Medio cubo de z-buffers
  • Problemas con Aliasing
  • Hemisferio
  • Ray casting
  • Muestréo estratificado

45
Nusselts Analog
Proyecta analíticamente A hemisferio sobre
el Punto. Despues proyecta a base de hemisferio.
Form factor es la razón De la area en la base
sobre El area de toda la base
46
Hemicubo
47
Matriz de Radiosidad
Ei
Bi
48
Reunir
  • Resuelve como sistema lineal Ax b
  • MB E
  • Jacobi
  • Bi(k1) Ei Sj?i Mij Bj(k)
  • Radiosidad Emitancia mas radiosidades
    reflejadas
  • Gauss-Siedel
  • Bi Ei Sj?i Mij Bj
  • Funciona en el mismo lugar
  • Sobre relajación
  • Bi(k1) 110 Bj(k1) 10 Bj(k)
  • Gauss-Siedel demasiado conservador

Bi
49
Disparar
Bi
  • Refinamiento progresivo
  • Distribuue radiosidad extra DBi a otros parches j
  • Bj(k1) Bj(k) rjFji DBi
  • Radiosidad extra no disparada es lo obtenido en
    la iteración anterior
  • DBi Bj(k) Bj(k-1)
  • Energía comienza en emisores
  • Se distribuye progresivamente en escena
  • Puede usar término ambiente para desplegar
    escena, que se va quitando al ir convergiendo la
    radiosidad

IBM
50
Monte Carlo Ray Tracing
  • Puede usarse para encontrar form factors (lento)
  • Puede usarse directamente para disparar energía

51
(No Transcript)
52
Otros efectos de iluminación global
  • Caustica Enfocar a través de superficie
    especular
  • Aún es tema de investigación

53
Photon Mapping
From http//graphics.ucsd.edu/henrik/images/globa
l.html
54
Photon Mapping Base
  • Mejora a Ray Tracing
  • Simula cáustica (fondo de piscina)
  • Intereflexión difusa
  • Nubes y Humo

55
Photon Mapping
  • Fotones se emiten (con ray tracing) desde
    fuentes de luz
  • Los fotones rebotan o son absorbidos
  • Los fotones se guardan en un photon map, con
    posición y dirección de entrada
  • El mapa está desacoplado de la geometría

56
Photon Mapping
  • Paso de Ray Tracing usa los N fotones mas
    cercanos a cada intersección de rayo y estima la
    radiancia de salida
  • Reflexión especular puede hacerse como ray
    tracing usual para reducir número de fotones
  • Hay muchas extensiones a la idea que permiten
    efectos mas complejos

57
Photon Mapping - Pros
  • Preproceso es independiente de vista
  • Interacción entre objectos incluye
  • Sombras
  • Iluminación indirecta
  • Color bleeding
  • Brillos y reflejos
  • Caustica
  • Funciona para superficies definidas
    proceduralmente

58
Photon Mapping - Cons
  • Lento, aunque menos que Ray Tracing puro
  • Photon map no es facil de actualizar dados
    cambios pequeños a la escena

59
Ecuación de Render (Kajiya 86)
60
Ecuación de render es Ecuación Integral
61
Técnicas de solución
  • Todos los métodos de iluminación global tratan
    de resolver (aproximaciones de) la ecuación de
    render
  • Solución numérica pues la analítica es dificil
  • Radiosidad es básicamente resolverla mediante
    métodos tipo elemento finito
  • Ray Tracing distrubuido es básicamente usar
    métodos Monte Carlo

62
Render en aplicaciones comerciales
  • mental ray - http//www.mentalimages.com/
  • Maya - http//www.alias.com/eng/index.shtml
  • 3ds max - http//www.discreet.com/
  • Lightwave 3D - http//www.newtek.com/
  • RenderMan Repository - http//www.renderman.org/
  • RenderMan - https//renderman.pixar.com/

63
Aplicaciones Gratuitas
  • POV-Ray The Persistence of Vision Raytracer
    http//www.povray.org/
  • 3Delight - http//www.3delight.com/
  • Lucille - http//web.sfc.keio.ac.jp/syoyo/lucille
    /
  • OpenRT - http//www.openrt.de/index.html
  • Radiance - http//radsite.lbl.gov/radiance/HOME.ht
    ml
  • RenderPark - http//www.cs.kuleuven.ac.be/cwis/res
    earch/graphics/RENDERPARK/
  • SunFlow - http//sunflow.sourceforge.net/

64
Reyes Rendering
  • Desarrollado por Lucasfilm
  • En uso por Pixar (Renderman)

65
Idea Fundamental
  • Subdividir primitivas en micropoligolos de ½
    pixel

66
Algoritmo Reyes
Lee modelo
subdivide
sombrea
textura
visibilidad
muestreo
imagen
67
Micropoligonos
68
Porque micropoligonos?
  • Iluminación a resolución mayor a pixel
  • Phong
  • Desplazamiento local de geometría
  • Displacement maps
  • Texture mapping

69
Sampling
70
Reyes ventajas/desventajas?
  • ventajas
  • Rápido para ser fotorealista
  • Modelos mayores a memoria
  • Ddesventajas
  • Reflexion y transmisión es cara
  • Iluminación compleja es cara

71
Non-Photorealistic RenderingPainting, Drawing,
Sketching
72
Non-Photorealistic Rendering
  • Using a term like nonlinear science is like
    referring to the bulk of zoology as the study of
    nonelephant animals
  • Fotorealismo meta ancestral de gráficas
  • Non-photorealistic rendering
  • Técnicas que buscan estilo, expresividad,
    abstracción, incertidumbre, etc
  • Nombre malo
  • Mejor stylized rendering, artistic rendering,
    abstract rendering

73
Stylized Rendering
  • NPR se usa sobre todo para simular un estilo o
    medio particular
  • Pintura Impressionista
  • Dibujo a tinta, lapiz, grabado
  • Cartoon

74
Toon shading
  • Toon shading busca imitar efecto de cartoon
  • Tendencias en cartoon/comic
  • Sombreado simple, plano
  • Dos tonos (luz/sombra) or Tres tonos
    (luz/sombra/brillo)
  • Dibujo de aristas
  • Borde
  • Doblez
  • Material
  • Silueta

75
Resultados (Venus, efectos via GPU)
Wireframe Translation Fattening 40
fps 50 fps 11.5 fps
76
Painterly Rendering
77
Otros
  • Hatching
  • Combina por GPU usando distintas texturas para
    distintos tonos

78
Otros
  • Graftals
Write a Comment
User Comments (0)
About PowerShow.com