Graphics Reference
In-Depth Information
4
II
Hi-Z Screen-Space
Cone-Traced Reflections
Yasin Uludag
4.1 Overview
This chapter will introduce a novel approach for calculating reflections on dy-
namic 3D scenes, one that works on arbitrary shaped surfaces. Algorithms and
techniques that were researched during the early development of Mirror's Edge
are presented and shared.
The methods we will look into outperform any other methods both in terms
of performance and image quality, as can be seen in Section 4.8, “Performance,”
and Section 4.9, “Results.”
We will take a look into the latest work done in the area of real-time reflections,
analyze their pros and cons and where they fail to deliver. Then we'll look into
a new approach for calculating reflections in real time at game interactive frame
rates.
First we will present the algorithm itself, which uses a screen-space aligned
quad tree we call Hierarchical-Z (Hi-Z) buffer to accelerate the ray tracing. The
hierarchy is stored in the MIP channels of the Hi-Z texture. This acceleration
structure is used for empty space skipping to eciently arrive at the intersection
point. We will further discuss all the pre-computation passes needed for glossy
reflections and how they can be constructed. We will also look into a technique
called screen-space cone tracing for approximating rough surfaces, which produce
blurred reflections. Moreover, performance and optimization for the algorithm
are discussed. Then extensions to the algorithm are shown for improving and
stabilizing the result. One such extension is temporal filtering, which allows us
to accumulate the reflection results of several previous frames to stabilize the
output result of the current frame by re-projecting the previous images even
when the camera moves. The ability to approximate multiple ray bounces for
reflections within reflections comes for free when doing temporal filtering because
 
 
Search WWH ::




Custom Search