COS 426 Computer Graphics - Fall 1997
COS 426 Home
Project 4 - RenderMan
This is where things become interesting. In this project we will construct a model of a scene and create beautiful, "realistic" pictures of the scene. While the previous projects have focused on 2D graphics, now we are leaping into 3D. We will make use of our line and triangle scan conversion algorithms from Project 1, as well as the surfaces of revolution from Project 3.
In the project, you will model a scene, or collection of scenes, using the Inventor modeling language. The model may involve a complex hierarchy of structures, but at the lowest level it boils down to a collection of triangles in space. You build the infrastructure to transform these triangles from coordinates in model space to points on the screen, and then draw them. At first the rendering will simply be a set of points, and then wireframe, and then flat shading, finally smooth shading.
For this project, we are working in teams of two people. In all but extreme cases, you will both receive the same grade. In the writeup, please say who implemented what features of the assignment. You should both be familiar (at least at a high level) with all of the parts of the project, even if you each only implement part of it.
To give you a leg up on the project, you are starting with a program that can read an Inventor file and render it using the GL library. Your mission is to produce a similar picture, but using your own code in place of GL. If you prefer, you could write your own user interface; or if you hate graphical user interfaces you could just write a program that reads the model file and produces an image file as output.
Required features (22 points total)
To make things simple, we are actually working with a subset of the real Inventor modeling language; your models may still be viewed using "ivview", but your renderer will not work for all Inventor models. See the hints page for the Inventor features we'll implement.
The following list shows the optional features in order of increasing difficulty. Hints will posted to the course web for many of these. The number in front of an item indicates the maximum number of points you could receive for full implementation of this feature; you may receive partial credit.
To get started, download the user-interface. The files may be unpacked in your directory by typing:
% gunzip project4.tar.gz
% tar xvf project4.tar
% rm project4.tar
The first thing to try is:
% make depend
% render.tcl simple.iv
Keep an eye on the hints that will appear during the course of this project, from frequently asked questions, precepts, etc.
Same as before.
|Last update: Sun Nov 30 18:08:47 EST 1997|