Project - CSU540 Computer Graphics - Spring 2005

Professor Futrelle

Version of 12 March 2005

Overview of the project you are to do. All work is to be done in Java/Swing.

NEW - RAY TRACING CODE ADDED - 18 MARCH 2005. Access it all here.

The primary point is that you should proceed in stages, getting very simple things working, a bit at a time. Do not plan a big project and try to build it all at once. In fact, the milestones I have set, for intermediate hand-ins, will ask you for small projects that gradually increase in complexity. These will be tied to two intermediate milestones plus the final project at the end.

Extra Credit

For each milestone and the final project this is what to hand in and how to hand it in, just as before, for Assignment 2:

Week 11. Milestone 1
Due Wednesday, March 23rd, 11:59pm:
This requires that you use the Triangle class and ray tracing code from Professor Futrelle.
Part A: Manually construct (type in) a simple polyhedron with at least five vertices, placed away from the origin, e.g., size 100x100 or so at least 100px from the origin. Draw the wire frame, using a different color for each edge.
Part B: Ray trace two small triangles that partially overlap, each a different color, e.g., 10x10 or so, away from the origin. You will need to keep one or more arrays to record which triangles are hit and what the t values are. Choose your own background color.
Week 13. Milestone 2
Due Monday, April 4th, 11:59pm:
This requires that you create a Polyhedron class that can contain a set of triangles.
Part A: Manually construct (type in) two polyhedra with at least five vertices each and placed away from the origin, e.g., size 20x20 or larger, at least 100px from the origin. Make sure that they partially overlap, as viewed along the z-axis. Give each Triangle in one polyhedron a random color. The other polyhedron should use the same color for every facet. Draw the wire frames for the two, in a pair of contrasting colors.
Part B: Ray trace the scene containing the two polyhedra.
Week 14. Final Project
Due Wednesday, April 13th, 11:59pm:
This requires that you create set up transformation matrices to transform points, the vertices in your model. This can be simplified by collecting all the point objects in one polyhedron into a single list.
Part A: Using the two polyhedra you have already created or better, a larger and more interesting scene, transform each independently to some rather "random" orientation. Draw the wire frames for the transformed polyhedra, in a pair of contrasting colors.
Part B: Ray trace the scene containing the two polyhedra.

Go to CSU540 home page. or RPF's Teaching Gateway or homepage