ray casting

A simplified form of ray tracing. A ray is fired from each pixel in the view plane, and information is accumulated from all the voxels in the volume data it intersects.

Each voxel is first given an associated colour and opacity. The ray is sampled at a fixed number of evenly spaced locations and the colour and opacity are trilinearly interpolated from the eight nearest voxels. These are then composed linearly back to front to give a single colour for the pixel.

Ray casting was invented by John Carmack for the game Wolfenstein 3D. It is faster and lower quality than ray tracing, and is ideal for interactive applications. It parallelises well, although random access is needed to the voxels.