Final Exam
600.457 Computer Graphics
Summer 2001 Final Exam
Thursday, June 28, 2001. 3:15pm - 5:15pm



Good Luck!

  1. For this question, consider the high-end SGI like architecture below.
    other
         We are trying to determine memory requirements for the following secnario:
               We want to implement OpenGL  on this machine.    In addition,  shadow-maps  for shadow computation as well as Mammen's   multi-pass transparency  algorithm  need to be implemented, as is  texturing.  Assume that each Geometry Processor (GP) has a buffer  of 5 triangles (assume only   GL_TRIANGLES are implemented). The command   processor makes sure that the  client is blocked if all the 5 buffers  are full. You will need to  make certain  design decisions;  be  sure to state all your decisions/assumptions.                         

    1. (15)  How much memory is needed at  each GP? Include temporary memory in your calculations. Recall that GP does the transformation and lighting.  (Note that all glu calls still run on the CPU. GPs just get  the transformation  matrices. Also assume that the two matrix  stacks are stored on the CP and  GPs store only the tops of the stacks.)
    2. (30)  How much memory is neeed on the Pixel processors? Assume that the GPs broadcast the transformed triangle information on the Triangle Bus and PPs pick up their input from the bus buffer. PPs are row interleaved, i.e.,  PP0 draws scanlines 0,5,10 ..; PP1 draws scanlines 1,6,11.. and so on. How much memory does each PP need? Please use the following itemization to account for  memory:                
      1. Memory to store the information associated with up to 5 transformed triangles
      2. Memory for Rasterization and Gouraud shading (including temporary variables)
      3. Memory for MIP-mapped textures (Assume we need to store up to 4 different 128x128 full color images.)
      4. Memory for shadow computation (recall we use the shadow-maps)
      5. Memory for transparency computation (recall we use transparency buffers)
  2. In the previous question, assume we want to incorporate     anti-aliasing    and we want to use true convolution. Suppose the  GPs  treat each  color   component  as a planar function  in X and Y for interpolation purposes.  In other words they treat  these as planes in the (X,Y,C) space, for each color component, C . They generate dC/dX and dC/dY, correspondingly, for each  color component.         

    1. (15) Given these slopes first find the expression that generates  the color value for any subpixel (x,y) given the pixel  center  value, I , at  ( x1, y1) as shown below. (For simplicity,   assume that the polygon fills all of pixel (x1, y1)).
      other
    2. (30) Now, find the expression for the final pixel value  to  be written into   the   frame buffer if  we use a 1 pixel   wide tent (i.e., the pyramid)     filter.  Note that the pyramid   filter  can be  represented by four planes . You can find the equation   of the corresponding plane to  find the height (Z ) of the pyramid   at any (x,y).
  3.   (15) What are shadow maps and shadow volumes? What are their relative   advantages and disadvantages?

  4.   (25) I would like to rasterize a polygon with following pixel coordinates
    (10, 10), (-10, 30), (-20, -5), (-20, 40), (0, 50), (50, 50), (10, 20), (10, 10).
    Assume pixel   (0, 0) is   in the left-bottom  corner of the window and   rasterization proceeds  from  scan-line
    y = 0 upwards.

    1. Find the polygon after clipping the given polygon to the window. Assume the size of the window is (100x100).
    2. Generate the span on the following scan lines: y = 9, 10, 11, 19, 20, 21, 49, 50, and 51.
  5.   (20) Recall the pixel-planes graphics architecture. Each  Pixel processor   evaluates ax+b   y+c  for the triangle   edges  to  disable   themselves if they lie outside the triangle.    If these processors  could also   compute A x2 + B y2 + Cx y +D x + F y + G,  can they  be used to render   spheres? If yes, how? If no,  why not?      

  6.   (15) Explain the difference between Phong shading and Gouraud   shading. What are their relative advantages and disadvantages?

  7.   (15) What are the disadvantages of screen-space linear interpolation   to  obtain color, Z and texture coordinates?

  8.   (25) Assume that my monitor can display the maximum intensity = 1.0  and the minimum = 0.01 on a normalized scale. I also know that  on this  scale  I cannot tell the difference in two intensity  values if  their ratio is  less   than 10 (1/100) . How many bits per pixel should I allocate in my monochrome frame buffer?