OpenGL Insights
Cover Table of Contents Pipeline Map Tips Contributors Reviews BibTeX Errata Code Blog Buy

III Bending the Pipeline

Today GPUs are masters of performance, considering either high-end desktop GPUs or even mobile GPUs, which deliver an unbelievable amount of graphics relative to the power consumption. The future of graphics raises a lot of question regarding how to scale performance, doing more with less. Based on research on petascale and exoscale supercomputers, we notice that such a scale of performance forces us to reconsider memory, bandwidth, and data movement. Challenges are ahead for GPU innovations. Under the name "bending the pipeline," we include all ideas that push the graphics pipeline to explore alternative ways to feed the rendering pipeline.

We start with two classic techniques. The first one, "Real-Time Physically-Based Deformation Using Transform Feedback," presented by Muhammad Mobeen Movania and Lin Feng, explores the OpenGL transform feedback for GPU-based physical simulation. The second technique, "Hierarchical Depth-Culling and Bounding-Box Management on GPU," presented by Dzmitry Malyshau, presents a method based on the depth buffer and bounding boxes to discard invisible objects before the actual rendering even starts.

Maybe shadow mapping is a way to bend the pipeline, but Daniel Rákos certainly pushes it further in his chapter "Massive Number of Shadows with Layered Rendering" with a rendering method allowing him to generate multiple shadow maps per draw call thanks to layered rendering.

In their chapter "Efficient Layered Fragment Buffer Techniques," Pyarelal Knowles, Geoff Leach, and Fabio Zambetta lead us to explore one of the most interesting innovations of OpenGL 4 hardware, image load store, and atomic operations, through an example of order-independent transparency with a special highlight of performance resulting from different approaches.

One step further into innovation, Daniel Rákos introduces "Programmable Vertex Pulling," a radical change of perspective, where we don't submit work to the GPU, but let the GPU query the work. No doubt this approach will evolve and gain a lot of importance in the years to come.

If pushing the boundaries of today's graphics requires a shift in paradigm, bringing new asset representations might be an answer. This is the direction of the work on Gigavoxels of Cyril Crassin and Simon Green. For their OpenGL Insights chapter "Octree-Based Sparse Voxelization Using the GPU," they explain how a GPU may be efficiently used to build voxel-based representation.


17. Real-Time Physically Based Deformation Using Transform Feedback
Muhammad Mobeen Movania and Lin Feng
OpenGL

...

code


18. Hierarchical Depth Culling and Bounding-Box Management on the GPU
Dzmitry Malyshau
OpenGL

...

code


19. Massive Number of Shadow-Casting Lights with Layered Rendering
Daniel Rákos
OpenGL

...

code


20. Efficient Layered Fragment Buffer Techniques
Pyarelal Knowles, Geoff Leach, and Fabio Zambetta
OpenGL

...

code


21. Programmable Vertex Pulling
Daniel Rákos
OpenGL

...

code


22. Octree-Based Sparse Voxelization Using the GPU Hardware Rasterizer
Cyril Crassin and Simon Green
OpenGL

...


Sections