Assignment 1
DUE: Wednesday, 22 January, 12:00 noon
Modify your final project (or one of your last assignments) from the
previous semester to use a 3D perspective projection, and
turn in a tar file of the program.
- The program should be able to vary the field-of-view of the projection
under keyboard control. At a minimum, it should be able to switch between
a 30 degree and a 90 degree field-of-view.
For something more interesting (but not required),
make it capable of changing the field-of-view continuously
over a wide range, like a zoom lens. Play with this to see what the limits
are, and whether you understand what's happening at the limits.
- Make sure that the objects you draw are still visible. They don't need
to fill the window the same as they did with the original 2D projection (and
they won't once you change the field-of-view), but make sure that you can see
everything when the field-of-view is 90 degrees. This will require translating
the scene.
- Spin your 2D scene around its Y axis, either continuously or under
keyboard or mouse control. Use something like:
glRotatef(angle, 0.0, 1.0, 0.0);
- Make a tar file of the project. The tar file must be complete -
be sure that everything I need in order to run your program is included
in it. Include source code and Makefile.
Example of creating a tar file:
tar cvf myproject1.tar project1
where project1 is the name of the directory containing your project.
- Hand it in by copying your tar file to the directory
/home/dms/dave/424/in/01/. Give your tar file a unique name (based on
your login name), so that it won't collide with anyone else's.
The directory is set up so that you can put files into it, but you
cannot see the contents of the directory. You can remove files that
you've put there, as long as you remember their name. You won't be able
to remove files belonging to anyone else.
- Once you've 'handed in' the tar file, send me e-mail
(dave.pape@acm.org),
telling me the name of your file.