• PA4 Relief Map is due on Oct 21, 2014, 11:59pm
  • This assignment will help you deepen the understanding of the following topics
    • OpenGL pipeline
    • OpenGL shading language
    • Basic Lighting (Diffusion, Specular, Ambient, directional light, point light, spot light, etc)
    • Texture mapping
    • Normal mapping (tangent-space coordinate, paralax mapping, relief mapping)
  • Code: cs451-PA4.7z
  • What to submit
    • Your code (with everything)
    • All images that you created (see details below)
      • Texture color map
      • Normal map
      • Displacement map (height field)
      • Image rendered with color map
      • Image rendered with normal map + color map
      • Image rendered with relief map + normal map + color map
    • README.txt file in cs451-PA4 folder with the following information
      • The OS and compiler that you compile your code
      • How to build your program
      • Tasks that you completed
      • Tasks that you started but did not complete
      • Tasks that you did not start
      • What are the known bugs in your code?
  • How to submit
    • email me (jmlien@cs.gmu.edu) and your TA (ple13@masonlive.gmu.edu) a link to all source code and README.txt in a file named cs451_pa4_[your last name].zip
    • Please do not send us the file directly

Tasks

  • Task 1 (8%): Create a normal map
    • Use your camera to take a picture of a surface that has large geometric variance. This picture is called Color map.
    • Use http://www.crazybump.com/ to create
      • Normal map
      • Displace map
      • Crazybump only works on Windows and Mac. If you work on Linux and have no access to either Windows or Mac, please let me or your TA know.
  • Task 2 (15%): Implement GLSL code that renders a given shape using per-pixel spot light shading
  • Task 3 (15%): Implement GLSL code that textures a given shape using the Color map
  • Task 4 (30%): Implement GLSL code that creates bump mapping on a given shape using the Normal map
  • Task 5 (30%): Implement GLSL code that creates relief mapping on a given shape using both the Normal map and the Displace map
  • Task 6 (2%): Provide a README.txt described above