2. Deferred Rendering
1Pass Render
Albedo
Metallic
Roughness
Normal
Height
Shadow Map
Directional Shadow
Point Shadow
Spot Shadow
Gbuffer
RT0 [albedo rgba] [R8G8B8A8]
RT1 [metal,F0,0,0] [R8G8B8A8]
RT2 [rough,0,0,0] [R8G8B8A8]
RT3 [normal xyz,0] [R32G32B32,A32]
RT4 [AO r,0,0,0] [R8G8B8A8]
DSV [D24S8]
2Pass Render
Directional, Ambient :
Full Screen
Point : Sphere Geometry
Spot : Cone Geometry
Post Process
Bloom
DoF
Tone Mapping
3. Screen Space Ambient Occlusion
4x4
Tangent XZ
Basis vector
LUT
64
Sample
Vector
Constant
Buffer
출처 : learnOpenGL
Sample Vector
magnitude distribution
Gbuffer
Normal / Depth
SSAO
RT
¼ resolution
Gbuffer
SSAO + AO RT
Blurred
SSAO
RT
Gbuffer
AO RT
2x2 pixel
average
4. Screen Space Reflection
출처 :
2019 David Lettier
Kok-Lim Low paper
0
1
Perspective interpolate
DDA Algorithm
5. Tone Mapping
White value
Reinhard Curve
Simply Reinhard Curve
- Loose detail on dark area
- Colors in bright areas
are smeared
- Contrast is clear
- Similar filmic effect
HDR Render
[R16G16B16A16]
Tone Mapping
[R8G8B8A8]
Gamma Correction
Display
출처 : Delta Blog
출처 : Stephan hill