La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Jesús David Cardona Quiroz

Presentaciones similares


Presentación del tema: "Jesús David Cardona Quiroz"— Transcripción de la presentación:

1 Jesús David Cardona Quiroz jdcardona@uao.edu.co
Fundamentos de RV Modelado 3D y Render Jesús David Cardona Quiroz Adaptado del material de clase del profesor José Pascual Molina Massó,

2 Agenda Introducción Modelado Modelos de Iluminación
Proceso de Síntesis Optimización del proceso de síntesis “The secret of joy in work is contained in one word: excellence. To know how to do something well is to enjoy it” Pearl S. Buck ( )

3 Introducción* Los gráficos 3D juegan un papel importante en las aplicaciones de RV Proceso de render = síntesis de imagen, secuencia de pasos que permiten generar la imagen que observa el usuario a partir de la descripción de los objetos de la escena y desde una posición en el entorno virtual (cámara) En un sistema de realidad virtual el proceso de síntesis comienza una vez se ha calculado el nuevo estado de cada objeto en la escena (simulación). Adaptado del material de clase del profesor José Pascual Molina Massó,

4 Introducción La imagen final de la escena va depender de dos factores: la geometría de la escena y el modelo de iluminación. A partir del estado de cada objeto en la escena, estos son proyectados sobre la pantalla calculando el color de cada píxel de la pantalla según el modelo de iluminación. El proceso de síntesis no se considera durante la implementación de este tipo de aplicaciones debido a que las librerías sobre la que se soporta su desarrollo se encargan de este proceso. No obstante, es necesario conocer en que consiste y que factores inciden en su rendimiento.

5 Modelado El modelado se considera como aspecto fundamental en el desarrollo de entornos virtuales Modelado = proceso de modelar la forma y el aspecto de un objeto, así como su comportamiento.

6 Modelado En una aplicación de Realidad Virtual se realiza:
Modelado Geométrico Modelado Cinemático Modelado Físico Modelado del Comportamiento de los objetos (comportamiento inteligente)

7 Modelado Geométrico: Modelado 3D
El modelado 3D es usado en distintas áreas de aplicación, usualmente para el desarrollo de prototipos virtuales, desarrollo de simulaciones y para evaluación de productos antes de su posterior construcción. Adicionalmente, es usado para el desarrollo de creaciones artísticas o comerciales, para ser incorporadas en producciones publicitarias, desarrollo de aplicaciones de entretenimiento y videojuegos.

8 Modelado Geométrico Clasificación:
Modelos o representaciones de sólidos Modelado de superficies Blobby objects Metaballs : funciones implícitas, cuádricas Procedimientos: Fractales : modelos geométricos Sistemas de partículas

9 Modelado Geométrico: Modelos o representaciones de sólidos
Geometría constructiva de sólidos (CSG) Replicado de primitivas (Primitive instancing) Barrido Representaciones de partición espacial Jerárquicas No Jerárquicas

10 Modelado Geométrico: Modelos o representaciones de sólidos
Al considerar representaciones discriminar Almacenamiento en memoria Almacenamiento en archivo Interfaz de usuario Uso Dibujo Evaluar propiedades de mas (volumen, cdg, momentos, etc) Comprobar propiedades geométricas o topológicas Búsquedas Etc. Uso simultáneo de varias representaciones

11 Modelado Geométrico: Modelos o representaciones de sólidos
Geometría Sólida Constructiva – CSG (Constructive Solid Geometry) Operaciones booleanas se aplican sobre representaciones de objetos, es una operación no una representación. Mientras que un árbol booleano es un tipo de representación Se centra en las propiedades estructurales y físicas del objeto  se centra en la estrutura del objeto El árbol de representación booleano esta compeusto por: Nodos de operaciones: unión, intersección, diferencia Nodos terminales con otras representaciones (primitivas, B-reps., etc.) Transformaciones geométricas

12 Modelado Geométrico: Modelos o representaciones de sólidos
Ejemplo CSG

13 Modelado Geométrico: Modelos o representaciones de sólidos
Ejemplo CSG

14 Modelado Geométrico: Modelos o representaciones de sólidos
Replicado de primitivas – Primitive instancing La idea es proveer un conjunto de tipos de objetos predefinidos,. Cada objeto es definido por un pequeño conjunto de parámetros Las instancias o replicas son creadas por la selección de un tipo de modelo Familias de piezas: Uniformes, Paramétricas Posicionamiento: Traslación, rotación, escalado

15 Modelado Geométrico: Modelos o representaciones de sólidos
Restricción: limitado por la biblioteca predefinida  Base de datos de primitivas

