Professor: Jian Huang
- Office: MK323
- Email: huangj@utk.edu
- Class Directory: ~huangj/cs452/
- Office hour: by appointment
Teaching Assistant:
- Hunter Price
- Email: hprice7@vols.utk.edu
- Office: MK314
- Office Hour: TBD
Class: TR 11:20AM - 12:35AM, MK524
- Midterm: project in lieu of exam (March 30)
- Last Class: May 9
- Final Project: Due May 11
- No Class: Spring Break (March 13-17), No Class/Spring Recess (April 7)
Prerequisites
Need to have good programming skills in C or C++ (either one); be comfortable with matrices and matrix multiplication (basic linear algebra). Have knowledge about basic system software design and development, as well as basic computer architecture.
Textbook
The optional text book is:
OpenGL Programming Guide (7th Ed or newer),
Addison-Wesley Professional.
Another reference books that you can consider:
- Fundamentals of Computer Graphics, Peter Shirley et. al., A. K. Peters.
Labs
This course does not have a set lab session. Lab assignments are to be completed on your own time. Our GTA will be available to help you as much as needed, we prefer that you reach the TA through electronic means (e.g. skype) such that you get your questions taken care of as early as possible.
Two things to note.
- The TA will only provide support for Linux programming environment. If you do choose to program on Windows, TA will still try his best to answer your questions, but he won't look at your code.
- All source code and makefiles are to be maintained by using git. You will each be given your own git repo. Only work in the repo will be graded.
Lab Submission
All submissions are directly through git.
All lab assignments are due by midnight of an announced date (usually on a Wednesday).
Grading Policy
Three lab assignments: 10 + 15 + 20 points
Midterm: 25 points
Final project: 30 points
Class Participation: 5 points extra credit
Note:
You must have finished all lab assignments before the start of the final exam. Otherwise, your final grade will be an automatic "F". The definition of finish is "to have achieved 60% credit for an assignment".
Late Submission Penalty and a One-Time Waiver
If you happen to have missed the dealine of an assignment, you should always still submit it.
We assess a 20% penalty for each day that you have missed the deadline. Every student is entitled
to a waiver of late submission penalty for one lab assignment throughout the semester. For example,
Frodo has too many other obligations when Lab3 is due. Not being able to finish Lab3 before the
announced deadline, Frodo chooses to submit his Lab3 two weeks late and use his only penalty waiver
to still receive full credit for Lab3. Frodo also understands that for all subsequent lab assignments,
he does not have this benefit any more. Please always save this waiver for a truly needy scenario.
Academic Misconduct
All lab assignments and exams must be completed on your own. Discussions are encouraged, but
each student is expected to undertake all intellectual exercises without any compromise.
The following are a few examplary scenarios that we hope will not take place this semester:
- Cheating on an exam. In this case, the exam will be counted as a zero and the grade for the
course will be an "F".
- Cheating on a lab assignment. This includes copying a segment of code from your peer
or a web resource. Letting your peer to copy your code would also be treated as cheating.
In this case, the credit for the corresponding lab assignment will be set to zero and we
will not allow the students involved to repeat this lab assignment. In this case, you would
not be able to finish all lab assignments, and thus you will not receive a passing grade.