COMP37111: Advanced Computer Graphics (2010-2011)
This Course Unit covers the principles of modern techniques for Computer Graphics modelling and image synthesis, on the assumption that students have already completed the introductory Computer Graphics course (COMP20072). Its principal aim is to introduce students to the ever-expanding repertoire of techniques for defining and rendering images of 3D model data. Particular attention is focussed on the increasing requirements for complex rendering and interaction to occur in real-time.
|Programme outcome||Unit learning outcomes||Assessment|
|A1 A2 A5||Have a knowledge and understanding of the principles of image synthesis, from the construction of application models, to the rendering of images.|
|A1 A2 A5||Have a knowledge and understanding of current models for the interaction of light and materials, and rendering techniques based on these models.|
|A1 A2 A5||Have a knowledge and understanding of applications of interactive computer graphics for scientific visualization, and other areas such as engineering, design, simulation and entertainment.|
|B1||Understand the need for, and the specifics of, techniques for obtaining real-time performance of computer graphics algorithms.|
|A1 A2 A5||Have a knowledge and understanding of some areas of current computer graphics research.|
Introduction and overview (1)
Applications of advanced image synthesis: visualization, animation, games, CAD systems, simulation. The classical graphics pipeline rendering: geometry, tessellation, modelling and viewing transformations, clipping, screen mapping, rasterizing. Global illumination: starting with the image plane, ray tracing. Local versus global illumination.
Model acquisition (2)
Laser scanning; surface fitting; occlusions and hole-filling; acquisition of geometry from photographs and video.
Non-polygonal modelling techniques (2)
Procedural modelling: fractal geometry, modelling with fractals, particle systems, L-systems.
Non-photorealistic rendering (1)
Approaches to rendering that, instead of striving for traditional photorealism, emphasise information content, visualization and understanding. Early work by Gooch & Gooch, and an overview of more recent techniques.
Introduction to global illumination: Ray Tracing (1)
What is GI, why is it important, when and how is it used? Basic ray tracing, primary and secondary rays, shadow feeler rays, reflection and transparency. Recursive algorithm. RT signature. Real-time ray tracing. Monte Carlo ray tracing. Importance sampling, variance reduction methods. Path tracing, bidirectional ray tracing.
Global illumination: Radiosity (1)
Principles: energy exchange between surfaces, implementation approaches, rendering techniques.
Volume rendering (2)
Programmable rendering (1)
The GPU and its architecture. Vertex and pixel shaders.
Real-time rendering (1)
Examples of model complexity, the need for interaction. Culling techniques: back-face, view frustum, portals, occlusion culling. Spatial enumeration, grids, AABBs, HBBs. Level of detail.
The basic material for the course is covered by the recommended reading and although it is not essential to buy these, students will be expected to read additional material on the subjects presented.
So it is recommended that if the books are not purchased then they are studied in the University Library or CS Resource Centre. Other materials, such as copies of published papers, will be made available, on paper and on-line, to supplement the lectures and books.
Title: OpenGL programming guide: the official guide to learning OpenGL, version 1.2 (3rd edition)
Author: Shreiner, Dave
Publisher: Addison Wesley
Title: Interactive computer graphics: a top-down approach with WebGL (7th edition)
Author: Angel, Edward and Dave Shreiner
Supplementary TextTitle: Real-time rendering (4th edition)
Author: Akenine-Moller, Tomas et al
Publisher: A K Peters/CRC Press
Very good book, but not essential to buy. You can read some of it online at Google Books (http://books.google.com/books?id=V1k1V9Ra1FoC).