Datos generales Asignatura: Visualización e Interacción Gráfica Código: 5466 Carácter: Optativa Ciclo: Primero Plan de Estudios: Ingeniería Informática (2005) Área de conocimiento: Matemática Aplicada Curso: Tercer Curso Cuatrimestre: Primero Créditos totales BOE: 7.5 (4.5 teóricos + 3 prácticos) Horas ETCS: 120 horas de trabajo de alumno Universidad: Universidad de Cantabria Centro: Facultad de Ciencias Departamento: Matemática Aplicada y Ciencias de la Computación Profesor responsable: Andrés Iglesias Prieto Otro profesorado: Akemi Gálvez Tomida Objetivos Objetivos generales El objetivo general del curso es proporcionar al alumno una visión general de las técnicas y métodos que se aplican en la generación y manipulación de gráficos por computador, desde las Interfaces Gráficas de usuario disponibles en los sistemas operativos actuales hasta los modelos más avanzados de renderizado y animación por computador. Dicha visión incluye la comprensión de los fundamentos de dichos métodos, y posibles formas de implementación, así como de sus efectos sobre las escenas virtuales Objetivos específicos: aptitudes/destrezas Entender los fundamentos básicos de los gráficos por computador, su esquema básico de funcionamiento y el uso del software y hardware aplicado a este campo. Conocer la historia de los gráficos por computador desde sus orígenes, así como la evolución histórica de los distintos métodos en este campo en función del software y hardware disponible en cada momento. Implementar los métodos más usuales de renderizado, iluminación, texturizado y efectos avanzados de los gráficos por computador. Entender el uso de las Interfaces Gráficas de Usuario presentes hoy día en muchos programas y sistemas operativos desde la óptica de los gráficos por computador. Adquirir conocimientos suficientes para que pueda diseñar los algoritmos sobre las entidades geométricas más usuales en los gráficos por computador y realizar su implementación en cualquier lenguaje de programación. Conocer el mundo de los entornos multimedia, la realidad virtual y la realidad aumentada. Conocer las técnicas básicas de animación por computador. Conocer las técnicas básicas de la simulación y animación de los fenómenos naturales. Conocer y entender los fundamentos de la animación de seres humanos virtuales y su comportamiento y evolución en mundos virtuales, así como de fenómenos de aparición reciente como “Los Sims” y “Second Life”. Entender la interacción de estas técnicas con otros campos de la computación, como la inteligencia artificial y la visualización científica. Conocer los principales formatos gráficos, su campo de aplicación así como sus principales ventajas e inconvenientes. Programa Tema 1. Introducción a los Gráficos por Computador. Bibliografía Básica. - Aplicaciones y usos de los Gráficos por Computador. - Ejemplos relevantes y ámbito de aplicación. - Historia de los Gráficos por Computador. - Fuentes de información: revistas, libros, CDs, sitios web. Software gratuito y comercial. - Enfoque del curso. Video: Ilusiones virtuales (1.5 horas) Tema 2. Hardware y Software para Gráficos por Computador. - Tarjetas gráficas. - Software gratuito: - visores web y de VRML (CosmoPlayer, AppletViewer) - APIs gráficas (OpenGL, DirectX, Java3D), - ray tracing (POVray, ray-tracer). - Software comercial: Maya, RenderMan, 3D Studio Max, LightWave). Tema 3. Algoritmos básicos para Gráficos por Computador. - Transformaciones 2D y 3D. - Matrices de transformación. - Algoritmos de línea: DDA, algoritmo de Bresenham. - Algoritmos de clipping. - Algoritmos de líneas y superficies ocultas. Algoritmo del pintor, Z-buffer. Práctica 1: Matrices de transformación. Práctica 2: Algoritmo de Bresenham. Tema 4. Modelado Geométrico: Curvas y superficies. - Sistemas de representación: implícitas, explícitas y paramétricas. - Curvas y superficies de forma libre: de Bézier, Bsplines y NURBS. - Algoritmos básicos: - subdivisión - elevación de grado - elección de nodos - refinamiento - eliminación de nodos - Algoritmos avanzados: - intersección - blending - offset - Ultimas tendencias: T-NURBS, T-NURCCS. Práctica 3: Curvas y superficies de Bézier. Práctica 4: Curvas y superficies Bspline. Práctica 5: GUI avanzada en Matlab para curvas y superficies de forma libre. Video: Curvas y superficies de forma libre. Tema 5. Renderizado: modelos de iluminación. - Fundamentos del renderizado. - Modelos de polígonos: - alambres - de caras y vértices - planos - otros modelos - Modelos básicos de iluminación. - Iluminación ambiente - Iluminación difusa - Iluminación especular - Efectos de distancia. - Algoritmos básicos: - flat - gouraud - phong - Ray tracing. - Radiosidad. Práctica 6: GUI avanzada en Matlab para modelos de iluminación. Tema 6. Texturizado. - Conceptos básicos de texturizado. - Texture mapping - Bump mapping - Environment mapping - Fractales. - Sistemas de funciones iteradas. - L-sistemas. - Otros métodos. - Ejemplos avanzados. Práctica 7: Fractales: sistemas de funciones iteradas. Práctica 8: Texturizado. Tema 7. Gráficos por Computador avanzados. - Transparencia. - Multiresolución. - Niebla. - Reflexiones. - Simulación de fenómenos naturales: agua, fuego, etc. Práctica 9: Simulación del agua. Tema 8. Animación por computador. - Fundamentos de la animación por computador. - Animación geométrica. - Key framing. - Cinemática directa e inversa. - Animación basada en scripts. Práctica 10: Sistemas de partículas. Tema 9. Humanos virtuales. - Modelado de humanos virtuales. - pelo - piel - articulaciones - Animación del comportamiento. - Inteligencia artificial. - Modelos cognitivos. - Ultimas tendencias - Los Sims - Second Life - Animación de multitudes Tema 10. Interfaces Gráficas de Usuario. Multimedia. Realidad Virtual. - Interfaces Gráficas de Usuario (GUIs). - Ejemplos en Matlab. - Entornos multimedia. - Creación de una GUI. - Realidad Virtual - entornos inmersivos - entornos proyectivos - entornos híbridos - Aplicaciones de la Realidad Virtual - Realidad Aumentada Práctica 11: Creación de una GUI. Tema 11. Formatos gráficos. - Gráficos vectoriales. - Gráficos de mapa de bits. - Formatos: - BMP - JPEG - Metafiles - Formatos de compresión de video: - MPEG1 - MPEG2 - MPEG4 - Formato AVI - Formatos de compresión de audio: MP3. - Compresión fractal. - Formatos industriales: - IGES - VDA - CATIA Práctica 12: Formatos MPEG y MP3. Video: Formatos industriales. Tema 12. Gráficos para la Web. - Formatos GIF y JPEG. - Librerías gráficas para la Web. - Web 3D - Visualización de datos mediante gráficos por computador. - Últimas tendencias. Práctica 13: Creación de una página web con contenido gráfico. Práctica 14: Realidad virtual. Creación y navegación por una escena en VRML.