2011 Jorge Calvo Zaragoza

Fundamentos de POV-Ray Computación Geométrica – 2010/2011 Jorge Calvo Zaragoza Índice 1. 2. 3. 4. 5. 6. Introducción Fundamentos del trazado de r

0 downloads 146 Views 653KB Size

Recommend Stories


BOLETÍN DE NOVEDADES FEBRERO 2011 BIBLIOTECA PÚBLICA DE ZARAGOZA
BOLETÍN DE NOVEDADES FEBRERO 2011 BIBLIOTECA PÚBLICA DE ZARAGOZA Boletín de novedades PRESENTACIÓN El objetivo principal del Boletín de Novedades

ZARAGOZA
Materiales de trabajo / PLAN DIOCESANOS DE PASTORAL 15-20 / ZARAGOZA CAPÍTULO I CAPÍTULO II CAPÍTULO III CAPÍTULO IV CAPÍTULO V PERTENECEMOS AL

Genealogias Bolivianas - LOS CALVO
Genealogias  Bolivianas  -­‐  LOS  CALVO     La familia Calvo y su descendencia en Bolivia Por: Rolando Rivero Lavayén*   Origen:  Castellano.  El

Story Transcript

Fundamentos de POV-Ray Computación Geométrica – 2010/2011 Jorge Calvo Zaragoza

Índice 1.

2. 3. 4. 5.

6.

Introducción Fundamentos del trazado de rayos Construcción de escenas con POV-Ray Geometría sólida constructiva Conclusiones Referencias

Introducción

Introducción  POV-Ray, Persistence of Vision Raytracer

 Software para el desarrollo de escenas foto-realistas  Licencia POV-Ray

 Multiplataforma  Lenguaje de definición parecido a C

 Metodología del trazado de rayos  Soporte para animación

4

¿Qué se puede hacer con POV-Ray?

POV-Ray Team 5

¿Qué se puede hacer con POV-Ray?

6

Gilles Tran

¿Qué se puede hacer con POV-Ray?

Tom Aust 7

Fundamentos del trazado de rayos

Trazado de rayos  Es una técnica de rendering

 Basado en el funcionamiento real de la visión  Tres elementos fundamentales en el trazado de rayos:  Cámara  Objeto  Luces

9

Trazado de rayos  Un rayo se define como la semirecta

r + td  r: punto inicial  d: dirección  t: valor paramétrico [0,+inf]

10

Trazado de rayos Funcionamiento natural  La luces envían rayos en todas direcciones  Al intersectar con un objeto, la luz se refleja en una dirección  La luz reflejada en la dirección de la cámara es lo que se ve  Problema: muy ineficiente

11

Trazado de rayos Funcionamiento inverso  Los rayos se lanzan desde la cámara en cada posición posible  Desde el objeto se envía un rayo hacia cada fuente de luz  Por tanto, dos tipos de rayos:  Rayo de visión (cámara-objeto)  Rayos de sombra (objeto-luz)

12

Trazado de rayos Funcionamiento inverso  Rayos de visión  Para cada píxel de la ventana de emisión se envía un rayo  Se calcula la intersección del rayo con cada objeto de la escena

 De esta intersección se obtiene un conjunto de valores

13

Trazado de rayos Funcionamiento inverso  Rayos de visión  El trazador de rayos debe resolver todas las intersecciones  Al final se queda con el menor valor (más cercano)  Desde el punto final obtenido se envían los rayos de sombra

14

Trazado de rayos Funcionamiento inverso  Rayos de visión  Problema: Se calculan demasiadas intersecciones nulas

 POV-Ray divide la escena en diferentes zonas y agrupa los objetos

en primitivas geométricas sencillas (bounding)  Se pueden hacer agrupaciones recursivamente  Sólo se calculan las intersecciones con un objeto si el bounding que lo contiene intersecta con el rayo

15

Trazado de rayos Funcionamiento inverso  Rayos de sombra  Un rayo hacia cada fuente de luz  La luz se emite en todas direcciones

 Hay que comprobar si el rayo de sombra intersecta con un objeto  Se repiten las mejoras aplicadas a los rayos de visión  Si el rayo llega a luz, se tiene en cuenta para el cálculo final  Al final la iluminación del punto depende del modelo de

iluminación y las fuentes de luces que intervienen 16

Trazado de rayos Funcionamiento inverso  Otro tipo de rayos  Rayos de reflexión  Para superficies reflectantes  Se calcula el ángulo de reflexión y se envía un nuevo rayo

 Rayos de transmisión  Para objetos parcial o totalmente transparentes  Se calcula el desvío que se produce y se envía un nuevo rayo

17

Trazado de rayos Limitaciones  Aliasing  Objetos lejanos o pequeños  Sombras  Composición de la luz  Reflexión especular de la luz  Reflexión difusa de la luz

18

Construcción de escenas en POV-Ray

Escenas en POV-Ray  Nociones básicas  Sistema de coordenadas  Regla de la mano izquierda

 Elementos básicos  Cámara  Luces  Objetos

20

Escenas en POV-Ray  Definición de la cámara  Lugar (location)  Dirección (look_at) camera { location look_at }

21