16 Modelado Geométrico: Modelos o representaciones de sólidos
Método de Barrido (Sweep) Las representaciones por barrido de un objeto 3D son creadas por el movimiento de una plano (2D) de acuerdo a una regla predefinida. Dependiendo de la regla por la cual al forma es movida pueden haber dos tipos de barrido: Traslación Rotacional

17 Modelado Geométrico: Modelos o representaciones de sólidos
Ejemplos

18 Modelado Geométrico: Modelos o representaciones de sólidos
Partición o descomposición espacial Partición espacial = conjunto de volúmenes, que permite caracterizar qué parte del espacio está dentro del objeto y qué parte está afuera.

19 Modelado Geométrico: Modelos o representaciones de sólidos
Utilidades: Clasificación de puntos: para discernir cuáles son los puntos del espacio ocupados por el objeto y cuáles no. Información sobre propiedades de puntos en el espacio: cada volumen de la partición puede además contener información adicional sobre alguna propiedad del objeto en esa parte del espacio (densidad, color, composición, presión, etc.) Clasificación de objetos dentro de la escena: en este caso no se trataría de describir la forma de un objeto determinado, sino de agrupar los objetos de una escena compleja en partes para optimizar loa métodos de visualziación.

20 Modelado Geométrico: Modelos o representaciones de sólidos
Las particiones pueden dividirse en: No jerárquicas: Cuando existe un único conjunto de volúmenes que forman la partición y no tiene relaciones internas de inclusión. Jerárquicas: Consisten en sucesivas particiones de más y más detalle, cuyos volúmenes están incluidos en una partición de nivel inferior, y que se forma por operaciones sucesivas de división.

21 Modelado Geométrico: Modelos o representaciones de sólidos
Particiones No Jerárquicas En este caso la partición no se forma por operaciones sucesivas de división, si no que se da directamente todo el conjunto de volúmenes en los que se ha dividido el espacio de partida. No existen relaciones de inclusión entre los volúmenes. Descomposición en celdas Enumeración de la ocupación espacial: voxels

22 Modelado Geométrico: Modelos o representaciones de sólidos
Particiones No Jerárquicas Descomposición en celdas (Cell Decomposition) Los volúmenes de la partición son celdas contiguas delimitadas por caras que pueden ser planas o curvas, y pueden tener asociados datos escalares o vectoriales sobre la parte del objeto que representan. Las celdas están pegadas entre sí sin intersectarse y pueden tener distinta forma y tamaño. Frecuentemente se usa en el Análisis de Elementos Finitos.

23 Modelado Geométrico: Modelos o representaciones de sólidos

24 Modelado Geométrico: Modelos o representaciones de sólidos
Particiones No Jerárquicas Enumeración de la ocupación espacial: voxels Es un caso especial de descomposición por celdas en las que estás son todas idénticas y se organizan en forma de rejilla. Es frecuente que las celdas sean pequeños cubos alineados. Estas celdas idénticas se llaman VOXELS (Unidad de Volumen, equivalente al píxel en 2D).

25 Modelado Geométrico: Modelos o representaciones de sólidos

26 Modelado Geométrico: Modelos o representaciones de sólidos
Particiones Jerárquicas Este tipo de particiones se caracteriza por irse realizando por niveles sucesivos. La estructura de datos que emplea es un árbol, lo que disminuye es espacio de almacenamiento, requerido y hace posible definir a la vez varios niveles de detalle. Se puede acceder a la información o efectuar la visualización recorriendo la estructura solo hasta el nivel de interés.

27 Modelado Geométrico: Modelos o representaciones de sólidos
Particiones jerárquicas no ortogonales: árboles binarios Particiones jerárquicas ortogonales (según ejes del espacio) No homogénea Homogénea: Octrees

28 Modelado Geométrico: Modelos o representaciones de sólidos
Particiones Jerárquicas No Ortogonales Árboles Binarios – BSP Trees (Binary Space-Partitioning) División sucesiva del espacio en semi-espacios utilizando planos de orientación arbitraria.

29 Modelado Geométrico: Modelos o representaciones de sólidos
Particiones Jerárquicas Ortogonales Las particiones se realizan según planos que están orientados siguiendo los ejes ortogonales del espacio. El espacio suele delimitarse mediante una caja ortogonal.

30 Modelado Geométrico: Modelos o representaciones de sólidos
Particiones Jerárquicas Ortogonales No Homogéneas La descomposición no se hace por mitades iguales Se desplazan los planos de corte al punto donde se considere óptimo. Lo anterior permite aproximarse más rápido a la forma del objeto, aunque la estructura de datos pueda complicarse.

