6pm - 8:20pm
will have weekly/bi-weekly programming projects based on the topics
covered throughout those weeks. It is strongly recommended that you
projects on time. It is required that you submit your own work, however
you may post and answer each others' questions through our mailing
Please follow the quidelines given in this style guide to write good, clean code and to avoid points taken off your homeworks.
Please email me
a zipped version of your working directory with all necessary extras
(e.g. project files/makefiles/ whatever is needed to compile your
Also include a readme file, stating the platform your program runs on,
whether you did any work for extra credit, or any other information I
should consider while grading your homework.
If your code does not compile you will get a zero. Therefore, please make sure you send me all necessary files.
Assignment 0 - due before next class [ 5/22/07 ]
The goal of this assignment is to make sure that you have your
programming environment setup for the future assignments. Install GLUT on the computer you are going to use to do the assignments. Compile the test program
and send an email to tell me that you have succeeded.
Assignment 0 - part 2 - due before next class [5/29/07]
The goal of this assignment is to make sure you are ready to program on
your own for the next "real" homework which will be graded. Please
familiarize yourself with the general structure of an opengl/glut code
and experiment with the template I have provided. Finally display
something interesting and send me a snapshot of your gl window. Try to
display something in 3D in order to be better prepared for next week's
Assignment 1 - due on 6/4/07 at 11:59p -- DEADLINE CHANGED to 6/5/07 6pm
The goal of this assignment is for you to get hands on experience with modeling & viewing transformations.
Assignment 2 - due on 6/11/07 at 11:59pm
This assignment is building on assignment 1
where you will implement viewing, projection and viewport
transformations as well as user interaction using glut.
Assignment 3 - due on 6/20/07 at 11:59pm
This assignment is all about textures. You will
create a texture mapped scene. Note the deadline (it is due Wednesday
night as opposed to Monday)
Assignment 4 - due on 6/27/07 at 11:59pm
This assigment is on lighting and materials. It allows the user to move lights and change material properties of objects in the scene.
Assignment 5 - due on 7/4/07 at 11:59pm
This is an assignment on curve drawing. Sorry
for the deadline but this is a much simpler hw then others so hopefully
you'll be able to finish it before you go to see the fireworks.
Assignment 6 - due on 7/18/07 at 11:59pm -- DEADLINE CHANGED TO 7/22/07 11:59p
For this assignment you will implement a simple mesh system which lets you load, modify and subdivide meshes.
Assignment 7 - due on 8/7/07 at 11:59pm
For this assignmentyou
will implement a simple ray tracer with support for camera, some
primitives and shadows. Note that the deadline for this homework is
FINAL. I cannot grant any extensions since I need to turn in grades.
Also note that this is a long period of time to finish the homework.
This is because it also includes the time for your project presentation.