Independent Minds, Working Together

Student Work

Computer Science 253 Theory of Computation

Lindenmayer Systems Lab (.pdf)

Short Stories with a Theory of Computation Theme:

Computer Science 356 Computer Graphics

Abbreviated lab and project descriptions are provided below. All implementations use the OpenGL and GLUT APIs.


  • Lab 1 Use all of the OpenGL graphics primitives to draw a 2D orthographic scene.
  • Lab2 - Apply simple 3D rotations and translations to a smooth shaded GLUT quadric object.
  • Lab 3 Use composed 3D transformations, input events, and an animation loop to simulate a "whirlygig" hierarchical object.
  • Lab 4 Apply texture maps to simple GLUT or user defined objects.
  • Lab 5 Investigate the OpenGL lighting model using emissive, diffuse and specular reflections for a positional light source.
  • Lab 6 Draw hermite and bezier joined curves with C0 continuity.

Group Projects

  • Group Project 1 Show the orthographic elevations of an architectural model.
  • Group Project 2 Design a complex hierarchical 3D model of a "real world" object and create a "realistic" animation of the object.
  • Group Project 3 Create a 3D world through which an observer may navigate.
  • Group Project 4 Design a fractal terrain using Fourier's "diamond-square" algorithm. The terrain is colored based on elevation and is shadowed based on the light ray intersection with terrain polygons. Texturing, blending, or multi-texturing may be applied.