Linear Algebra Review
The instructions for how to use the turn-in program are here.
- Nate Robbins' OpenGL tutors. My absolute favorite tutorials for understanding transformations, projections, lighting, and shape primitives in OpenGL.
- SIGGRAPH 2001 Course notes on OpenGL. A good, short course on OpenGL and GLUT.
- Red Book
(This can be found lots of other places too.)
- GLUT Tutorial (A good
tutorial on how to use GLUT. It has most of the basic stuff like scene setup,
keyboard/mouse interaction, menu, etc. )
- NeHe's OpenGL Tutorial (Contain tons of
OpenGL examples. These examples demonstrate how to use certain OpenGL commands,
which can be very useful.)
- Note on Raytracer Design.
Hopefully, it will help you get started on assignment 3.
- Object Intersection Methods.
Many strategies for intersecting on object (e.g. a ray) with another object (e.g. a sphere, etc).
- Conversion from a rotation matrix to Euler angles, Mathematica notebook and PDF.
- Ray tracer Implementation Journal
- Midterm topics list, Fall 2006 Midterm
- Bezier surface handout from 30 October discussion section
- Final topics list, Fall '06 final exam, additional example questions.
Sample OpenGL Code
- Here is the OpenGL sample code for
Windows / Unix / Linux / Mac OS X.
The sample will display a simple scene with a filled 2D circle moving around in the
circular path. This hopefully will give you some basic scene setup.
For Windows, the VC project file and the GLUT binary are provided, so it
should be straight forward to compile the example code.
For Unix, we tried to make sure that the code compiled (using "make") on the instructional X86 Solaris machines.
Before you run the executable, you will probably need to add additional run time library path.
In command line, before you run the executable, type:
For Mac OSX, you should use make with the
makefile.osx, e.g., "
make -f makefile.osx". If you're using a G4, you need to change the line that starts with
MACOPTS to include
mcpu=G4 at the end.
- An alternate starting point (that includes lighting) from the redbook can be found here.
We make no guarantees on the correctness of this code; use it at your own risk!