31 Modelado Geométrico: Modelos o representaciones de sólidos
Particiones Jerárquicas Ortogonales Homogéneas: Octrees Estructura arbórea en la que el volumen del objeto se aproxima recursivamente por medio de cubos. Se combinan celdas ortogonales cuya longitud de arista se va dividiendo sucesivamente por 2, intentando llenar lo más rápido posible el volumen deseado del objeto. Los nodos que no caen totalmente dentro del espacio del objeto se siguen subdividiendo recursivamente. En cada nodo del árbol se indica si la celda correspondiente cae dentro o fuera del objeto. También se puede utilizar un porcentaje: parcialmente dentro, 25%, 50%, 75%, dentro, etc.) La recursividad se detiene según algún criterio. Ej.: las celdas no pueden tener una arista menor a un cierto valor…

32 Modelado Geométrico: Modelos o representaciones de sólidos

33 Modelado Geométrico: Modelos o representaciones de sólidos

34 Modelado Geométrico Modelado de superficies Usos:
El objeto mismo es una superficie que se puede suponer sin grosor Solo interesa el aspecto visual externo del objeto

35 Modelado Geométrico: Modelado de superficies
La información de la superficie debe dar cuenta de: Su geometría Apariencia, comos e comprota frente a la luz Quizá, alguna propiedad física, cuerpo rígido o blando… Si al totalidad del objeto consta de diferentes partes, se debe añadir información topológica, es decir, como se conectan cada una de estas partes entre si para formar la superficie.  esto se conoce como representación de frontera – b-rep.

36 Modelado Geométrico: Modelado de superficies
Se debe tener en cuenta, que en las superficies representadas no existan puntos donde la superficie se intersecte consigo misma o se abra en varias hojas. Además de la información geométrica y topológica, es frecuente añadir datos adicionales para su visualización como color, propiedades de material, textura; o datos para procesos de simulación física.

37 Modelado Geométrico: Modelado de superficies
Modelo poliédrico Se define el objeto a través de un superficie formada por polígonos que comparten sus aristas y sus vértices. Restricción en que los polígonos no se intersecten entre si excepto en las aristas y que en una arista no pueden confluir mas de dos polígonos. En un vértice puede coincidir cualquier número de polígonos Representación muy adecuada para visualización en tiempo real.

38 Modelado Geométrico: Modelado de superficies – Modelo Poliédrico
El orden con el que se especifican los polígonos es importante, esto será considerado por algunos algoritmos que se emplean para la eliminación de superficies ocultas. Los vértices de un polígono deben ser coplanarios

39 Modelado Geométrico: Modelado de superficies – Modelo Poliédrico
Primitivas poligonales Son grupos de polígonos que se describen de forma conjunta para ahorrar espacio de almacenamiento y costo de visualización en tiempo real. Tira de cuadriláteros Los primeros 4 vértices definen el primer cuadrilátero, y cada nuevo par de vértices define otro polígono. No se garantiza que en cada cuadrilátero los vértices sean coplanarios.

40 Modelado Geométrico: Modelado de superficies – Modelo Poliédrico
Primitivas poligonales Tira de Triángulos Abanico

41 Modelado Geométrico: Modelado de superficies – Modelo Poliédrico
Primitivas poligonales Malla Rectangular Malla Triangular

42 Modelado Geométrico: Modelado de superficies – Modelo Poliédrico
El conjunto de polígonos que describe la forma de cada objeto se suele almacenar en una lista En el caso de superficies curvas, ese conjunto de polígonos representa una aproximación a la superficie real.

43 Modelado Geométrico: Modelado de superficies – Modelo Poliédrico
Para guardar la forma del objeto también se puede usar una tabla para polígonos y otra para los vértices. Es posible cambiar la geometría del objeto modificando las coordenadas de los vértices, pero ya no es posible mover cada polígono de forma independiente.

44 Modelado Geométrico: Modelado de superficies
Superficies curvas Para muchos objetos resulta complejo representarlos a través de superficies poliédricas… Para representar objetos curvos y continuos, es posible usar una descomposición de la superficie en trozos o parches (patches) triangulares o cuadrangulares, cada uno de los cuales se modela con superficies paramétricas (superficies Bezier, NURBS…) Este tipo de representación permite modificar la forma de la superficie fácilmente. Es posible pasar posteriormente a una representación poligonal…

45 Modelado Geométrico: Modelado de superficies – Superficies curvas
Este tipo de representación plantea algunos problemas: Dificultad de controlar que la forma de la superficie sea exactamente la que se busca. Complejidad de mantener restricciones en las intersecciones de los trozos o parches. Curva Bezier Superficie NURBS

46 Modelado Geométrico Blobby Objects
Las formas experimentan cierto grado de fluidez deformándose según se produce movimiento Metaballs : funciones implícitas, cuadráticas