Escenas en POV-Ray  Definición de luces  Posición  Color light_source { color }

22

Escenas en POV-Ray  Primitivas básicas: esfera  Punto central  Radio sphere { radio }

23

// Centro

Escenas en POV-Ray  Primitivas básicas: cubo  Vértice inferior izquierdo cercano (V1)  Borde superior derecho lejano (V2) box { }

24

// V1 // V2

Escenas en POV-Ray  Primitivas básicas: cilindro  Centro de la base  Centro de la tapa  Radio cylinder { // Base // Tapa radio }

25

Escenas en POV-Ray  Primitivas básicas: plano  Normal  Desplazamiento

plane { // Normal desplazamiento }

26

Escenas en POV-Ray  Transformaciones  Rotación  Traslación  Escalado objeto { … tranlate valor* rotate valor* scale valor* }

27

Escenas en POV-Ray  Color objeto { … pigment { colour } }

 Fondo background { colour }

28

Escenas en POV-Ray  Escena de ejemplo camera { location look_at } light_source { colour } background { colour } sphere { 1 pigment { colour } } plane { 0 pigment { colour } }

29

Escenas en POV-Ray  Escena de ejemplo

30

Escenas en POV-Ray  Otras primitivas  Triángulos  Cuádricas  Toroides

 Conos  Isosuperficies

 Superficies libres

31

Geometría Sólida Constructiva

Geometría Sólida Constructiva  CSG, Constructive Solid Geometry

 Técnica de modelado de sólidos  Puntos interiores y exteriores

 Crea objetos a partir de la combinación de otros  La combinación se produce mediante el uso de operadores del

algebra de conjuntos (unión, intersección y diferencia)

33

Operadores CSG Unión  El conjunto resultante contiene todos los objetos  Sólo sirve para tratar varios objetos como si fuera uno  Produce el mismo resultado que dibujarlos por separado

34

Operadores CSG Unión  Sintaxis: union { OBJETO1 OBJETO2 ... OBJETO N [MODIFICADORES] }

35

Operadores CSG Unión  Ejemplo

36

Operadores CSG Fusión  Une objetos de forma homogénea  Elimina las aristas interiores  Mismo resultado que la unión salvo para objetos transparentes

37

Operadores CSG Fusión  Sintaxis: merge { OBJETO1 OBJETO2 ... OBJETO N [MODIFICADORES] }

38

Operadores CSG Fusión  Ejemplo

39

Operadores CSG Intersección  Da como resultado los puntos que tienen los objetos en común

40

Operadores CSG Intersección  Sintaxis: intersection { OBJETO1 OBJETO2 ... OBJETO N [MODIFICADORES] }

41

Operadores CSG Intersección  Ejemplo

42

Operadores CSG Diferencia  Extrae los puntos que tiene en común un objeto con otro  Equivalente a la intersección del objeto con el inverso del otro  Operación no conmutativa (importa el orden)  Si se usa con varios objetos se sustraen todos al primero

43

Operadores CSG Diferencia  Sintaxis: difference { OBJETO1 OBJETO2 ... OBJETO N [MODIFICADORES] }

44

Operadores CSG Diferencia  Ejemplo

45

Geometría Sólida Constructiva Ejemplo complejo

46

Trazado de rayos en CSG  El trazado de rayos se basa en el cálculo de intersecciones

 ¿Cómo se representa un objeto CSG?  Estructura que almacena operaciones y primitivas

 Árbol binario  Hojas: primitivas  Nodos interiores: operaciones

47

Trazado de rayos en CSG

48

Trazado de rayos en CSG  El trazado de rayos se basa en el cálculo de intersecciones

 ¿Cómo se obtienen los valores de las intersecciones?  La intersección entre un objeto y un rayo produce un conjunto

de valores paramétricos  Se obtienen estos conjuntos en las primitivas  Se aplican las operaciones del CSG sobre estos conjuntos  Recorrido ascendente desde las hojas hasta la raíz

49

Trazado de rayos en CSG  Posibles casos  No solapamiento  Solapamiento parcial

 Solapamiento total

50

Trazado de rayos en CSG  Eficiencia  Calcular la intersección de un CSG tiene una gran complejidad  Puede que se calculen muchas intersecciones nulas

 Mejora  Bounding-box que contenga todas las primitivas (hojas)

 Sólo se recorre el árbol si el bounding-box intersecta con el rayo

51

Conclusiones

Conclusiones  Trazado de rayos  Mediante el trazado de rayos se pueden conseguir imágenes foto-

realistas.  Esta técnica se basa en las intersecciones de semirectas (rayos) con modelos matemáticos (objetos).  Construcción de escenas  POV-Ray permite definir escenas de forma sencilla.

 Geometría sólida constructiva  Se pueden construir objetos complejos a partir de la combinación de

primitivas sencillas y operadores del álgebra booleana.

53

Referencias

Referencias • An introduction to ray tracing. Glassner, Andrew S.

• Ray tracing II.Young, Chris • http://www.povray.org/documentation/ • http://www.cs.auckland.ac.nz/~jli023/opengl/pov-ray.htm

• http://library.thinkquest.org/3285/tutorial/intro.html

55

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.