CMPS 371 Computer Graphics (5)
Introduction to computer graphics hardware, animation, two-dimensional
transformations, basic concepts of computer graphics, theory and
implementation. Use of graphics API(s) such as DirectX or OpenGL.
Developing 2D graphics applications software.
Prerequisite: CMPS 223.
Programming skill in a high level language and knowledge of data structures and algorithms.
5 quarter units. 4 units lecture (200 minutes), 1 unit lab (150 minutes).
Note: most courses will have this breakdown, update as needed if your
course does not.
Required for CIS.
Selective elective for CE|CS|EE.
Fundamentals of Computer Graphics
Peter Shirley, Steve Marschner
3rd Edition (July 21, 2009)
ISBN-10: 1568814690
ISBN-13: 978-1568814698
OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 4.3.
8th Edition
Available free online at: http://www.glprogramming.com/red/
Dr. Arif Wani, Gordon Griesel
This course covers the following ACM/IEEE Body of Knowledge student learning outcomes:
CS-??: ...
The course maps to the following performance indicators for
Computer Science (CAC/ABET) or Computer Engineering (EAC/ABET) or
Electrical Engineering (EAC/ABET):
- (CAC PIa1, EAC PIa1): Apply and perform the correct mathematical analysis.
- Homework and exams will require knowledge of math formulas used in computer graphics, and translating basic math into program code.
- (CAC PIb1): Identify key components and algorithms necessary for a solution.
- Students will be required to learn the fundamental algorithms used in computer graphics.
- (CAC PIi1): Program in a suitable computer language.
- Use of C/C++ with X-Windows and OpenGL under Linux is required.
- (CAC PId3, EAC PId3): Research and gather information.
- Skills needed to accomplish the final project.
- (CAC PIj1): Understand performance and cost as these relate to
software/firmware-based and hardware-based implementations.
- Choosing CPU vs GPU for solutions to graphical problems.
Week 1 |
Graphics framework, line drawing |
Week 2 |
Area filling, triangles, polygons |
Week 3 |
Animation, curves |
Week 4 |
Ray casting, vectors, intersections |
Week 5 |
Ray tracing, perspective, lighting |
Week 6 |
Image systhesis, photo realism |
Week 7 |
OpenGL, matrix transformations |
Week 8 |
Models |
Week 9 |
Images, textures, blending |
Week 10 |
Final projects, special topics |
Not applicable to this course.
Gordon Griesel on June, 2014
Approved by CEE/CS Department on [date]
Effective [date]