CSCI 360

Fall 2013, Test 1


  1. Many graphics systems (including OpenGL) use a pipeline architecture.
    1. [4 points] What is a pipelined architecture?
    2. [8 points] What are the major steps in the imaging process pipeline? Describe what occurs at each step.
  2. Frame buffers
    1. [5 points] What is a frame buffer and how is it used in the process of creating and displaying an image.
    2. [2 points] What is double buffering?
    3. [2 points] How is double buffering supported with glut?
  3. Event Driven Programming
    1. [2 points] What is an event?
    2. [2 points] Describe the basic operation of glutMainLoop
    3. [2 points] What is a callback?
    4. [2 points] Describe what happens when glutPostRedisplay is called.
  4. Homogeneous Coordinates
    1. [1 point] What are homogeneous coordinates?
    2. [2 points] What problems do homogeneous coordinates solve in a graphics system.
  5. Transformations
    1. [2 points] Give the transformation matrix required to scale a vertex about the origin by α.
    2. [6 points] Derive (and state) the transformation matrix required to scale an object about the point (x,y,z) by an amount α
  6. Vertex Shaders
    1. [4 points] What is the primary task of a vertex shader?
    2. [2 points] When is the vertex shader invoked?
    3. [6 points] Name three types of variables which can be used in a vertex shader (Not Data Types). What is the purpose of each?
    4. [8 points] How is data in an application program associated with variables in a vertex shader program? Describe the OpenGL graphics calls and data structures involved in this process.