Computer, Information, and System Engineering Department

CMPE 163 INTRODUCTION TO COMPUTER GRAPHICS (Spring 2000)


CLASS: MW, 5:30 – 6:45 PM, BC 218

OFFICE HOUR: MW, 10:00 AM – 11: 20 AM

COURSE DESCRIPTION:

Introductory Computer Graphics is an undergraduate computer graphics course which covers a broad subjects in both two-dimensional computer graphics and three-dimensional computer graphics. The topics includes vector graphics fundamentals, 2D and 3D graphics transforms, graphics primitive drawing enhancement algorithms, transformation pipeline, linear and non-linear decoration algorithms, texture mapping, rendering techniques, wire frame models, hidden line/surface removal algorithms, and shading models.

PEREQUISITES: CMPE 130 with C or better grade and MATH 129A. 

TEXTBOOKS AND/OR OTHER REQUIRED MATERIAL: 

  1. Computer Graphics, An Object-Oriented Approach to the Art and Science, by Pokorny, Frankin, published by Franklin, Beedle and Associates Inc., 1994.

  2.  OpenGL Programming Guide, the 2nd edition, the official guide to learning OpengGL, Version 1.1, by M. Woo, J. Neider, T. Davis, and published by Addison-Wesley Developers Press, 1997.

  3. OpenGL Super Bible, The Complete Guide to OpenGL Programming for Windows 95/NT, by R.S. Wright, Jr., and M. Sweet, published by Waite Group Press, 1996.  

COURSE OBJECTIVES:

The objectives of this course are to teach the fundamental principles of computer graphics with the emphasis on vector based, three-dimensional computer graphics which covers from basic transformation pipelines, wire-frame model, to hidden line and hidden surface removal, and photo-realistic graphics rendering techniques. The objectives also include the hands-on programming implementation of 5 graphics projects using the industrial standard graphics libraries, OpenGL.


TOPICS COVERED:

(1)    Vector definitions for two dimensional computer graphics, including vector line equations, DDA drawing algorithms, Bresenham algorithms for circles, arcs, etc.

(2)    Two dimensional transformations, for two dimensional computer graphics manipulations including rotations, reflections, inter-section points, enlargement, translation, etc.

(3)    Three dimensional vector graphics including the mathematical description of 3D straight lines, planes, etc.

(4)    Transformation pipelines, world-to-viewer transformation, perspective projection.

(5)    Hidden line and hidden surface removal algorithms.

(6)    Linear decoration algorithms.

(7)    Shading models, and rendering techniques.


 CLASS SCHEDULE: 

1.     Week 1: Introduction and organizational meeting, as well as the information on the general requirement of the     course.

2.     Week 2: Brief discussion of computer graphics hardware, display devices, PC and TV convergence. Review of vectors, matrices, and definition of vector graphics.

3.     Week 3: Tow dimensional vector graphics, line equations, and intersections, angles, vector dot product in two graphics applications.

4.     Week 4-5: Two dimensional transformations, translation, rotation, magnification, reduction, rotations.

5.     Week 6: Graphics primitive drawings, and solving gaps problems and efficient implementations. Bresenham algorithms, DDA algorithm etc.

6.     Week 7 and 8: Three-dimensional computer graphics, transformations, translation, rotations, reflections, world coordinate system.

7.     Week 9 and 10: Three-dimensional computer graphics, World-to-Viewer coordinate transform, Perspective Projection. Transformation Pipeline.

8.     Week 11: Hidden line removal hidden surface removal algorithms, based on vector cross product, optional material on z-buffer algorithm.

9.     Week 12: Decoration algorithm, linear decoration algorithm, non-linear decoration algorithm.

10. Week 13: Shading models, diffuse reflection, ambient light, rendering techniques.

11. Week 14 and 15:Further discussion of Ray Tracing algorithm, and in-class demo of the final project.   

 

NUMBER OF SECTIONS PER WEEK AND DURATION PER SESSION:

There are 2 lecture sessions per week, each session lasts one hour and 20 minutes. 


Homework and Projects:

There will be 5 mandatory projects and 1 optional project. The projects are usually due one and a half week after the assignment or otherwise announced in the class. Each project has to be finished on time, in general there will be no late project accepted. Exceptions may be given with instructor's permission, in this case 10% credit penalty will given on a daily basis, and no more than 3 day delay will be allowed.

Quiz and Midterm Exams:

Five minute quiz will be given on every Monday class, and there will be one midterm examination. Quiz and examination are close book, close notes.

Grading Policy:

Five projects weights 50% of the class (each project counts about 10 points), quiz weights 10% (each quiz counts about 1 point), the midterm examination counts 20% and the final examination counts another 20%. 

 


Lecture Notes:

1. Project 1

2. Project 2