Game Development Reference
In-Depth Information
3
II
Decoupled Deferred Shading
on the GPU
Gabor Liktor and Carsten Dachsbacher
Deferred shading provides an ecient solution to reduce the complexity of image
synthesis by separating the shading process itself from the visibility computa-
tions. This technique is widely used in real-time rendering pipelines to evaluate
complex lighting, and recently gained increasing focus of research with the advent
of computational rendering.
The core idea of the technique is to presample visible surfaces into a G-buffer
prior to shading. However, antialiasing is complicated with deferred shading,
as supersampling the G-buffer leads to tremendous growth in memory band-
width and shading cost. There are several post-processing methods that are
mostly based on smoothing discontinuities in the G-buffer [Reshetov 09, Chajdas
et al. 11], but these result in inferior antialiasing quality compared to forward
rendering with multisample antialiasing (MSAA) or do not address the problem
of memory requirements.
3.1
Introduction
In this article we discuss decoupled deferred shading, a technique that uses a
novel G-buffer structure to reduce the number of shading computations while
keeping the antialiasing quality high. Our edge antialiasing is an exact match
of hardware MSAA, while shading is evaluated at a per-pixel (or application-
controlled) frequency, as shown in Figure 3.1.
Our G-buffer implementation stores visibility samples and shading samples
in independent memory locations, where a visibility sample corresponds to a
subsample tested by the rasterizer, while shading samples contain surface infor-
mation, which has been previously stored on a subsample level. Using decoupled
sampling, several visibility samples can refer to a single shading sample. We do
not seek to skip the shading of G-buffer samples in order to reduce shading costs,
 
Search Nedrilad ::




Custom Search