Entrega de memorias del trabajo de investigación: dia 29 de Mayo
ÚNICA CONVOCATORIA de defensa y presentación de los trabajos de investigación: 30 de Mayo a las 16h
Esta asignatura surge como continuación de la asignatura Gráficos 3D, con el objetivo de profundizar en las técnicas actuales de programación gráfica.
En esta asignatura partimos de la descripción de modelos de iluminación locales en un intenso recorrido que nos lleva hasta las técnicas más avanzadas de iluminación global. Se hace especial hincapié en aprovechar las posibilidades que ofrecen el hardware especializado, las APIs más modernas y los algoritmos que nos ayudan a acelerar estas técnicas, para poder alcanzar un elevado grado de realismo sin alejarnos de las exigencias de las aplicaciones intercativas (tiempo real).
El planteamiento consta de sesiones teóricas en las que se introduce la teoría fundamental y de sesiones prácticas en las que los alumnos conjuntamente con los profesores abordan temas más avanzados y prácticas de programación.
Este curso, de nuevo, parte del temario y las prácticas se han renovado respecto de la asignatura Técnicas Avazadas de Gráficos 3D del plan docente anterior.
|
Información |
Normativa |
Temario |
Materiales |
Blog |
|
Audiencia |
Enunciados |
Noticias |
||
|
|
|
|||
|
NOVEDADES |
|
|
Prácticas de años anteriores |
|
|
|
|
|
|
RESUMEN
- Asignatura: Obligatoria
- Nº de créditos: 6
- Cuatrimestre: Segundo
- Modalidad de Impartición: Presencial
- Departamento: DATCCCIA (Departamento de arquitectura y tecnología de computadores, ciencias de la computación e Inteligencia artificial)
- Aula: 103 Laboratorios I (Campus Móstoles)
- Conocimientos recomendados: haber cursado Gráficos 3D
- Blog de la asignatura (Noticias): Zest for Graphics
- Web: http://dac.escet.urjc.es/rvmaster/asignaturas/RA
- Calendario: Google Calendar
- Guía docente de la asignatura: RA
- David Miraut Andrés
- Despacho: 2011A Extensión del Rectorado
- Dirección de contacto: david.miraut |arroba| urjc.es
- Horario de tutorias: X (18h-20h) V (10h-12h previa cita)
- Despacho: 2011A Extensión del Rectorado
- Miguel Ángel Otaduy Tristán
- Despacho: 0052 Extensión del Rectorado
- Dirección de contacto: miguel.otaduy |arroba| urjc.es
- Horario de tutorias: por determinar; contactar por e-mail.
En la primera parte de la asignatura se profundizará en las técnicas avanzadas de generación de gráficos por computador analizando diversas técnicas que permiten aumentar el realismo de las escenas finales en tiempo real. Se abordará el mapeado de texturas, modelos avanzados de iluminación y sombreado y técnicas de generación de sombras, visibilidad, modelado basado en imagen...
En la segunda parte de la asignatura se tratarán técnicas más sofisticadas que nos permiten representar las escenas con mucho mayor realismo, son las llamadas técnicas de iluminación global: Traza de Rayos, Radiosidad, Transporte de Luz, MonteCarlo…
Los conceptos se reforzarán con la realización de prácticas y trabajos práctico
- Clases teóricas
- Las clases presenciales no son obligatorias, si bien se recomienda la asistencia encarecidamente, ya que los temas tratados en la asignatura son base para las siguientes asignaturas.
- Es posible asistir a las clases teóricas de la asignatura en calidad de lectoraunque se haya convalidado o no se curse la asignatura siempre que se esté matriculado del Máster Oficial de Informática Gráfica, Juegos y Realidad Virtual ó se estén cursando asignaturas afines en los másteres que permiten doble y triple titulación con éste. También es posible visitar el laboratorio en el horario en el que se imparten la clases prácticas aunque sin hacer uso de los recursos del laboratorio.
- Aquellas charlas y conferencias que se consideren de gran interés podrán serobjeto de preguntas en el examen teórico y fuente de ideas para los proyectos. Como comprendemos que no todos los alumnos de la asignatura podrán asistir a las mismas, se habilitarán los recursos necesarios para registrarlas y que los alumnos las puedan ver de forma diferida cuando les sea más cómodo.
- Laboratorios
- No se guardarán las notas de prácticas de un año para otro.
- El criterio más importante es la funcionalidad: un programa que funciona siempre tiene más posibilidades de llevarse una buena puntuación; no se valorarán aquellos programas que no funcionen. Una práctica o proyecto modesto será evaluada mucho más favorablemente que un "proyecto" ambicioso que sólo da core-dumps. El siguientes criterios que se tendrán en cuenta (y que hay que cuidar al realizar las prácticas) son:
- La manera de resolver el problema con el programa
- Estructuras de datos y diseño de los algoritmos
- Claridad y documentación en el código
- Eficiencia y elegancia en la implementación.
- ¡Por favor, no hagáis trampas! Se procura alentar el diálogo y el trabajo en equipo, pero por favor trabajad de forma independiente (a menos que el trabajo sea en grupos). Trabajos muy similares serán considerados como copias, a menos que la naturaleza lo pedido sea tan restrictiva que justifique las similitudes. Y una copia implica el suspenso automático. Simplemente piénsalo de esta manera: hacer trampas dificulta el aprendizaje y la diversión de conseguir hacerlo.
Es vuestra responsabilidad proteger vuestro trabajo y aseguraros que no se convierte en el de otro.
-
- Si se utiliza (o mejora) código fuente u otro material obtenido a través de internet, la biblioteca... debe darse el crédito a los autores y pedir permiso de ser necesario (si tiene una licencia restrictiva). Tomar código de un libro o de internet sin tener en cuenta estas consideraciones será considerado copia.
- Está terminantemente prohibido la práctica de técnicas de overclocking en las tarjetas gráficas del laboratorio, así como desbloquear los procesadores de vértices y fragmentos de los chips gráficos. Este tipo de acciones pueden dañar físicamente el equipo del laboratorio y los alumnos responsables serán amonestados severamente.
EJERCICIOS:
- Ejercicio 0 (obligatorio): Análisis de efecto túnel [PDF] [Post en el que dejar el enlace a la página web con el trabajo (como comentario)]
La asignatura tendrá dos prácticas obligatorias. Por ahora, se incluyen como referencia las prácticas del curso 2010/2011:
- Práctica 1 (obligatoria): El Viaje alucinante [PDF]. Fecha de entrega: 10 de Marzo 2012
Extracto de la película basada en la novela homonima de Asimov [YouTube] - Un ejemplo más parecido a lo que se indica en la práctica [YouTube]
- Documento sobre splines Catmull-Rom [PDF]
Documento sobre movimientos de cámara sobre una trayectoria [PDF]
Codigo base:
- Parte 1 [código en C]
- Parte 2 [código en C] - Práctica 2 (obligatoria): Trazador de Rayos [PDF]. Fecha de entrega: 12 de Abril 2012 (extendida)
Código base para Windows (VS2010) [código en C]
Se indican en azul los temas del bloque opcional del temario.
- 23 de Enero. Tema 0: Presentación de la asignatura [PDF]
- 26 de Enero. Tema 1: Texturas I
- 30 de Enero. Asignación Práctica 1; Splines
- 2 de Febrero. Tema 1: Texturas II [cancelada]
- 6 de Febrero. Tema 1: Texturas II [PDF]
- 9 de Febrero. Tema 2: Alpha blending; Niebla; Corrección gamma [PDF]
- 13 de Febrero. Tema 3: Antialiasing I (Muestreo y reconstrucción) [PDF]
- 16 de Febrero. Tema 3: Antialiasing II / Tutoría práctica 1 [PDF] [PDF2]
- 20 de Febrero. Tema 4: Iluminación global; Ecuación de Rendering [PDF]
- 23 de Febrero. Tema 5: Traza de rayos [PDF] [Whitted'80]
- 27 de Febrero. Asignación Práctica 2
- 1 de Marzo. Tema 6: Traza de caminos [PDF] [Siggraph01Course29(Cap.6.1)]
- 5 de Marzo. Tema 7: Sombras [PDF] [ejemplo] [solución]
- 8 de Marzo. Tema 8: Sombras Avanzadas I [PDF]
- 12 de Marzo. Tema 8: Sombras Avanzadas II
- 15 de Marzo. Tema 9: Estructuras de aceleración; Técnicas de visibilidad [PDF]
- 19 de Marzo: Festividad de San José (no lectivo)
- 22 de Marzo. Tema 10: Monte Carlo I [PDF] [ejemplo] [solución]
- 26 de Marzo. Tema 10: Monte Carlo II / Tutoría de Práctica 2
- 29 de Marzo. Tema 11: Cachés de irradiancia; Mapeado de fotones I [PDF]
- 12 de Abril. Tema 11: Mapeado de fotones II / Modelado basado en imagen [PDF]
- 16 de Abril. Tema 12: Medios participativos [PDF]
- 19 de Abril. Tema 10: Transferencia de radiancia precalculada [PDF]
- Uno al final del cuatrimestre con los contenidos de la parte teórica de la asignatura.
TRABAJO DE INVESTIGACÓN Y EXPOSICIONES ORALES :
- Traza de Rayos en Tiempo Real con OptiX: Óscar López
- Traza de Caminos en Tiempo Real con OptiX: Eduardo Aparicio
- Filtro morfológico en GPU:
- Traza de Caminos con TOKASPT:
- Traza de Caminos con BRIGADE: Marc Costa
- Monte Carlo:
- Ambient Oclussion en GPU: Juan Feuerriegel y Marcos Diez
- Campo de profundidad con filtros separables: Juan Bayona y José Bayona
- Modelado basado en Imagen: Christian Rodriguez y Elena Mateos
- Renderizado de pelo mediante shaders de geometría:
- Rendering no fotorealista - cel shading: Diego Fradegas
- Subsurface Scattering - Piel:
- Sombras volumétricas suaves:
- Integración de imagen sintética con imagen real: Andrés García
- Simulación de cámaras físicamente correctas
- Motion Blur mediante filtros separables
- Campo de profundidad mediante filtros sepables
- Modelado basado en imagen: rendering inverso
- Estimación de error en la síntesis de imágenes
- Radiosidad en entornos dinámicos
- Fenómenos de interferencia e iridiscencia en traza de rayos
- Podéis encontrar más ideas en los GPU Gems (1, 2 y 3)
- Real Time Rendering. Tomas Akenine-Möller. 3rd Edition. A.K. Peters
- Physically Based Rendering: From Theory to implementation. Matt Phar & Greg Humphreys. Morgan Kauffman
- 3D computer graphics: a mathematical introduction with OpenGL Buss, S.R.Cambridge U. Press
- Interactive computer graphics: A top-down approach with OpenGL Angel, E. Addison Wesley
- GPU Gems, edited by Randima Fernando, GPU Gems 2, edited by Matthew Pharr, and GPU Gems 3, edited by Hubert Nguyen, Addison-Wesley, 2004, 2005, 2007. Fine edited collections of articles on interactive graphics in all-color books. These books were edited by NVIDIA employees, so there is a high level of NVIDIA participation. See the respective websites for the first, second, and third books for sample articles and more information.
- ShaderX6, ShaderX5, ShaderX4, and ShaderX3, (and out of print: ShaderX2: Introductions and Tutorials, ShaderX2: Tips and Tricks). edited by Wolfgang Engel et al. These books are also edited collections of articles dealing with new graphics techniques that use vertex and pixel shaders. Some are nuts and bolts practical, others are about new techniques in development. See the ShaderX6, ShaderX5,ShaderX4, ShaderX3, ShaderX2, and ShaderX websites for more information, samples, etc.
- Real-Time Collision Detection, by Christer Ericson, Morgan Kaufmann, 2004. A new book on collision detection techniques. Solid theory coupled with the author's own practical experience makes this book an excellent choice for practitioners in the field. In addition to describing a wide range of relevant algorithms, the author also discusses optimization, numerical precision, robustness, and other topics critical in creating a workable interactive system. See the author's web site for more information.
- Geometric Tools for Computer Graphics, by Philip Schneider and David Eberly, Morgan Kaufmann, 2002. An incredible volume focused on practical computational geometry. It includes a wide array of object/object intersection methods and other common algorithms. It also gives a solid grounding in much of the mathematics behind the methods. The book has a companion web site.
- 3D Game Engine Design: A Practical Approach to Real-Time Computer Graphics, by David Eberly, Morgan-Kaufmann, 2000. A book dealing with a wide variety of real-time related topics, with solid theory and code. Somewhat math intensive at times, but we prefer this to hand-waving. This book offers the author's way of implementing various algorithms; do not expect a survey of techniques, but rather in-depth coverage of a particular solution. Pure gold (though a little dated by now), and the related web site is a (inter)national treasure.
- Game Programming Gems, Game Programming Gems 2, and Game Programming Gems 3 by Mark DeLoura (Editor), Charles River Media, 2000, 2001, 2002. A wide range of Graphics Gems-like articles (with which it is not affiliated), it has many articles on subjects relevant to real-time rendering. There are tidbits on intersection calculations, collision detection, LOD and progressive meshes, texture mapping effects, sprite effects, shadows, vertex and pixel shader tricks, and much more. There is also material on modelling, skinning, and animation. About a quarter or more of each book is on artificial intelligence and other topics, so the focus is not entirely on computer graphics.
- Level of Detail for 3D Graphics, by David Luebke et al., July 2002. This book covers a wide range of topics in the area, by experts in the field. It discusses such aspects as mesh simplification, terrain rendering, and many algorithmic methods for accelerating image generation. The book has a companion web site.
- Advanced Animation and Rendering Techniques: Theory and Practice, Alan Watt and Mark Watt, Addison-Wesley, 1992. An excellent book about more advanced algorithms in computer graphics. Covers a wide range of topics with some depth, with good references to more information. Quite old at this point, and not at all a good book about interactive rendering, but it has a lot of information about the field otherwise.
- Graphics Gems series, Academic Press. Old, but with useful algorithms. A series of 5 books with a wide range of algorithms for all sorts of areas of computer graphics; visit the web site for a listing of articles and for the latest code.
- Jim Blinn's Corner: A Trip Down the Graphics Pipeline, by Jim Blinn, Morgan-Kaufmann, 1996. A collection of columns from IEEE Computer Graphics and Applications, these talk about all sorts of nitty gritty details and algorithms not covered in other texts. Admittedly, most people will not need to implement software rendering algorithms, but there are still useful tidbits here.
- Jim Blinn's Corner: Dirty Pixels, by Jim Blinn, Morgan-Kaufmann, 1998. A second collection of columns, in some ways more useful in this hardware accelerated world, as topics in pixel arithmetic and signal processing are covered.
Tema 2: Texturas
Pixel coordinates. Jim Blinn [PDF]
The truth about texture mapping. Jim Blinn [PDF]
What is a pixel. Jim Blinn [PDF]
Hyperbolic Interpolation [PDF]
Piramidal Parametrics. [PDF]
Tema 3: Corrección Gamma
A ghost in a snow storm. Jim Blinn [PDF]
Tema 4: Antialiasing
What we need around here is more Aliasing. Jim Blinn [PDF]
Return of the Jaggy. Jim Blinn [PDF]
Antialiasing. Seppo Äyräväinen [PDF]
Tema 6: Sombras avanzadas
Me and my (fake) shadow [PDF]
Los detalles de la evaluación se detallarán el día de la presentación de la asignatura.
Nos interesa mucho la opinión de los alumnos de la asignatura.
- Podéis dejar vuestras sugerencias en esta página web del Blog de la asignatura


