Learn OpenGL - Graphics Programming

Screenshots of programs following "Learn OpenGL" by Joey de Vries

The Code is here: https://github.com/williamblair/learnopengl

13 - Model Loading
15 - Stencil Buffer
16 - Blending
17 - Face Culling
18 - Post Processing/Frame Buffers
19 - Skybox/Cube Map
20 - Reflection and Refraction
22 - Geometry Shader (Explosion and normals display)
23 - Instanced Drawing (draw many instances with a single render call)
24 - Blinn-phong shading (compared to just phong)
25 - Gamma correction (For manual, gamma = 2.2)
GL_RGB TextureGL_SRGB texture
OpenGL SRGB Buffer
Reference image (no gamma correction)
26 - Basic Shadows with using Depth Maps
Depth Map Texture
Result render with "shadow acne"
Result render with "shadow acne"
Result render with bias calculation to prevent "shadow acne"
Result render with oversampling issue
Result render fixed oversampling issue (clamp depth map texture and border color)
Result render with PCF smoothing on the shadows
26 02 - Omnidirection shadows (shadows from point lights) using Depth Cube maps
Without PCF FilteringWith PCF filtering
27 - Normal/Bump maps and tangent space
Without Normal Mapped TextureWith Normal Mapped Texture
28 - Parallax texture mapping
Height Scale = 0.1Height Scale = 0.3
29 - High Dynamic Range (HDR) Lighting
HDR Enabled (Exposure = ~5.0)HDR Disabled
30 - Bloom Lighting
Default Render
Brightness Image (High intensity filtered)
Blurred Image
Final Result
31 - Deferred Rendering
Position Buffer
Normal Buffer
Color and Specular Buffer
Final Result
32 - Screen Space Ambient Occlusion (SSAO)
Position Buffer
Normal Buffer
SSAO Occlusion Buffer
SSAO Blurred Occlusion Buffer
Final Result (SSAO Disabled)
Final Result (SSAO Enabled)
33 - Basic Physically Based Rendering
34 - PBR Diffuse Irradiance
Irradiance Map as the environment cubemap
Irradiance map diffuse disabled
Irradiance map diffuse enabled

<-- Back to Home