CS 3114 Special Topics in Computer Science:   Ray Tracing
Fall Term, 2004
Professor: Dr. Tylene S. Garrett Office Phone:
859-233-8170
Office: 103A Brown Science Center Home Phone:
502-829-5676
email address: tgarrett@transy.edu Fax:
859-233-8171
Class Meets:

MONDAY - WEDNESDAY - FRIDAY

      2:30 - 3:20   BSC/107


Office Hours:

MON

TUE

WED

THU

FRI

1:30 – 2:30

9:00 – 11:00
2:00 – 3:30

By appointment only

9:00 – 11:00
2:00 – 3:30

1:30 – 2:30

Course Prerequisites: CS2444 or permission of instructor
Textbooks and Guides:

An Introduction to Ray Tracing; Edited by Andrew S. Glassner; Academic Press; 1989. ISBN 0-12-286160-4

The OpenGL Utility Toolkit (GLUT) Programming Interface API Version 3     Documentation Guide
; Mark Kilgard;

Chapter 14 of Computer Graphics Using OpenGL, 2nd Edition;  F.S. Hill, Jr.;  Prentice Hall; 2000.  ISBN 0-020354856-8

 

Purpose:

The purpose of his course is to learn how to create realistic computer-generated images that are indistinguishable from the actual photograph of a scene. The main focus of the course is the classic ray tracing model, which is developed and implemented. A scene description language is developed and used for describing the attributes of the objects in the scene, as well as the lights and the camera. Extensions to the classic model (which allow more illumination effects) are also studied, as well as ways to speed up the algorithm itself. Finally, after recognizing the shortcomings of the classic model, other global illumination algorithms are studied. All the algorithms are heavily dependent on mathematics and physics concepts, all of which are developed in class.

No previous experience with computer graphics is assumed. Thus the course begins with an introduction to OpenGL (graphics library), GLUT (for writing X-Windows applications), and general graphics architecture concepts: pixels, windows, viewports, frame buffers, DACs, and RGB intensity levels.

 

Missed Classes: You are expected to attend all classes. Please inform me via email if it is necessary for you to miss.

Copying or Sharing Work vs Getting Help:

Unless we are working on group projects, you are expected to do your own work.  Please see me for help whenever you need to -- check office hours or make an appointment when convenient. Use the discussion board on Blackboard to discuss concepts and general programming questions. In addition to the University's Academic Integrity policy, a specific policy has been developed for this class which you will be asked to read and sign before the second week of classes. If you have any questions concerning what is or is not allowed in this class, it is your responsibility to ask about it.

Lecture and Reading Assignments:

The reading material for this course is mainly from the Glassner textbook, with some supplementary material. Daily homework exercises will be given and will provide the basis for your programming projects. Reading assignments and homework problems will be posted on Blackboard.

 

Schedule of Topics

The schedule of topics is subject to change (due to progress rate of the class) so be sure to check the Schedule of Topics page in Blackboard periodically for latest information.

 

Earning Your Grade:

Your grade will be earned through programming projects and exams, allocated in the following way:

  • Individual Programming Projects - 60%
  • You will write a basic ray tracer, implemented in 5 incremental steps. Each step (version) will build on the previous version, incorporating new features.

  • Group Programming Project - 10%

    You will be a member of a group that implements an algorithm that either extends or enhances the basic ray tracer.

  • Exams - 30%

    There will be 3 regular exams during the semester, each contributing 10% to your final grade.


Exam Dates:
Exam #1: Wednesday, October 6
Exam #2: Wednesday, November 3
Exam #3: Friday, December 3

Online Class Info:

You are getting a hard copy of this syllabus at your first lecture.  But some of this will change during the course of the semester.  (Grading policy, exam dates, etc. will not change but lecture schedule will probably change.)  All pertinent class information will be available though Blackboard, including very useful FAQ's, tips, hints, suggestions from other students, etc., available through the Discussion Forums.

 

Determining Letter Grade:
58%
D -
                             
60%
D
                                         
67%
D+
70%
C-
72%
C
77%
C+
80%
B-
82%
B
87%
B+
90%
A-
92%
A
97%
A+