Lectures for CMSC 427: Introduction to Computer Graphics

This page has pointers to the material covered in each lecture and will be updated throughout the semester. The lecture notes appearing on this page are copyrighted by Amitabh Varshney, except for images and slides that appear with appropriate credits. Use of these lecture notes by students of the class CMSC 427 at the University of Maryland is permitted for their educational purposes. Any other use requires permission of the author.

These course notes are visible only from umd.edu domains.

Following each lecture I have listed the approximate (but usually not exhaustive) coverage of the topics that we covered in our lectures from the textbook by Hearn and Baker. The following reading suggestions are for the case when you do not fully understand what was discussed in the lectures. Unfortunately, the following list does not cover everything discussed in the class (there is no perfect textbook yet).


August 31

Discussion of course policies and course plan
Motivation, Overview
applications, pipeline
PDF(2), PDF(6)
HB: Chapter 1, Section 2.2

September 2

Graphics Display Technology
human visual system, graphics hardware, vector/raster graphics
PDF(2), PDF(6)
HB: Sections 2.1, 2.2, 2.3

September 7

Graphics APIs
OpenGL overview and Event-Driven Computing
PDF(2), PDF(6)
HB: Sections 2.9, 3.1 to 3.4, 3.16, 3.19, 3.24, 4.1 to 4.3

September 9

Textures Overview
Image-based and Procedural textures, OpenGL texturing
PDF(2), PDF(6)
HB: Parts of sections 10.17 and 10.21

September 14

Geometric Primitives
lines, triangles, basic linear algebra
PDF(2), PDF(6)
HB: Chapter 5 and Appendix A-1 through A-5

September 16

2D and 3D Transformations
translate, rotate, scale, shear, homogeneous coordinates, composition
PDF(2), PDF(6)
HB: Chapter 5

September 21

3D Transformations and Viewing
parallel and perspective
PDF(2), PDF(6)
HB: Chapter 7

September 23

3D Viewing and Picking
canonical views and selection
PDF(2), PDF(6)
HB: Chapter 7

September 28

Line Scan-Conversion and Texture Mapping
overview, various alogrithms
PDF(2), PDF(6)
HB: Sections 3.4, 3.5

September 30

Polygon Scan-conversion
overview, algorithms
PDF(2), PDF(6)
HB: Sections 3.14, 3.15

October 5

Color Spaces and Transparency
color models, gamma correction, dithering, blending
PDF(2), PDF(6)
HB: Chapter 12

October 7

Midterm Recap and Sample Midterm

October 12

Midterm Review Questions

October 14

Midterm Exam

October 19

Sampling and Filtering
aliasing causes, antialiasing
PDF(2), PDF(6)
HB: Section 4.17

October 21

Cullings, Depth Cues, and Collisions
VFC, backface, coherences, collision detection techniques
PDF(2), PDF(6)
HB: Sections 7.1, 9.2, 9.14 (collisions are not covered in textbook)

October 26

Visibility Determination
visibility techniques, Z-buffer, Painter's algorithm, Cells/Portals, BSP trees
PDF(2), PDF(6)
HB: Sections 9.1, 9.3, 9.5, 9.6, 9.7, 9.14

October 28

Illumination, Shading, Texturing
Ambient, Diffuse, Specular Illumination; Flat, Gouraud, Phong Shading; some texturing issues
PDF(2), PDF(6)
HB: Sections 10.1, 10.2, 10.3, 10.10, 10.20, 10.21

November 2

Ray Tracing
overivew, acceleration approaches
PDF(2), PDF(6)
HB: Section 10.11

November 4

Shadows
types, generation, mapping
PDF(2), PDF(6)
HB: Section 10.6 (negligible coverage)

November 9

Global Illumination
radiosity and photon mapping
PDF(2), PDF(6)
HB: Sections 10.12, 10.14

November 12

Modeling Overview
implicit, parametric, procedural, and meshes
PDF(2), PDF(6)

November 16

Interpolation and Approximation
piecewise interpolation, Bezier, B-Spline curves and surfaces
PDF(2), PDF(6)

November 18

Point-based and Image-based Rendering
overview of various approaches
PDF(2), PDF(6)

November 23

Volume Rendering
overview, applications
PDF

November 30

Computer Animation
overview, quaternions
PDF(2), PDF(6)

December 2

Virtual Environments
overview, technologies
PDF(2)

December 7

Graphics Processing Units
GPU overview
PDF(2), PDF(6)


December 9

Course Recap
discussion of the course and the sample final exam
PDF(2), PDF(6)