Modern Shader-based OpenGL Techniques
Abstract: Modern OpenGL abandons the old fixed-function pipeline in exchange for a programmable pipeline using shaders and buffer objects. This offers much more flexibility to developers and opens the door to a huge range of effects and techniques whilst at the same time making available huge performance improvements.
This presentation will teach you about the modern OpenGL pipeline and show how to create modern shader-based OpenGL applications with Qt 5. We will then demonstrate a selection of rendering techniques that go beyond the simple ADS-lighting model used in legacy OpenGL. Some examples that we will cover using OpenGL 3.x or 4.x:
- Basic shader and buffer object usage – “hello triangle”
- Simple phong lighting
- Toon/cell shading
- Ambient occlusion using texture mapping
- Reflection and refraction with environment maps
- Instanced geometry
- Single-pass wire-frame rendering using Geometry Shaders
- GPU based tessellation
- Post-processing effects