| Due: Friday, Oct. 15, 1:30 pm Late Penalty: 20 points per 24 hours. |
3D Morphing |
Points Possible: 100
The Assignment:
Demonstrate that you can morph 3D objects with minimal change to previous project.
Details:
Use the work you did for Project 3 (2D Morphing). There should be only two differences to this project:
- Your objects should be 3D so each point should have 3 components: x, y, z. Your objects should be modeled around the origin to make life easier in this project. For example, if you intend to use a cube, the vertices of the cube should be centered around the point (0,0,0) in a 3D coordinate system.
- You will have a camera in the scene, aimed at the origin, providing a perspective projection of the model onto the screen. Code for this will be provided in class, and then developed mathematically. (Studies have shown that students understand the concepts better after making use of them. Strange, but true; I have verified this with my own classes.)
Breakdown of the points:
- (40 pts) you must make use of the functions you used in the previous project:
- Tween( )
- FillTween( )
- DrawSequence( )
- AnimationSequence( )
- you must use the spherical viewing method of moving the camera around in the scene.
- (20 pts) you must use two 3D objects: start object and destination object.
- (20 pts) you must begin the animation with the first object appearing stationary on the screen. Allow the user to move around in the scene using the keys associated with spherical viewing.
- (20 pts) you must begin the animation by allowing the user to press the 'a' key from the keyboard (lowercase a). When the animation ends, the user should be allowed to use the spherical viewing keys to move around the destination object.
For 10 Points Extra Credit:
Use more than 2 objects.
Submit:
Please name the program prog04.cpp and submit it to p4 directory, along with your makefile for the project and any other files necessary for your project to run.