CS155:  Computer Graphics

Spring 2013

Lecture:

T&Th 1:15-2:30, LCS

Professor:

Z Sweedyk
1249 Olin, x78360
z@cs.hmc.edu
Office hours: TBD

Course mailing list:

cs-155-l@hmc.edu

Optional Texts:

Fundamentals of Computer Graphics 3rd edition, Peter Shirley etal.
OpenGL Programming Guide Version 2.1 by Woo, Neider, Davis, Shreiner (earlier versions available online)

Student Galleries:

Project 1 Art
Project 1 Composites
Morph movie (avi),(mov)
Project 2 Art

What is CS155?

CS155 is an introduction to the major concepts in modern 3D graphics. We begin with a study of digital images and digital image processing. Next we study rendering, the process by which a 3D model is converted to a 2D image. We cover two important rendering techniques, ray tracing and pipeline processing.  Ray tracing produces realistic images but is computationally intensive whereas pipeline processing is fast but doesn't achieve the same level of realism. We then study some methods for modeling 3D objects including polygon meshes, spline curves and surfaces, and subdivision surfaces. Finally we touch on a variety of advanced topics including GPU processing.

Grades

Points are earned through course projects, in-class labs, and class participation:
Image Processing project     20 points
Ray Tracing project    25 points
OpenGL modeling     25 points
Final project    25 points
Labs and class participation       5 points


Your course grade will be based on total points earned:
A      96-100
A- 91-95
B+ 87-90
B 84-86
B- 81-83
C+ 77-80
C 74-76
C- 71-73
D+ 67-70
D 64-66

Pair Programming

You'll develop the bulk of your projects with a partner using pair programming. Some project have an individual component as well. You may not work with the same partner on more than one project.

Late Policy

Each project has several deliverables which are due, typically, at one week intervals. You are given two late days for each project. Unused late days are rolled over for the next project. You may use your late days to extend the due time of project deliverables provided you notify me by email me at the time of submission. Your email should include the number of late days you are using. The only exception to this policy is the final project, which must be submitted by the course exam time. Note that extension days will eat into the time you have for the next deliverable/project so use them carefully. Deliverables submitted after the (extended) due times will love 5 points per day.

Submissions

You will submit all work by uploading it to your sakai site. You may submit multiple versions of any deliverable; only the last submission will be graded.

Honor Code

We provide skeleton code for most of the assignments. Any additional code you submit must be designed and written by you unless you obtain prior approval from me. Any violation of this policy will result in (at least) course failure. If in doubt, ask.

Links

Course Schedule:

Week Class Lecture notes Lab Projects
1 Tues
1-22
Introduction    
Thurs
1-24
IP I:

Digital Images
Simple pixel transformations, interpolation/extrapolation, compositing, convolution
Color shift Project 1: Image Processing
2 Tues
1-29
IP II:
Dithering, warping
Lab: Set up error-diffusion dither code Project 1: 50 pts. due
Thurs
1-31
IP III:
Misc. effects
Lab: Design fun filter  
3 Tues
2-5
IP IV:
Morphing
Morph Project 1: Due
Thurs
2-7
Morphing lab    
4 Tues
2-12
RT I:
Ray casting, intersection tests
Snowman lab 1 Project 2: Ray Tracing
Thurs
2-14
RTII:
Transformations
Scene Graphs
Implementation Roadmap 1
Snowman lab 2  
5 Tues
2-19
RT III:
Color computation
Lighting lab Project 2: 30 pts. due
rtTests1.zip
Thurs
2-21
RT IV:
Recursive ray tracing
   
6 Tues
2-26
RT V:
Bells and whistles
  Project 2: Additional 33 pts. due
rtTests2.zip
Thurs
2-28
GL I
Pipeline rendering principles
OpenGL I  
7 Tues
3-5
Project work OpenGL II Project 2: Due
Project 3: OpenGL Robot
Thurs
3-7
Project work OpenGL III  
8 Tues
3-12
GL III:
Scene graphs redux
Snowman redux Project 3: 30 pts. due
Thurs
3-14
GL IV:
Tricks I
Reflections
 
9 Tues
3-19
Spring break    
Thurs
3-21
Spring break    
10 Tues
3-26
GL V:
Tricks II
Shadows  
Thurs
3-28
GL VI:
Tricks III
Curves
Textures
Billboards
Project 3: Additional 40 pts. due
11 Tues
4-2
Project meetings   Project 3: Due
Project 4: Advanced Graphics
Thurs
4-4
Project meetings   Project 4: Initial proposal due
Sunday
6-7 (midnight)
    Project 4: Final proposal due
12 Tues
4-9
Class presentations   Project 4: Status report 1
Thurs
4-11
Class presentations    
13 Tues
4-16
Project meetings   Project 4: Status report 2
Thurs
4-18
Project meetings    
14 Tues
4-23
Project meetings   Project 4: Status report 3
Thurs
4-25
Project meetings    
15 Tues
4-30
Project work   Project 4:Status report 4
Thurs
5-2
Project work    
Exams Thurs
5-14,
2:00 PM
Exam time   Project 4: Due