The Real-Time Reprojection Cache
Report ID: TR-749-06Author: Isidoro, John R. / Sander, Pedro V. / Nehab, Diego
Date: 2006-04-00
Pages: 8
Download Formats: |PDF|
Abstract:
Real-time pixel shading techniques have become increasingly
complex, and consume an ever larger share of the graphics
processing budget in applications such as games. This has
driven the development of optimization techniques that
either attempt to simplify pixel shaders, or to cull their
evaluation when possible. In this paper, we follow an
alternative strategy: reducing the number of shading
computations by exploiting spatio-temporal coherence.
We describe a simple and inexpensive method that uses the
graphics hardware to cache and track surface information
through time. The Real-Time Reprojection Cache stores
surface information in screen space, thereby avoiding
complex data-structures and bus~traffic. When a new frame is
rendered, reverse mapping by reprojection gives each new
pixel access to information computed during the previous
frame.
Using this idea, we show how to modify a variety of
real-time rendering techniques to efficiently exploit
spatio-temporal coherence. We present examples that vary as
widely as stereoscopic rendering, motion blur, depth of
field, shadow mapping, and environment-mapped bump mapping.
Since the overhead of a reprojection cache lookup is small
in comparison to the required per-pixel processing, the
cached algorithms show significant cost and/or quality
improvements over their plain counterparts, at virtually no
extra implementation overhead.