Computer Graphics
Warning: This page is not the official one of the current course at PUC-MG and only showcases information that is related to a past offering.
About
This course gives students an overall view of computer graphics focusing on real-time rendering techniques. It introduces them to the rendering pipeline, bidimensional and tridimensional transformations, model representations (curves, surfaces, meshes, voxels), basic radiometric and local/global illumination concepts, and texture mapping. The course also establishes the foundations of shader programming using Unity 3D.
Textbooks
- Azevedo, E., Conci, A., “Computação Gráfica”, vol. 1, 2003.
- Akenine-Moller, T.; Haines, E.; Hoffman, N., “Real-Time Rendering”, 3rd ed., 2008.
- Lengyel, E., “Mathematics for 3D Game Programming and Computer Graphics”, 3rd ed., 2011.
Slides
Click on the topic name to download the respective slides as ZIP files. The inside content is in Portuguese because the course is offered at a brazilian university.
Topic | Description |
---|---|
Introduction | A brief overview on the history of computer graphics, display technologies, line drawing/polygon filling concepts, and human perception of depth cues. |
Pipeline | Introduction to the graphics pipeline: application, geometry, and rasterization stages. Normalized device coordinates. Face culling, geometry clipping, and hidden surface removal. |
Math Review | Review on basic mathematics such as trigonometry, analytic geometry, and linear algebra. |
Transforms | Linear transformations, orthogonal and perspective projections. Change of basis. Generalized coordinates. Euler angles. Z-Buffer depth precision. |
Curves and Surfaces | Hermite and Bézier curves, Catmull-Rom splines, B-Splines, and NURBS. Polygonal meshes, bicubic surfaces, implicit representations, CSG, voxels, quadtrees, k-d trees, and BSP trees. |
Illumination | Introduction to radiometry, photometry, and colorimetry. Color spaces. BRDFs and the rendering equation. Global vs local illumination. Diffuse and specular shading models. |
Texturing | Texture mapping. Nyquist rate, aliasing, and texture filters. Mipmaps. Environment mapping, shadow mapping, bump mapping, and parallax occlusion mapping. |