Midterm Study Guide
Questions on the midterm exam will be taken primarily from among these topics:
-
Frame buffers
-
Know the relationships between the number of bits per pixel
and the number of colors that can be produced
-
Graphics API design considerations
-
Understand the tradeoffs between simple and complex primitives,
and the reasoning behind the use of state in APIs such as OpenGL
-
Simple OpenGL primitives
-
Know the difference between points, lines, line strips, line loops, and polygons
-
Viewport transformation
- Know how the viewport transform maps the canonical projection plane to the display window.
- Understand the default viewport transformation in OpenGL, and how it works when windows are reshaped.
-
Logical input devices
-
Understand the concept of logical input devices, especially
position, string, select, valuator
-
Input modes
-
Understand the three input modes, and the primary advantages
of event-mode input
-
GLUT input processing
-
Understand how GLUT uses event mode input with callback functions
-
Homogeneous coordinates
- Understand the motivation for expressing points and vectors in homogeneous coordinates.
- Be able to give the homogeneous coordinates for an (x,y,z) point.
- Affine transformations
- Understand how affine transformations work and their representation as 4x4 matrices.
- Be able to transform the homogeneous coordinate representation for a point, given the representation of a transform.
- Camera positioning
- Understand how OpenGL positions the camera at the origin in "eye coordinates."
- Understand how to use translation and/or rotation to produce the effect of moving the camera.
- Understand the function gluLookAt().
- Using transformations in OpenGL
- Be familiar with the API function calls in OpenGL to do rotation, scaling, and translation
- Parallel and perspective projections and associated transformations
- Understand the difference between parallel (=orthographic) and perspective projection transformations.
- Be able to identify the transformations given their representation as 4x4 matrices (look at the bottom row)
- Z-Buffering
- Understand how z-buffering works and be able to describe the effects of turning z-buffering on and off given a particular drawing scenario
- Double Buffering
- Understand what double buffering is.
- Understand when you would want to implement double buffering and how it is done using glut.
- Lighting and materials in OpenGL
- Understand the simplifying assumptions used in OpenGL for lighting.
- Understand the difference between directional lights, point sources, and spotlights.
- Understand the three types of material interaction, and be able to identify the best representation for a given type of object properties from given choices.
Return to
91.546 Home Page