Author_Institution :
Dept. of Comput. Sci., Michigan Technol. Univ., Houghton, MI, USA
Abstract :
The commonly used programming approach in teaching computer graphics requires students to learn a lot before they can generate basic and not-so-realistic images. As a result, students may easily be lost in the jungle of programming primitives, and their high expectation fades away quickly. Moreover, the API based programming approach does not support global illumination models. To address these problems, a new approach that combines ray tracing and programming has been used in a junior level elective course, Introduction to Computing with Geometry, with great success. With ray tracing, we are able to cover the camera metaphor, basic shapes, geometric modeling, coefficients of an illumination model, light sources, textures, surface tessellation, smooth and nonsmooth triangles, and algebraic surfaces. A student can learn all the basics and generate beautiful and realistic looking images easily and quickly. This paper details our approach and presents our course materials, exercises, student work and evaluation.
Keywords :
computer graphics; computer science education; educational courses; programming; ray tracing; Introduction to Computing with Geometry; algebraic surfaces; basic shapes; camera metaphor; computer graphics; constructive solid geometry; course materials; exercises; geometric modeling; global illumination models; images generation; junior level elective course; light sources; nonsmooth triangles; parametric surfaces; programming; ray tracing; smooth triangles; student work; surface tessellation; teaching; textures; Cameras; Computational geometry; Computer graphics; Education; Light sources; Lighting; Ray tracing; Shape; Solid modeling; Surface texture;