Graphics Reference
In-Depth Information
the same piece of geometry multiple times and blending the results. Because of
this, forward rendering is O (geometry
lights) in processing complexity, meaning
the complexity of rendering geometry is affected by the total number of lights in
the scene.
·
2.2.1 Deferred Rendering
Deferred rendering [Hargreaves and Harris 04] is a technique whereby the applica-
tion defers a scene's lighting calculations until all information required is available
in a second pass. The technique decouples the lighting complexity from rendering
the geometry and also allows the application to move these lights dynamically
without needing to discard lights. This technique also helps the application to
reduce the number of light calculations to a minimum by considering lighting on a
per-fragment basis instead of a per piece-of-geometry basis. Deferred rendering is
O (lights) in processing complexity, therefore this allows the application to render
many more lights in the scene compared to the forward rendering approach.
Deferred rendering comes at a cost because the information to shade geometry
in screen space requires that each pixel have all lighting information required
available in G-buffers. With screens larger than 1920
1080 on some recent
mobile devices, this can reach into tens of MBs, which needs to be written and
read each frame. This increases memory usage and memory bandwidth, which
could be utilized better.
×
2.3 Overview of Techniques
The techniques covered in this chapter are
deferred rendering [Hargreaves and Harris 04],
light pre-pass rendering [Engel 08],
light indexed rendering [Treblico 09].
Also covered are how each of these techniques applies to both OpenGL ES
2.0 and OpenGL ES 3.0; as each API now has different features available and
OpenGL ES extensions, these are features that are available on different mobile
devices that are not present in the core OpenGL ES API. Applications can utilize
these features but some mobile devices will not expose them.
2.3.1 Deferred Rendering
Deferred rendering [Hargreaves and Harris 04] is the traditional way of deferring
the light calculations until a second pass. This technique involves writing out at
least albedo, normals and depth to the G-buffer in one pass. Then in a separate
pass, render each of the lights with geometry representing the volumes of the
Search WWH ::




Custom Search