Multi-Resolution Screen-Space Ambient Occlusion
Download
Report
Transcript Multi-Resolution Screen-Space Ambient Occlusion
Multi-Resolution Screen-Space
Ambient Occlusion
Thai-Duong Hoang
Kok-Lim Low
National University of Singapore
1
Ambient Occlusion (AO)
π©
πͺ
2
AO
π½π
π©
Cosine-weighted fraction of a
tangent hemisphere that is
occluded
πͺi
π§
π
π
ππππ₯
1
π΄π π© =
π
π π©, ππ cos ππ ππ€π
Ξ©
ππ β₯ ππππ₯ : π = 0
ππ = 0
:π=1
3
Screen-Space AO (SSAO)
π©
Volumetric AO [SKUT10]
4
SSAO
(Dis)Advantages
Inaccurate
Local AO
Over/underestimated
AO
Low quality
Simple
Fast
General
Easy to integrate
Noise
Blur
5
Multi-Resolution AO (MSSAO)
Intuition
π΄π1 π΄π2 π΄π3
π΄ππππππ = max π΄ππ
6
Multi-Resolution AO (MSSAO)
Intuition
256x256
π΄π256
512x512
π΄π512
1024x1024
π΄π1024
π΄ππππππ = f max π΄ππ , average π΄ππ
π΄ππππππ β₯ max π΄ππ
π΄ππππππ β average π΄ππ
7
MSSAO
Overview
Geometry
g-buffer
(1024x1024)
Downsample
AO buffer
(256x256)
Compute AO
(256x256)
g-buffer
(256x256)
Compute AO
(512x512)
g-buffer
(512x512)
Compute AO
(1024x1024)
g-buffer
(1024x1024)
Blur & Upsample
AO buffer
(512x512)
Blur & Upsample
AO buffer
(1024x1024)
8
MSSAO
AO from Multiple Resolutions
9
MSSAO
Overview
Geometry
g-buffer
(1024x1024)
Downsample
AO buffer
(256x256)
Compute AO
(256x256)
g-buffer
(256x256)
Compute AO
(512x512)
g-buffer
(512x512)
Compute AO
(1024x1024)
g-buffer
(1024x1024)
Blur & Upsample
AO buffer
(512x512)
Blur & Upsample
AO buffer
(1024x1024)
10
MSSAO
Downsampling
π©1π§ β€ π©2π§ β€ π©3π§ β€ π©4π§
π1
π2
π
π3
π4
if π©4π§ β π©1π§ β€ ππ‘βπππ βπππ
π© β (π©2 + π©3 )/2
π§ β (π§2 + π§3 )/2
else
π© β π©2
π§ β π§2
11
MSSAO
Overview
Geometry
g-buffer
(1024x1024)
Downsample
AO buffer
(256x256)
Compute AO
(256x256)
g-buffer
(256x256)
Compute AO
(512x512)
g-buffer
(512x512)
Compute AO
(1024x1024)
g-buffer
(1024x1024)
Blur & Upsample
AO buffer
(512x512)
Blur & Upsample
AO buffer
(1024x1024)
12
MSSAO
Neighborhood Sampling
β’ Project the AO radius of influence to screen space at each
pixel π at resolution π
ππ π to get ππ (π) (in terms of pixels)
β’ Cap ππ π to some value ππππ₯ (typical value is 5)
1024x1024
512x512
16-point Poisson disk
256x256
Works well with a 3x3 Gaussian filter
13
MSSAO
Computing AO
Low-variance
Cheap
Biased
πͺi
π§
π½π
π
π
π©
1
π΄π(π©) =
π
π
π(π©, ππ )(π§ β πͺπ β π©)
π=1
model after the Monte-Carlo approximation of
1
π΄π π© =
π
π π©, ππ cos ππ πππ
Ξ©
14
MSSAO
Overview
Geometry
g-buffer
(1024x1024)
Downsample
AO buffer
(256x256)
Compute AO
(256x256)
g-buffer
(256x256)
Compute AO
(512x512)
g-buffer
(512x512)
Compute AO
(1024x1024)
g-buffer
(1024x1024)
Blur & Upsample
AO buffer
(512x512)
Blur & Upsample
AO buffer
(1024x1024)
15
MSSAO
Bilateral Upsampling
9
16
3
16
β’ Bilinear weights π€π
β’ Depth weights
1
π€π§ ππ =
1 + π§π β π§
β’ Normal weights
π§ β π§π + 1
π€π ππ =
2
3
16
1
16
π‘π§
π‘π
4
π΄π π =
π€π ππ π€π§ ππ π€π ππ π΄π ππ
π=1
16
MSSAO
Combining AO Values
π΄ππππππ = 1 β 1 β max π΄ππ
1 β avg π΄ππ
β’ max π΄ππ and avg π΄ππ are computed by
βpropagatingβ appropriate values across
resolutions
β’ Avoid underestimating AO by ensuring
π΄ππππππ β₯ max π΄ππ
β’ And a plausible heuristic
π΄ππππππ β avg π΄ππ
17
MSSAO
Temporal Filtering
π = 0.5
π=0
π΄πππ’ππ = π π΄πππππ£ + 1 β π π΄ππππππ
π=0
18
Results
Quality
Blizzard [FM08]
MSSAO
19
Results
Quality
HBAO [BSD08]
MSSAO
20
Results
Quality
VAO [SKUT10]
MSSAO
21
Results
Ground-truth Comparison
Blender
MSSAO
22
Results
Noise/Blur
Blizzard [FM08]
HBAO [BSD08]
MSSAO
23
Results
Multiple AO Scales
Small AO radius
Large AO radius
MSSAO
24
Results
Performance
β’ Scenes rendered at 1024x1024 on GeForce GTX 460M
β’ Exclusive of geometry pass
β’ The same parameters used to produce the shown images
Sibenik
Cathedral
Conference
Room
Sponza
Atrium
MSSAO
21.9 ms
VAO
22.9
Blizzard
25.7
HBAO
50.1
24.0 ms
24.8
24.9
49.5
22.2 ms
24.0
28.9
54.3
25
MSSAO
Conclusions
Inaccurate
Local AO
Over/underestimated AO
Low quality
Noise
Blur
Use more memory
Poor temporal coherence
on very thin geometry
Simple
Fast
General
Easy to integrate
Capture multiple shadow
frequencies
Not too noticeable
Errors due to the use of
coarse resolutions
Not too noticeable unless
compared with ground-truths
26
Results
Additional Results
27
Results
Additional Results
28
Results
Additional Results
29
Results
Additional Results
30
Thank You
31