Teaching introductory computer graphics via ray tracing

  • Authors:
  • Helen H. Hu

  • Affiliations:
  • Westminster College, Salt Lake City, UT

  • Venue:
  • Journal of Computing Sciences in Colleges
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Ray tracing is a computer graphics technique capable of creating visual effects such as realistic soft shadows, reflections, refractions, motion blur, and depth of field. Historically considered computationally expensive, ray tracing is gaining in popularity as computing power (primarily the recent increase in the number of processor cores) continues to increase. This paper details an introductory computer graphics course taught around a Java ray tracer. For most students this was their first exposure to the field of graphics. Having programmed primarily in Java since CS 1, the students preferred Java to C++. Like any other Java program, the ray tracer ran on all platforms, minimizing students' frustrations and avoiding investment in a new IDE. For most homework assignments, students added features to a bare-bones ray tracer, converted from the C++ code in Kevin Suffern's textbook, Ray Tracing from the Ground Up [13]. Additional non-ray tracing homework was also assigned to expose students to other fundamental areas of computer graphics, such as color models, transformations, viewing and event-driven interactions.