Simulating realistic lighting and rendering complex scenes are usually
considered separate problems with incompatible solutions. Accurate
lighting calculations are typically performed using ray tracing algorithms,
which require that the entire scene database reside in memory to perform
well. Conversely, most systems capable of rendering complex scenes use
scan-conversion algorithms that access memory coherently, but are unable to
incorporate sophisticated illumination. We have developed algorithms that
use caching and lazy creation of texture and geometry to manage scene
complexity. To improve cache performance, we increase locality of
reference by dynamically reordering the rendering computation based on the
contents of the cache. We have used these algorithms to compute images of
scenes containing millions of primitives, while storing ten percent
of the scene description in memory. Thus, a machine of a given memory
capacity can render realistic scenes that are an order of magnitude more
complex than was previously possible.
Additional Information Available:
Paper, with color figures, in Adobe PDF - (1.37MB)
Paper, without color figures, in Adobe PDF - (103kB)