Laboratory Assignment 3 -

Due: April 5, 2015

Total Points: 140 + 20 (bonus)

Objectives:

This project will expose the team to the following.

  1. Scene composition
  2. Modeling advanced objects like the teapot.
  3. 3D Printing
Tasks & Grades:

There are two parts to this laboratory assignment.  
    1. (90) The first part will emphasize on scene composition. The scene will be constructed as follows:
      1. A teapot rendered with appropriate “shaders”. The teapot will be generated after  the “subdivision” of the original Newell patches as described in chapter 11  of the Angel Text.   Adapt it but not use it directly. Please find a VERSION here; accompanying patches and vertices can be found here and here respectively.
      2. You are welcome to testdrive teapot1.html, teapot2.html, teapot3.html, teapot4.html, and teapot5.html.
      3. The teapot will placed on the floor or a podium and surrounded by three walls. Your teapot should not be wireframe but should be at least flat shaded. Use teapot1.js (with recusive evaluation) but shade faces akin to teapot5.html. Essentially use the shaders of teapotFull shading is welcome and you will get bonus points.
      4. On each wall use the rendered image of the Tree, the Hilbert Curve, and the Maze. These images
        1. can be rendered on the walls as fractals
        2. Or rendered as textures. Code will be provided to load textures (see next item).
      5. Find files HERE that can be used as a template. The floor and one wall is drawn. A texture is added to the one wall. The same needs to be done for other two walls and the floor.
      6. For the floor, one can use a gallery of teapots as texture.
      7. Bonus points
        1. Use  a model of teapots (from Blender or from the seond part of the lab) and then vary the illumination parameters (diffuse, specular, etc.). 
        2. Use exact normals to compute shading for item 3 above.
        3. Allow for smooth shading of teapots
        4. Create a sophiticated user interface that allows for interactive viewing of the museum room.
        5. Incorporate fancy lighting for the room.
                2. The second part requires the construction of a scale-model of a teapot.
      1. Use Blender (blender.org) to create a scale space model.
      2. Use the tools listed below to test the created teapot.
        1. http://wiki.blender.org/index.php/Doc:2.6/Manual/Modeling/Meshes/Mesh_Analysis
        2. http://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Modeling/MeshLint
        3. http://www.blendernation.com/2013/03/27/blender-2-67-feature-3d-printing-toolbox/
        4. Pick one teapot from one the 3 or 4 generated in each group.
        5. The best teapot is one which passes the Mesh-lint/mesh-analysis test with flying colors.
        6. A STL file will be generated for the best teapot.
        7. It should be noted the volume of the teapot should be around 4 inch cube and wall thickness 0.125.
Team Logistics:

The division of labor among the teams can require one member to adopt the Angel code to render the teapot; another to complete the texturing code; and another to get it all together.

Each team member will generate a teapot and these will be tested against the above tools and the best one will be selected for printing.

Submission:

We will use Carmen to submit the code. We need all the code and compiling apparatus. Essentially, the grader needs to be able to compile easily.
It will be useful to create code that compiles easily on all platforms. We realize that can be hard with GLSL. Therefore, please do include a README file that describes the platform-of-choice.

Milestones:

We will have at least 2 code reviews ! On March 24 and March 31.