University of Waterloo

CS488/688 Fall 2022

Frequently Asked Questions

[UW] [Math] [CS] [CGL] [Graphics Courses] (Term Info | Index | Overview)

This FAQ contains answers to questions commonly asked by CS488/688 students; some are fairly specific to this course, some are related to the material. You may also want to check out other internet resources if your question is not answered here. Finally, read and/or post to the piazza newsgroup or email cs488@linux.student.cs.uwaterloo.ca if you're still stumped. Feel free to suggest improvements and additions to this FAQ.

Questions

General

What's the key code to the lab?
How much time to the assignments take?
I registered late; how can I get my account activated?
How do I view an image?

Course Policy

Can I work at home?
Can I use public domain code?
I couldn't get my program working, but I would like to get credit for my code. What should I do?

Assignment 0

Is this assignment required?

Assignment 1: Introduction to OpenGL

Assignment 2: Transformations and Coordinate Systems

Assignment 3: Hierarchical Transformations

Can I make a puppet with a different joint structure?

Assignment 4: The Raytracer

I have black dots on my image. What does this mean?
What are some materials I can use in my ray tracer?
How long does it take to ray trace an image?

Assignment 5: The Project

How do I build an interface for my project?

Answers

General

What's the key code to the lab?
You need to see the instructor to get the key code.
How much time to the assignments take?
A long time.
I registered late; how can I get my account activated?
It should be automatically activated a few days after you register; however, if you want it activated sooner, send email to accounts@math.
How do I view an image?
Use the ImageMagick tools; to display an image, the command is ``display''. There are also other useful tools for image format conversion, gamma-correction, etc. Another useful image viewer is ``gqview''.

Course Policy

Can I work at home?
Of course, but your final submission should be on the lab machines. The instructor might allow a PC or Mac-based project, but check first. You'll have to bring your machine to the lab for a demonstration. Do not start a Windows or Mac-based project until you have received permission from the instructor!
Can I use public domain code?
Only for your project, and not for the ``core'' of your project, and you must give credit. For example, you might want to use a public domain user-interface toolkit, data structures library, or an image file format library. None of these will impact the ``graphics content'' of your assignment. Be careful, though, that you follow any distribution restrictions, and include the necessary libraries in the same directory as your submission.
I couldn't get my program working, but I would like to get credit for my code. What should I do?
See the course notes on how to request code credit; if you do not submit what we ask for, you will receive no credit for your code.

Assignment 0

Is this assignment required?
No. But it's been our experience that students who don't do this assignment get behind and also mess up assignment 1 and its submission royally. So submit it, It's good for you.

Assignment 1: Introduction to OpenGL

Assignment 2: Transformations and Coordinate Systems

Assignment 3: Hierarchical Transformations

Can I make a puppet with a different joint structure?
Sure; see the gallery for examples of such puppets. However, you should make a model with a joint structure of similar (or harder) complexity, and at least one joint needs to have two rotational degrees of freedom.

Assignment 4: The Raytracer

I have black dots on my image. What does this mean?
It probably means that you need to add an epsilon check when you cast your reflected ray; without the espsilon check, the reflected ray starts inside the object and hits the object again before it hits a light.
What are some materials I can use in my ray tracer?
For the most part, you will have to use trial and error to make materials. However, here are a few that one student has made available for general use.
How long does it take to ray trace an image?
Pixar is the world's premier computer animation company. Some of their images take 24 hours to ray trace. Your images are not as complex as their's, but don't be suprised if it takes 5 to 10 minutes to ray trace our sample scenes, and longer for your unique scene.

A few suggestions: when initially testing your ray tracer, try tracing small images (50x50). These will finish much faster than the final images you submit. Also, consider printing status output to let you know which scan line is currently being rendered.

Assignment 5: The Project

How do I build an interface for my project?
You can use raw GTK+, gtkmm, or you can use something else.

GLUT could be used for a project with very simple interface requirements.

[UW] [Math] [CS] [CGL] [Graphics Courses] (Term Info | Index | Overview)

Maintainer: cs488@cgl.uwaterloo.ca