In traditional computer graphics, 3D objects are created using high-level surface representations such as polygonal meshes, NURBS patches, or subdivision surfaces. However, these methods often do not account for light interaction that is taking place in the atmosphere or in the interior of an object. Contrary to surface rendering, volume rendering describes a wide range of techniques for generating images from 3D scalar data. These techniques generate high-quality images of volumetric objects in real time, including local and global illumination effects. This book provides the basic theory and practical examples needed to work with volume graphics by taking advantage of today's graphics hardware to produce stunning results in real time. The authors provide: a practical introduction to texture-based volume rendering; methods for integrating different aspects of light/matter interaction; global illumination techniques; optimization strategies; code samples - and more!