Download Advanced Computer Graphics - Assignment 3 Fall 2008 | CMSC 740 and more Assignments Computer Graphics in PDF only on Docsity! Assignment 3 CMSC740 , Fall 2008 Due: 9:30am Thursday, October 30, 2008 http://www.cs.umd.edu/class/fall2008/cmsc740/assg3/ Your goal in this assignment is to make shadows, motion blur, reflection, and dust animation for the chickens as shown in the figure and the reference executable on the assignment web page. Refer to the demo version to resolve any ambiguities that might have remained in the description below. (a) Draw hard shadows for the chickens on the track using shadow projection with the light direction of (0.1, -1.0, 0.1). (3 Points) (b) Animate dust using dust.png texture in a cyclic manner as follows: • In the first frame of the cycle, position the dust texture with appropriate scaling, rotation, and translation behind each chicken. (1 Point) • In subsequent frames progressively increase the size of the texture while decreasing the alpha value of the texture until the texture is almost transparent. Repeat the cycle. (2 Points) You can use loadpng.h, loadpng.cpp and loadpng_example.cpp for loading PNG images. (c) Reflection mapping on the fence. (3 Points) (Due to slow performance, the reflection range is limited to where the leading chicken runs.) • Draw the fence with GL_FILL and glColor4f(1.0f, 1.0f, 1.0f, 0.5f). • Render to the virtual plane, which is an approximation to the fence near the leading chicken, and read pixel data from the back buffer to a texture. • Map the texture to the fence. The leading chicken should be shown in the reflective range of the fence. (d) Implement the following keyboard functions. (1 Point) • ‘R’ or ‘r’ for toggling reflection. • ‘C’ or ‘c’ for toggling camera between the user controllable camera in the Assignment 1 and the automatic tracking camera in the assignment 2.