|
CSc 830 |
|||
|
Professor : Ilmi Yoon |
|||
|
Lec. session |
TH 2:10 ~ 3:25 |
Lec. Location: |
HH 113 |
|
Office Phone |
(415) 338 - 2335 |
Office #: |
TH 910 |
|
Office Fax |
(415) 338-6826 |
Office Hours: |
T TH |
|
Email Address |
yoon@cs.sfsu.edu |
||
|
Teaching Assistant |
Jun Murakawa (junmura@gmail.com) |
TA
Office Hour: |
Th 5:00 - 6:00 @ Sci 251 |
|
Mailing Address |
|
||
Course Description
The focus of this course is to teach the fundamentals of 3D computer
graphics; the process of creating images from 3D models, modeling and
animation. Thc course covers transformations, shading, lighting, rasterization,
and texturing by building miniOpenGL library and then teaches advanced topics
such as subdivision, mesh editing, GPU programming through intensive C++ and
OpenGL programming.
Course Web page
http://tlaloc.sfsu.edu/~yoon/csc830
TEXT
OpenGL Programming Guide, OpenGL ARB Addison Wesley
Recommended Readings
Computer Graphics with OpenGL, third edition, Hearn & Baker, RENTICE HALL
Computer Graphics using OpenGL, second edition, F.S. Hill, Jr., PRENTICE HALL
Interactive Computer Graphics A Top-down Approach Using OpenGL, third edition,
Edward Angel,
Addison Wesley
|
Schedule of Lecture |
||||
|
Week |
Topic |
Description & Course notes |
Assignments |
Misc. |
|
1 |
Introduction
to class and Assign1 |
Note 1 - Introduction to Computer Graphics Note 2 - Introduction to OpenGL/Glut |
|
|
|
2 |
Gz Library, & OpenGL |
Basics of
3D rendering library |
||
|
3 |
Graphics Xforms Introduction to Assign 2. |
Notation and math for graphics Note 4 - Transformation and CoordSys |
Assign 2 - View
transform and wireframe rendering |
Assign1 due (2/17
midnight) |
|
4 |
View
transform and graphics pipeline |
OpenGL
examples |
|
|
|
5 |
Introduction to Assign 3. Rasterization |
Scan line,
|
|
Assign 2 due (by
3/3 midnight) |
|
6 |
Rasterization,
mesh representation |
Note 6 - Shading |
Assign 3- Rasterization |
Assign 3- Jun's skeleton |
|
7 |
Shading,
Introduction to Assign 4. |
Illumination, Material, Lighting Note 7 - Ray Tracing |
Think of Term Project now!! Term project description |
Assign 3 due |
|
8 |
Midterm Review & Midterm Exam |
Midterm Review & Midterm Exam |
Sample questions |
|
|
9 |
Introduction to Assign 5 |
Note 8 - Textture Note 9- Shadow Screen-Space Interpolation with Perspective Correction |
Assign 4- Shading Assign 5 - Texture |
Assign 4 due |
|
10 |
Spring Recess |
Spring
Recess |
Spring
Recess |
Term project
Proposal Due |
|
11 |
Shadiw
AntiAliasing, Modeling, Simplication, Subdivision, Geometry Compression |
Note 10- GPU Programming |
Assign 5 due |
|
|
12 |
GPU
programming, Advanced Rendering issues for Game Graphics, XBox architecture
and rendering technologies |
|
Midterm Exam
(4/20) |
|
|
13 |
Game
Engine, OpenGL Optimization |
Guest speaker: Tom Hsu (Activision, EA), TA- Jun Murakawa |
EA Tour
(?) |
|
|
14 |
Non-Photorealistic
Rendering, Image-Based Rendering |
[Advance
Presentation] |
|
|
|
15 |
Renderman,
Virtual and Augmented Reality, Game and GPU applications |
[Advance
Presentation] |
|
|
|
16 |
Term
Project Class Presentation |
|
|
Term
Project Due |
Resources
1. Slides
2. Source files
4. Siggraph
Assignments
Programming assignments (HW 1 ~ 5) are graded on thorough testing,
documentation, and style, as well as correctness. As guided in the assisgnment
description, documentation for all assignments (HW1~5, presentation, midterm,
term project) should be accumulated through HW 1 ~ 5 and should be posted on
the web by the due date. You may choose HTML or pdf file format, post at your
home page and send the url to csc830 . Documentation is your self documentation
of objective, achievement (including resulting images), problems, solutions and
remaining error/tasks which will serve record of your work, used for grading
and sharing your experience with classmates. Assisnments are individual
projects and the term project can be a term project with a large group. We will
discuss about the term project during first month. In the case of team
project, grade will be evenly distributted to each team member. Therefore, the
task within a team needs to be evenly divided and managed by yourselves.
Late policy. You may turn in a program up to 10 days late for a penalty of 50 points of the available points (5 points each day). So, for example, if you would have gotten a 70/100 and submitted 2 days late, you will get 60/100. For programs due on Friday, Monday will be considered two days late. After the 5 day grace period, a late program receives no credit. Each assignemt is carefully designed to develop fundamental concepts step by step. Missing one projects propagates and causes severe impact on the later ones.
The topic and the time for the advanced topic presentation should be chosen in advance for approaval. Each student should present about 25 minutes of advanced topics that requires full understanding of one siggraph paper or a few chapters from the textbook or other advanced graphics references.
Term project is designed as a whole term project rather than a project that you start after submitting assignment 5. With your own experience and enthusiam, design a term project from the beginning of semester, post ideas on the blackboard to find team mates, and produce a project that you would be proud of for a long time. I am here to help you in developing ideas and finding possible approaches/solutions.
Grading
The following is the relative weight of each part of the course work. At the
end of the semester, you will have a score out of 100 percent. This score will
be used in a class curve to arrive at a letter grade. The course is intensively
based on programming projects and there is no exam.
|
Assign 1~ 5 |
50% |
|
Advance Topic Presentation |
10% |
|
Midterm Exam |
15% |
|
Term Project (no final
exam) |
15% |
Fun Activity
EA hosts tours and we may arrange a group tour if many students want.