-- CS535 (Fall 2010) --

Interactive Computer Graphics

Description: \\arthur.cs.purdue.edu\aliaga\.www\cs535-10\geomod.jpg    Description: \\arthur.cs.purdue.edu\aliaga\.www\cs535-10\photorealistic_rendering_6_after.jpg   Description: \\arthur.cs.purdue.edu\aliaga\.www\cs535-10\architecture.jpg

     Description: \\arthur.cs.purdue.edu\aliaga\.www\cs535-10\network.gifDescription: \\arthur.cs.purdue.edu\aliaga\.www\cs535-10\animations.jpg    Description: \\arthur.cs.purdue.edu\aliaga\.www\cs535-10\scanner-head-and-david-head-s.jpg

Interested in computer graphics? Does geometric modeling interest you? Do you like rendering photorealistic imagery? Do you like rendering artistic imagery? Have you ever thought of how to render a communication network? What does it mean to display internet traffic? Is doing animations fun to you? All this is part of computer graphics. This course teaches the fundamentals, at a graduate school level, for such activities and research projects. Major applications include:

[Course Handout (PDF)]

 

 1. Prerequisites

Students are required to have previous C/C++ programming experience, knowledge of linear algebra, and are recommended to have OpenGL programming experience. OpenGL will be used during the semester and reviewed at the beginning, but students can/should learn OpenGL on their own. The course focus is on the algorithms and applications.

 

 2. Course work

The course work is composed of programming assignments, exams, and interactive class participation. The programming assignments consist of a warm-up assignment, three incremental programming assignments and a final assignment. The exams consist of a midterm and a final exam. Class participation will consist of active participation during class (you be called upon) and the presentation of a mini-review to your classmates. The mini-review will cover material previously covered in class and will serve to help prepare you for the final exam. Course work will be easier to manage if you keep a constant pace through the semester. This course is hard work but you will learn a lot and have fun!

Classroom: LWSN B134

Time: MWF 4:30-5:20pm

Instructor office hours: by appointment

 

TA: Jian Cui (cui9 at purdue.edu)

TA Office Hours: Thursday 3-4pm in B116 or by appointment

 

3. Grading

            Programming Assignments:       20% (assignments 0-3)

                                                            35% (final assignment)

            Class Participation:                   15% (10% class-presentation, 5% active participation)

            Exams:                                     10% (midterm)

                                                            20% (final)

                                                            -----

                                                            100% TOTAL

 

4. Tentative Lecture and Assignment Schedule

August 23 – Course Organization, History, Programming at Purdue (OpenGL, GLUT, GLUI)

            Assignment #0 out

Find GLUT here

Find GLUI here

August 25 – Cameras and Projections: Camera Models, Single/Multi-projections

            ** Special TA Session on OpenGL/GLUT/GLUI in LWSN 3151A Aug 26 Thurs 6-8pm **

August 27 – Cameras and Projections: Linear Algebra Review, Projections, Virtual Trackball

 

August 30 – Cameras and Projections: Omnidirectional Cameras

            Assignment #0 due

            Assignment #1 out

September 1 – Cameras and Projections: Omnidirectional Cameras

September 3 – Graphics Pipeline: rasterization, shading, and lighting

 

September 6 – No Classes (Labor Day)

September 8 – Graphics Pipeline: advanced shading (Cg, GLSL)

September 10 – Texture mapping

 

September 13 – Colors: perception and models

            Assignment #1 due

            Assignment #2 out (models.zip)

September 15 – Colors: perception and models

September 17 – Colors: perception and models

 

September 20 – Colors: calibration

September 22 – Spatial Hierarchies

September 24 – Spatial Hierarchies

 

September 27 – Culling

September 29 – Culling

October 1 – Art Gallery Problem: An look into interesting visibility problems…

            Assignment #2 due

            Assignment #3 out (makepipe.zip; makepipe-src.zip)

 

October 4 – Midterm Review

October 6 – Midterm

October 8 – Going over exam

 

October 11 – No Classes (Fall Break)

October 13 – Ray tracing and global illumination I: basics and ray casting

October 15 – Ray tracing and global illumination II: ray tracing

 

October 18 – Ray tracing and global illumination III: distributed ray tracing

October 20 – Ray tracing and global illumination IV: radiosity

October 22 – Ray tracing and global illumination V: radiosity

            Assignment #3 due

           

October 25 – Final Project Explanation, Simplification: static vs dynamic LOD

            Final Projects out

            Final Projects Background Papers

            Mid-Final-Project Presentation Template

October 27 -  Procedural modeling: plants

October 29 – Constraint solving

            Final Project Selection due (by email)

 

November 1 – Procedural modeling: buildings and cities [extra slide set from EG STAR 2009]

November 3 – Simplification: basics, vertex clustering, edge-collapse

November 5 – Simplification: geometric simplification operators and metrics

 

November 8 – Images: morphing and warping

November 10 – Images: morphing and warping

November 12 – Images: lightfields and lumigraphs

 

November 15 – Gaur, Garcia-Dorado, Yigit

November 17 – Bohlmann, Cutler, Louis

November 19 – Demir, Coffey, Burkett

 

November 22 – Ren, Anderson, Wang

November 24 – No Classes (Thanksgiving Day)

November 26 – No Classes (Thanksgiving Day)

 

November 29 – Demo Rehearsal

December 1 – Project Help Session

December 3 – Point-based Rendering

 

(dead week)

December 6 – Demo Day!

December 8 – Final Review I

December 10 – Final Review II

 

(exam week)

Final Exam – see university schedule