Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
UNIVERSIDAD NACIONAL DEL SUR BAHÍA BLANCA --- ARGENTINA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y DE COMPUTADORAS PROGRAMA DE: CÓDIGO: 2808 PROGRAMACIÓN DE SISTEMAS GRÁFICOS ÁREA NO: VIII 1 5 H O R A S D E C L A S E Tipificación CSU 497/2002 P R O F E S O R E S R E S P O N S A B L E S T E Ó R I C A S P R Á C T I C A S DR. JUAN BAJO – DR. CLAUDIO DELRIEUX – MG. ANDREA SILVETTI Por semana Por cuatrimestre Por semana Por cuatrimestre 2 A 4 64 4 64 C A R R E R A S Y P L A N E S CARRERA PLAN CARÁCTER AÑO CUATRIMESTRE INGENIERÍA ELECTRÓNICA 2006 OPTATIVA 4TO Y 5TO II H O R A S B L O Q U E C U R R I C U L A R H O R A S F O R M A C I Ó N P R Á C T I C A Ciencias Básicas 40 DETALLE CIENCIAS BÁSICAS Formación Experimental – Laboratorio 20 Tecnologías Básicas 88 Matemática 20 Formación Experimental - Trabajo de campo - Tecnologías Aplicadas - Física - Resolución de problemas abiertos de ingeniería 10 Complementarias - Química - Actividades de proyecto y diseño 25 Fundamentos de informática 20 Práctica Profesional Supervisada - A S I G N A T U R A S C O R R E L A T I V A S P R E C E D E N T E S P A R A C U R S A R P A R A A P R O B A R (2800) Principios de Computadoras I DESCRIPCIÓN / OBJETIVOS La Computación Gráfica es actualmente uno de los campos más activos de la informática, siendo el motor principal de la industria del entretenimiento (videojuegos, películas de animación, etc.), la cual en la actualidad supera en recaudación a la mayoría de las industrias tradicionales. Además, la tecnología asociada a la computación gráfica, la GPU, ha disparado una verdadera revolución en las arquitecturas de cómputo, por lo que es de gran importancia para la vida profesional conocer los elementos básicos de la programación GPU. El objetivo del curso es presentar los propósitos y fundamentos teóricos de la Computación Gráfica, así como introducir al desarrollo de programas gráficos interactivos, el uso de bibliotecas, el estudio de los problemas teóricos asociados al modelado y rendering fotorrealístico, de aplicaciones prácticas como el desarrollo de videojuegos y juegos serios, y de la computación GPU de propósito general. COMPETENCIAS A SATISFACER POR LOS ESTUDIANTES AL INICIO DEL CURSO Al inicio del curso se esperan competencias básicas de estudiantes próximos a finalizar la carrera, como la capacidad para la integración con pares, trabajo responsable en equipo, y habilidades para la presentación de trabajos en forma oral y/o escrita. Desde el punto de vista técnico las competencias incluyen conocimientos básicos de programación, estructuras de datos y testeo de programas. UNIVERSIDAD NACIONAL DEL SUR BAHÍA BLANCA --- ARGENTINA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y DE COMPUTADORAS PROGRAMA DE: CÓDIGO: 2808 PROGRAMACIÓN DE SISTEMAS GRÁFICOS ÁREA NO: VIII 2 5 COMPETENCIAS A SATISFACER POR LOS ESTUDIANTES AL FINAL DEL CURSO Al finalizar el curso se esperan competencias para: - Comprender, diseñar, implementar y evaluar algoritmos gráficos. - Comprender y aplicar los procesos matemáticos que implementan las transformaciones más importantes en los sistemas gráficos 2D y 3D. - Comprender los modelos empíricos y físicos de iluminación a partir de los cuales surgen los diferentes modelos de iluminación y sombreado utilizados en los sistemas gráficos. - Comprender los modelos físicos y perceptuales del color, así como los distintos espacios cromáticos a partir de los cuales es posible hacer uso del color en los sistemas gráficos. - Diseñar y programar algoritmos gráficos eficientes tomando ventaja del uso de librerías y de unidades de procesamiento de gráficos programables (GPUs). - Familiarizarse las plataformas para desarrollo de sistemas gráficos y videojuegos. Teniendo presente el carácter optativo de la materia, y que la misma es elegida tanto por alumnos de grado, como por alumnos especiales y de posgrado, se destacan otras competencias que tienen que ver con: - potenciar la motivación para seguir involucrados en líneas de trabajo en estas temáticas, - fortalecer la capacidad para iniciarse en la investigación, - experimentar en el desarrollo de proyectos creativos e ingeniosos, y - agilizar la destreza para expresar los resultados obtenidos, publicar artículos en revistas, congresos, y/o comunicarlos en distintas reuniones científicas. PROGRAMA SINTÉTICO I. INTRODUCCIÓN II. COMPUTACIÓN GRÁFICA 2D III. APROXIMACIÓN E INTERPOLACIÓN DE CURVAS IV. COLOR V. COMPUTACIÓN GRÁFICA 3D VI. APROXIMACIÓN DE SUPERFICIES VII. MODELOS DE ILUMINACIÓN Y SOMBREADO VIII. MODELOS AVANZADOS DE ILUMINACIÓN (INTRODUCCIÓN) IX. MODELOS PROCEDIMENTALES X. VIDEOJUEGOS Y JUEGOS SERIOS PROGRAMA ANALÍTICO I. INTRODUCCIÓN - Hardware Gráfico. - Sistemas de coordenadas físico y lógico. - Algoritmos de discretización. - Conversión-scan de polígonos. - Gouraud Shading. - Implementación del convertidor-scan y el shading interpolado en la GPU. II. COMPUTACIÓN GRÁFICA 2D - Transformaciones afines. - Coordenadas homogéneas. - Estructuras jerárquicas para modelos 2D. - Clipping y windowing. UNIVERSIDAD NACIONAL DEL SUR BAHÍA BLANCA --- ARGENTINA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y DE COMPUTADORAS PROGRAMA DE: CÓDIGO: 2808 PROGRAMACIÓN DE SISTEMAS GRÁFICOS ÁREA NO: VIII 3 5 - Procesador de vértices en la GPU. III. APROXIMACIÓN E INTERPOLACIÓN DE CURVAS - Polinomios de Hermite. - Algoritmo de de-Casteljau. - Curvas de Bézier. - Curvas B-Splines. IV. COLOR - Modelos físicos y perceptuales del color. - Propiedades del diagrama CIEXY de cromaticidad. - Espacios cromáticos RGB, CLS y CSV. - Uso del color en Computación Gráfica. V. COMPUTACIÓN GRÁFICA 3D - Transformaciones 3D homogéneas. - Proyecciones y perspectiva. - Estructuras jerárquicas para modelos de objetos 3D. - Clipping 3D. - Z-Buffer. - Procesador de vertices y pipeline gráfico 3D en la GPU y su manejo desde OpenGL. VI. APROXIMACIÓN DE SUPERFICIES - Descripción de superficies como producto tensorial de curva. - Superficies Bézier y B-Splines - Organización y topología de los puntos de control. - Matrices de conectividad y limitaciones de los algoritmos. - Algoritmo de de Casteljau biparamétrico y la descripción bivariada de superficies con parches triangulares. VII. MODELOS DE ILUMINACIÓN Y SOMBREADO - Modelos empíricos de iluminación (Snell, Lambert). - El modelo de iluminación de Phong. - Técnicas de sombreado interpolado. - Sombreado de Phong. - Mapas de atributos (texturas, desplazamientos, normales). - Procesador de fragmentos en GPU y su manejo desde OpenGL. VIII. MODELOS AVANZADOS DE ILUMINACIÓN (INTRODUCCIÓN) - Modelos físicos y la ecuación del rendering. - Ray tracing. - Radiosidad. IX. MODELOS PROCEDIMENTALES - Dinámica de sistemas no lineales y fractales. - Análisis de imágenes con fractales: IFS. - Síntesis de imágenes con fractales: movimiento browniano fraccional. - Sistemas gramáticos, genéticos y de reescritura. X. VIDEOJUEGOS Y JUEGOS SERIOS - Frameworks y bibliotecas para videojuegos 2D y 3D. Tipología de juegos. - Creación y manipulación de escenarios, personajes, cámaras y transiciones. UNIVERSIDAD NACIONAL DEL SUR BAHÍA BLANCA --- ARGENTINA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y DE COMPUTADORAS PROGRAMA DE: CÓDIGO: 2808 PROGRAMACIÓN DE SISTEMAS GRÁFICOS ÁREA NO: VIII 4 5 - Tipos de animaciones, transiciones y eventos. - Interfases naturales. BIBLIOGRAFÍA [1] John F. Hughes, Andries van Dam, Morgan McGuire and David Sklar. Computer Graphics: Principles and Practice (3rd Edition), Addison Wesley, 2012.[2] Watt A. & Watt M. Principles of Advanced Animation and Rendering Techniques. Addison- Wesley, London, 1992. [3] Francis S. Hill (2001). Computer Graphics. Prentice Hall. [4] Jeffrey J. McConnell (2006). Computer Graphics: Theory Into Practice. Jones & Bartlett Publishers. [5] Peter Shirley et. al. (2005). Fundamentals of computer graphics. A.K. Peters, Ltd. [6] Andrew Glassner. Principles of Realistic Image Synthesis, Morgan Kaufmann, 1995. [7] Edward Angel. Interactive Computer Graphics: A Top-Down Approach with OpenGL (3rd Edition), Addison-Wesley (2002). [8] Gerald Farin. Curves and Surfaces for Computer Aided Geometric Design, Academic Press, New York, 1988. [9] The OpenGL Red Book. Khronos group, 2002. [10] Serious Games and Edutainment Applications Minhua Ma;Andreas Oikonomou,; Lakhmi Jain. Springer books, 2011. [11] Data Structures and Design Patterns for Games. David Cortez. Cengage Learning, 2013. [12] Advanced 2D Game Development. Jonathan Harbour. Cengage Learning, 2008. Publicaciones periódicas: IEEE Computer Graphics and Applications IEEE Transactions on Visualization and Computer Graphics ACM Transactions on Graphics METODOLOGIAS DE ENSEÑANZA El curso consiste en clases teóricas, donde se presentan los fundamentos de cada uno de los núcleos curriculares, y se introducen los elementos y la orientación requeridos para la realización de los trabajos prácticos. Éstos se realizan en comisiones de dos personas, utilizando lenguajes de programación de propósito general y bibliotecas como CG, OpenGL y Unity. Las comisiones trabajan individualmente, reciben supervisión del docente por correo electrónico o videoconferencia, y envían los trabajos por correo al docente para su evaluación. MECANISMOS DE EVALUACIÓN UNIVERSIDAD NACIONAL DEL SUR BAHÍA BLANCA --- ARGENTINA DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y DE COMPUTADORAS PROGRAMA DE: CÓDIGO: 2808 PROGRAMACIÓN DE SISTEMAS GRÁFICOS ÁREA NO: VIII 5 5 Además de los trabajos prácticos, sobre el final del cuatrimestre cada comisión elige un tema dentro del espectro temático de la computación gráfica, sobre el cual, con supervisión del docente, preparan una exposición basada en trabajos de investigación de reciente publicación. De esa manera todo el grupo se enriquece conociendo la diversidad de tendencias e ideas innovadoras existentes. Sobre el tema de exposición, cada comisión realiza o bien una monografía o bien una implementación de referencia (o una combinación de ambos casos, según sea el tema elegido). La evaluación final del curso, entonces, tiene en cuenta tanto los trabajos prácticos como este trabajo final. VIGENCIA DE ESTE PROGRAMA AÑO PROFESOR RESPONSABLE (firma aclarada) AÑO PROFESOR RESPONSABLE (firma aclarada) 2022 Dr. Juan Bajo – Dr. Claudio Delrieux – Mg. Andrea Silvetti V I S A D O COORDINADOR AREA SECRETARIO ACADÉMICO DIRECTOR DECANO Fecha: Fecha: Fecha:
Compartir