CSE 781 Real-time Rendering

Exam Study Guide

  1. OpenGL Pipeline, GPU's and Stream Processors
    1. Why do we call the GPU a stream processor?
    2. What are the five programmable parts in DirectX 11?
    3. Why do I state that most OpenGL pipeline diagrams are wrong?
    4. What restrictions are there in going from a vertex shader to a geometry shader?
  2. GLSL
    1. Write a simple shader to do X.
    2. What is a fragment?
    3. What is meant by a uniform shader model?
    4. Give at least three types of memory available in a GLSL shader.
  3. Buffers, VAO's and shader bindings.
  4. Framebuffer Objects
    1. About how much memory does a FBO require?
    2. What operations are required to render to 3 render targets simultaneously?
    3. What does it mean for a FBO to be complete and valid?
  5. Environment Mapping
    1. Compare and contrast the aliasing and distortion in dual parabela versus cube-maps.
    2. What type of materials are enviroment maps designed for?
    3. When will a cube-map fail?
  6. Bump and Displacement Mapping
    1. What can displacement mapping do (from a perceptual stand-point), that bump-mapping can not do?
    2. Give three different representations that could be used in a bump-mapping algorithm.
    3. Briefly explain the bump-mapping algorithm and how to compute the D vector.
  7. Texture Anti-aliasing
    1. Compare and contrast Rip-maps to Summed Area Tables.
    2. What are the two major problems with mip-mapping?
    3. Why is texture anti-aliasing needed?
    4. Why and under what circumstances is anisotropic filtering needed?
  8. Texture Compression
    1. Explain the DXT1 compression algorithm
    2. What is the compression ratio for a DXT1 compressed texture? Justify your answer.
  9. Hemi-sphere Illumination
    1. What is the overal benefit of spherical harmonics?
    2. Explain the 2-color hemi-sphere lighting algorithm in one sentence.
  10. Shadows
    1. Ad-hoc methods
      1. Shadow Proxies
      2. Projected Textures
      3. Projected Geometry
    2. Ambient Occlusion
      1. Briefly give an overview of the ambient occlusion algorithm.
      2. How does ambient occlusion affect the run-time performance of a shader?
      3. What is the role of the bent normal and how would use it?
    3. Shadow Volumes
      1. Explain the differences between the zPass and the zFail approaches.
      2. Why isn't a even/odd intersection count (like point in polygon tests) sufficient?
      3. How can we use OpenGL to determine whether a pixel is in shadow or not?
      4. What is the extra geometry required for shadow volumes?
      5. How can we optimize the algorithm?
    4. Shadow Maps
      1. What is the main problem with shadow mapping algorithms?
      2. Briefly explain why variance shadow maps may work.