Assignment  1. Due date: October 20, 2011 11:59pm

The goals of this assignment are to familiarize yourself with the OpenGL command of the rendering pipeline.

  1. Read a obj mesh file containing a geometric model represented as triangle meshes and display it centered in the display window. The obj mesh file format is described here. A sample obj file can be downloaded here. A simple cube.obj could be used for testing and debugging first. More obj mesh files may be found on the internet, e.g. www.3dcafe.com.

  2. Define a virtual camera in a 3D virtual scene, specifying its position, orientation and field of view.

  3. Render an object using points, wireframe and surface representations.

  4. Using your graphical user interface (GUI), together with the mouse and keyboard, interactively perform the following tasks:

bullet

Translate the model / camera in X, Y and Z directions.

bullet

Rotate the model / camera around X, Y, and Z axes.

bullet

Rotate the model /camera according to the moving direction and distance of the mouse.

bullet

Zoom in and zoom out view of the model.

bullet

Change the field of view of the camera – both horizontal and vertical.

bullet

Change the values of the near and far clipping plane.

 

Submit your source code and a self-contained executable file (without requests for any libraries or dlls) to csc5870@cs.wayne.edu. Please rename your executable file *.exe to *.hw1 in order to pass through the email server firewall. You also need to submit one page of description regarding how to compile you code successfully.