47 Modelado Geométrico: Procedimientos
Fractales A partir de unos pocos números (datos) generan de modo automático una descripción muy detallada Características Un nivel infinito de detalle Sólo se crea la información necesaria para el nivel de detalle requerido Similitud en las características de distintos niveles de detalle Por ejemplo una sucesión de aproximaciones: 1) una montaña 2) unos metros de arista 3) una roca de la arista 4) una zona de la roca 5) un grano de arena etc

48 Modelado Geométrico: Procedimientos
Fractales

49 Modelado Geométrico: Procedimientos
Sistemas de Partículas Aplicaciones Nubes Fuego llamas, humo artificiales Agua cascadas, espuma salpicaduras, spray Efectos desintegración, explosión Formas simples : esfera, cubo, elipsoide

50 Modelado Cinemático El comportamiento de un objeto en un entorno virtual implica cambios de posición, orientación, escala, colisiones, deformaciones … La posición de un objeto se obtiene a través de las traslaciones, rotaciones y cambios de escala. Estas TRANSFORMACIONES describen la posición y orientación del sistema local (del objeto) con respecto a otro sistema de referencia, el sistema de coordenadas del mundo.

51 Modelado Cinemático Para expresar estas traslaciones, rotaciones y cambios de escala se utilizan matrices de transformación homogéneas. La combinación de varias transformaciones se expresa como multiplicación de matrices.

52 Modelado Cinemático El resultado de multiplicar juntas cualquier cantidad de matrices de rotación, escala, y traslación siempre esta forma:

53 Modelado Cinemático Conociendo la matriz que sitúa un objeto en la escena, la posición absoluta de cada vértice en la escena se calcula multiplicando esa matriz por las coordenadas del vértice relativas al sistema de referencia del objeto:

54 Modelado Cinemático Jerarquías de objetos
Muchas de las escenas que definen un Entorno Virtual, es una lista de objetos que tienen una posición en el mundo, sin embargo en ocasiones, es necesario estructurar jerarquías de objetos. Por ejemplo un brazo articulado, podría estar compuesto por una base, un “torso” y un cilindro como efector final. Hijo Padre

55 Modelado Cinemático La potencia de las jerarquías se encuentra en la aplicación de transformaciones. Cada objeto hijo representa un sistema de coordenadas local cuya posición se expresa con respecto al sistema de coordenadas del objeto padre. Por otro lado, los objetos hijos heredan automáticamente las transformaciones geométricas aplicadas al padre.

56 Modelado Cinemático Restricciones (constraints)
Ciertos objetos pueden requerir ser desplazados y rotados en la escena sin ningún tipo de restricción, pero algunos objetos tiene restricciones. Por ejemplo: Se debe impedir que esta parte del Robot se traslade

57 Modelado Cinemático Detección de colisiones:
Para que un muro haga su función como limitador del espacio 3D, es necesario detectar que el “usuario”, “chocó”. Esto se conoce como detectar una colisión. Existen muchos mecanismos, algunos derivados del concepto de subdivisión espacial. Un forma simplificada es usar volúmenes en forma de paralelepípedos.

58 Modelado Cinemático Estos volúmenes de colisión suelen almacenarse junto con la geometría de cada objeto en la base de datos de la escena. Si dos volúmenes de colisión se aproximan tanto que llegan a tocarse o intersectarse, el sistema detectaría la situación y actuaría en consecuencia.

59 Modelado Cinemático Si los volúmenes de colisión no son más que simples cajas, no podemos esperar gran realismo. Si puede pensar en dos volúmenes que colisionan pero no los objetos que envuelven. Es posible envolver partes del objeto, pero esto podría traer costos altos a nivel de cómputo.

60 Modelado Físico Se modelan “físicamente” los objetos 3D, a través de la definición o asignación de masa, inercia, elasticidad, módulos de deformación, textura, superficie, etc. Estas características se añaden al modelo geométrico y a las reglas de simulación del comportamiento para obtener un entorno virtual mas realista.

61 Modelado del comportamiento
Además del comportamiento de un objeto asociado a sus propiedades cinemáticas y físicas, también puede comportarse de acuerdo a un “nivel” de inteligencia. Por ejemplo, un reloj virtual podría cambiar la hora de acuerdo al reloj del sistema. Un personaje podría dar la bienvenida y orientar a un usuario en un recorrido virtual, etc… Los “reflejos virtuales”, pueden ser útiles para atraer a un usuario a las elección o manipulación de un objeto.

62 Modelado del comportamiento
Comportamientos mas elaborados pueden lograrse haciendo uso de lo que se conoce como agentes virtuales inteligentes. Como el guía mencionado en el ejemplo anterior.

63 ¿Preguntas?

64 Más información Moodle http://augusta.uao.edu.co/giisoft/rv/
de contacto: Facultad de ingeniería: Ext:


Descargar ppt "Jesús David Cardona Quiroz"

Presentaciones similares


Anuncios Google