CSS 552: Topics in Rendering
Winter 2016
Room UW1-102, M/W 8:00pm-10:00pm
Computing and Software Systems
University of Washington Bothell
NameEmail |
Office Hours: |
T 4:00-5:00 pm W 6:00-7:00pm Or by appointment |
|
|
Phone |
(425)-352-5420 (phone for appointments only please) |
Office: |
UW1-339 |
This course studies the algorithms and technologies
necessary to synthesize high quality three dimensional images. After this
course, students will understand the approaches to model, approximate, and
implement real world physical entities (e.g., light sources, materials,
reflection models, illumination computation) in the formation of imagery for
human vision system. For students in CSS Master's degree program, this course
serves two purposes. First, as an example for practical and advanced
applications of the software engineering and advanced programming skills they
have developed in the core courses. Second, this course serves as an
introduction to the important and popular field of computer graphics. Students
will be able to understand the technical details behind popular applications
including animated movies, and video games. In these ways, this course serves
as a springboard for students interested in learning and researching in
computer graphics.
|
Programming Assignments (4-5) |
~50% |
|
Weekly short quizzes |
~25% |
|
Final Project |
~20% |
|
In class participation |
~5% |
Required Text:
o Please refer to class web-site, required readings will be posted.
Required Readings:
A. Practical Ray Tracing in C, Craig Lindley, John Wiley & Sons, Inc., 1992.
1. Chapter 2: Introduction to Ray-Tracing Theory
B. An Introduction to Ray Tracing, ed. Andrew Glassner, Academic Press, 1990.
1. Chapter 1: An Overview of Ray Tracing by Andrew Glassner
2. Chapter 2: Essential Ray Tracing Algorithms, by Eric Haines
C. Real-Time Rendering, Third Edition, Tomas Akenine-Moller and Eric Haines, AK Peters, 2008.
1. Chapter 5: Illumination and Image Reconstruction
2. Chapter 6: Texturing
3. Chapter 2 and 3: Rendering Pipeline and GPU
4. Chapter 9.1: Shadows
D. Interactive Computer Graphics – A Top-Down Approach With OpenGL, fourth edition, Edward Angel, Addison Wesley, Boston, 2006.
1. Chapter 6 (Shading)
E. Graphics Shaders: Theory and Practice, Mike Bailey and Steve Cunningham, AK Peters, 2009.
1. Chapter 1 and 2
F. 3D Math Primer for Graphics and Game Development, Fletcher Dunn, and Ian Parberry, Wordware Publishing, Inc., 2002.
1. Chapter 4 and 5
Recommended Reference Texts:
o Essentials of Interactive Computer Graphics, Kelvin Sung, Peter Shirley, Steven Baer, Wellesley, MA., A K Peters Ltd, 2008.
o Fundamentals of Computer Graphics, second edition, Peter Shirley, Wellesley, MA, A K Peters Ltd. 2005.
o Real-Time Rendering, Third Edition, Tomas Akenine-Moller and Eric Haines, AK Peters, 2008.
Week |
Topics |
Reading |
Date |
Note: Subject to changes (refer to class website for actual dates) |
|
1 |
Intro + 3D Viewing and Camera Model Ray Tracing Framework |
A1 (P65 – 83) |
Jan 4, 6 |
Assign: MP #1 (Basic Frame) |
|
2 |
Vector Math + Colorimetry Orthonormal Basis + Pixel Location Illumination Model + Light Sources |
F1, B1 A1 (P89 – 105) C1 (P99 – 116) D1 |
Jan 11, 13 |
|
|
3 |
Jan 18: MLK Day (no class) Global Effects: Reflection + Refraction |
B1 |
Jan 18, 20 |
Due: MP
#1 Assign: MP #2 (Illumination) |
|
4 |
Shadows and ShadowDepth Map |
C2 |
Jan 25, 27 |
Due: MP
#2 Assign: MP #3 (Shadow and Reflection) |
|
5 |
Textures: File Texture + Mipmap Synthesized Textures: Noise + Bump |
B2 (Sections on inverse mapping) |
Feb 1, 3 |
|
|
6 |
Acceleration Structures Aliasing and Sampling Theorem |
In class handouts |
Feb 8, 10 |
Assign: Final Project Assign: MP #4
(Texture Synthesis) Due: MP #3 |
|
7 |
Feb 15: Presidents Day (no class) Super sampling and Image Reconstruction |
Feb 15, 17 |
||
|
8 |
The Rendering Pipeline + Parallel Rendering |
D1 |
Feb 22, 24 |
Assign: MP #5
(Acceleration Structure) Due: MP #4 Due: Final project proposal |
|
9 |
Final Project: research presentation Mar 2: Project day (no class) Kelvin
at SIGCSE 2016 Presenting
Workshop |
Feb 29 Mar 2 |
Due: Final project research presentation |
|
|
10 |
GLSL + HLSL: Per Shading Computation Interactive rendering and effects |
C3, E1 |
Mar 7, 9 |
Due: MP #5 |
|
11 |
Final’s Week: Project Demo & Presentation |
Mar 14 |
Due: Final Project in class |
Submitting Programming Assignments (MPs):
Submitting Source Code: You will submit your source code of each programming assignment (or machine problem, or mp) and I will run/test your submissions. We will be using the web-based catalyst submission facility. There is a folder with the corresponding mp number on the submission site (e.g. mp1, mp2, etc.). Before the due time of the assignment, you should:
Create a folder containing all the relevant source files of your mp and no more. Having extra useless/irrelevant files in that folder will results in lost credits. Please clean up Debug, Release folders (or bin/obj folders for C#) before you copy your files over. These folders can be huge and will take up unnecessary time/space. WARNING: 3% of each mp’s grade will be deducted if your submission includes the contents of Debug or Release folders, or any other useless files (e.g., unused images, or textures).
Please use your first and last name and mp# as the name of your folder. Please do not include blank space as part of the name for this folder (i.e. do use “KelvinSungMp1” as folder name, and do not use “Kelvin Sung MP1” with blank spaces.) Please zip up our folder into one zip file. Go to our course submission area and “turn in” you .zip file.
Submit as many times as you wish (you may have to use
different names), I will only look at the last one received before the deadline.
Please do not submit hard copies of your program. Let’s safe some
trees, I will look at your source code electronically.
There is a “Test Turn-in” assignment for you to try things out. Please do try it before the first MP due date! If I do not see a test submission and you have trouble submitting your first assignment at the last minute, I will not help you. I can only help those who tried.
In addition, and very importantly, you should always download your submission, un-zip/compile/run to ensure your submission is correct. Remember, the grader (and/or I) will download your submission, unzip, double-click on the .sln file to compile and run. You will lose credits if anything in your submission should prevent us from automating this process.
You are responsible to ensure that the files you submitted are correct. On the due date of the mp, the corresponding directory will be close at precisely the due time. After which, you will not be able to submit your work! I will not accept submissions via emails. You are responsible to ensure that the files you submitted are correct. Minor submission mistakes (e.g. missed a small .cs file) will result in 10% deduction from the assignment. Major submission mistakes (e.g. forgot to include a major .cs file) will be treated as in-complete assignment and you will get 0% for the assignment. On a case-by-case basis, I will decide if a submission mistake is minor or major. There will be no exceptions!
If there is an emergency and/or personal difficulty, please
talk to me in person. Remember to document your code, and practice good
programming skills.
Assignment Deadlines: There will be no late assignments accepted. Let me put this in another way, there will be no late assignments accepted. These apply to both homework assignments and machine problems. Pay attention to the deadline on the assignments (including the time), there will be no late assignments accepted. Let me explain this again, there will be no late assignments accepted. I am actually a reasonable person, come talk to me about exceptional circumstances. You know the deadlines now please plan ahead.
Lateness to classes: It does not bother me, just don’t disturb anyone. On the days the homework assignments are due, the due time will be 10 minutes after class time. So you may wish to make sure you are not more than 10 minutes late for those classes. If you want to leave early, it would be very nice if you could give me advance warning. If that’s too much trouble, or if you forgot, don’t worry, just don’t disturb anyone and leave quietly.
Commitments and such:
I am usually very easy going. I like relaxed classrooms for learning and will
try my best to create such an environment. Please do not confuse relax
environment with relax requirements. I work hard, and expect students to work
as hard. On average, each percentage of your assignments should represent
one-two hours of outside-of-class time. For example, if an MP worth 8%, then on
average, you will probably need about 10-15 hours to finish this assignment.
Please use this as a reference and let me know if you are spending too much
time on the assignments. If most of you are experiencing the same problem, then
we will have to adjust the amount of work. Please seriously consider if you
have the time this quarter for this class. If you do have the time, please stay in this class, I will work hard and try
my best to make this class a worthwhile learning experience for you.
If you have any problem with this course, please talk to me as soon as possible. I would like to help in any way I could, but I have to know there is a problem. If you fall behind in this class, it will be difficult to catch up.
Special Needs
Access and
Accommodations: Your experience in this class is important to me. If you have
already established accommodations with Disability Resources for Students
(DRS), please communicate your approved accommodations to me at your earliest
convenience so we can discuss your needs in this course.
If you have
not yet established services through DRS, but have a temporary health condition
or permanent disability that requires accommodations (conditions include but
not limited to; mental health, attention-related, learning, vision, hearing,
physical or health impacts), you are welcome to contact DRS at 425-352-5307 or
drs@uwb.edu. DRS offers resources and coordinates reasonable accommodations for
students with disabilities and/or temporary health conditions. Reasonable
accommodations are established through an interactive process between you, your
instructor(s), and DRS. It is the policy and practice of the University of
Washington to create inclusive and accessible learning environments consistent
with federal and state law.