Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.

Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.

Like this presentation? Why not share!

- Modern gpu optimize blog by ozlael ozlael 2806 views
- Stable SSAO in Battlefield 3 with S... by Electronic Arts /... 315364 views
- Infinity Blade and beyond by ozlael ozlael 1208 views
- μ€ν°λΈμ‘μ€μ²λΌ νλ μ ν μ΄μ νκΈ° by ozlael ozlael 1329 views
- μ λν°μ λΌμ΄ν μ΄ μ μ΄μλ€κ΅¬μ? (A to Z of Light... by ozlael ozlael 5029 views
- μ λν° κ·Έλν½ μ΅μ ν, μ΄λκΉμ§ ν΄λ΄€λ (Optimizing U... by ozlael ozlael 5948 views

5,166 views

5,036 views

5,036 views

Published on

No Downloads

Total views

5,166

On SlideShare

0

From Embeds

0

Number of Embeds

2

Shares

0

Downloads

31

Comments

0

Likes

2

No embeds

No notes for slide

- 1. Multi-Resolution Screen-Space Ambient Occlusion<br />Thai-Duong Hoang<br />Kok-Lim Low<br />National University of Singapore<br />1<br />
- 2. Ambient Occlusion (AO)<br />π©<br />Β <br />πͺ<br />Β <br />2<br />
- 3. AO<br />Cosine-weightedfraction of a tangent hemisphere that is occluded<br />πͺi<br />Β <br />π§<br />Β <br />π½π<br />Β <br />π π<br />Β <br />π©<br />Β <br />ππππ₯<br />Β <br />π΄ππ©=1πΞ©ππ©,ππcosππππ€π<br />Β <br />ππβ₯ππππ₯:π=0ππ=0Β Β Β Β Β Β Β Β : π=1<br />Β <br />3<br />
- 4. Screen-Space AO (SSAO)<br />π©<br />Β <br />Volumetric AO [SKUT10]<br />4<br />
- 5. SSAO(Dis)Advantages<br />Inaccurate<br />Local AO<br />Over/underestimated AO<br />Low quality<br />Noise<br />Blur<br />Simple<br />Fast<br />General<br />Easy to integrate<br />5<br />
- 6. Multi-Resolution AO (MSSAO)Intuition<br />π΄π2<br />Β <br />π΄π1<br />Β <br />π΄π3<br />Β <br />π΄ππππππ=maxπ΄ππ<br />Β <br />6<br />
- 7. Multi-Resolution AO (MSSAO)Intuition<br />256x256<br />π΄π256<br />Β <br />512x512<br />π΄π512<br />Β <br />1024x1024<br />π΄π1024<br />Β <br />π΄ππππππ=fmaxπ΄ππ,Β averageπ΄πππ΄ππππππβ₯maxπ΄πππ΄ππππππβaverageπ΄ππ<br />Β <br />7<br />
- 8. MSSAOOverview<br />Geometry<br />g-buffer (1024x1024)<br />Downsample<br />Compute AO<br />(256x256)<br />AO buffer (256x256)<br />g-buffer (256x256)<br />Blur & Upsample<br />g-buffer (512x512)<br />Compute AO<br />(512x512)<br />AO buffer (512x512)<br />Blur & Upsample<br />Compute AO<br />(1024x1024)<br />g-buffer (1024x1024)<br />AO buffer (1024x1024)<br />8<br />
- 9. MSSAOAO from Multiple Resolutions<br />9<br />
- 10. MSSAOOverview<br />Geometry<br />g-buffer (1024x1024)<br />Downsample<br />Compute AO<br />(256x256)<br />AO buffer (256x256)<br />g-buffer (256x256)<br />Blur & Upsample<br />g-buffer (512x512)<br />Compute AO<br />(512x512)<br />AO buffer (512x512)<br />Blur & Upsample<br />Compute AO<br />(1024x1024)<br />g-buffer (1024x1024)<br />AO buffer (1024x1024)<br />10<br />
- 11. MSSAODownsampling<br />π©1π§β€π©2π§β€π©3π§β€π©4π§<br />ifπ©4π§βπ©1π§β€ππ‘hπππ hπππ<br />π©β(π©2+π©3)/2π§β(π§2+π§3)/2<br />else<br />π©βπ©2π§βπ§2<br />Β <br />π1<br />Β <br />π2<br />Β <br />π<br />Β <br />π3<br />Β <br />π4<br />Β <br />11<br />
- 12. MSSAOOverview<br />Geometry<br />g-buffer (1024x1024)<br />Downsample<br />Compute AO<br />(256x256)<br />AO buffer (256x256)<br />g-buffer (256x256)<br />Blur & Upsample<br />g-buffer (512x512)<br />Compute AO<br />(512x512)<br />AO buffer (512x512)<br />Blur & Upsample<br />Compute AO<br />(1024x1024)<br />g-buffer (1024x1024)<br />AO buffer (1024x1024)<br />12<br />
- 13. MSSAONeighborhood Sampling<br /><ul><li>Project the AO radius of influence to screen space at each pixel π at resolution π ππ π to get ππ(π) (in terms of pixels)
- 14. Cap πππ to some value ππππ₯ (typical value is 5)</li></ul>Β <br />1024x1024<br />16-point Poisson disk<br />512x512<br />256x256<br />Works well with a 3x3 Gaussian filter<br />13<br />
- 15. MSSAOComputing AO<br />Low-variance<br />Cheap<br />Biased<br />πͺi<br />Β <br />π§<br />Β <br />π½π<br />Β <br />π π<br />Β <br />π©<br />Β <br />π΄π(π©)=1ππ=1ππ(π©,ππ)(π§βπͺπβπ©)Β <br />model after the Monte-Carlo approximation of<br />π΄ππ©=1πΞ©ππ©,ππcosπππππ<br />Β <br />14<br />
- 16. MSSAOOverview<br />Geometry<br />g-buffer (1024x1024)<br />Downsample<br />Compute AO<br />(256x256)<br />AO buffer (256x256)<br />g-buffer (256x256)<br />Blur & Upsample<br />g-buffer (512x512)<br />Compute AO<br />(512x512)<br />AO buffer (512x512)<br />Blur & Upsample<br />Compute AO<br />(1024x1024)<br />g-buffer (1024x1024)<br />AO buffer (1024x1024)<br />15<br />
- 17. MSSAOBilateral Upsampling<br />Bilinear weightsΒ π€π<br />Depth weights<br />π€π§ππ=11+π§πβπ§π‘π§<br />Normal weights<br />π€πππ=π§βπ§ππ‘π<br />Β <br />916<br />Β <br />316<br />Β <br />316<br />Β <br />116<br />Β <br />π΄ππ=π=14π€ππππ€π§πππ€ππππ΄πππ<br />Β <br />16<br />
- 18. MSSAOCombining AO Values<br />π΄ππππππ=1β1βmaxπ΄ππ1βavgπ΄ππ<br />maxπ΄ππand avgπ΄ππare computed by βpropagatingβ appropriate values across resolutions<br />Avoid underestimating AO by ensuringπ΄ππππππβ₯maxπ΄ππ<br />And a plausible heuristicπ΄ππππππβavgπ΄ππ<br />Β <br />17<br />
- 19. MSSAOTemporal Filtering<br />π=0.5<br />Β <br />π=0<br />Β <br />π΄πππ’ππ=πΒ π΄πππππ£+1βππ΄ππππππ<br />Β <br />π=0<br />Β <br />18<br />
- 20. ResultsQuality<br />Blizzard [FM08]<br />MSSAO<br />19<br />
- 21. ResultsQuality<br />HBAO [BSD08]<br />MSSAO<br />20<br />
- 22. ResultsQuality<br />MSSAO<br />VAO [SKUT10]<br />21<br />
- 23. ResultsGround-truth Comparison<br />22<br />MSSAO<br />Blender<br />
- 24. ResultsNoise/Blur<br />MSSAO<br />HBAO [BSD08]<br />Blizzard [FM08]<br />23<br />
- 25. ResultsMultiple AO Scales<br />Small AO radius<br />MSSAO<br />Large AO radius<br />24<br />
- 26. ResultsPerformance<br /><ul><li>Scenes rendered at 1024x1024 on GeForce GTX 460M
- 27. Exclusive of geometry pass
- 28. The same parameters used to produce the shown images</li></ul>25<br />
- 29. MSSAOConclusions<br />Inaccurate<br />Local AO<br />Over/underestimated AO<br />Low quality<br />Noise<br />Blur<br />Use more memory<br />Poor temporal coherence on very thin geometry<br />Not too noticeable<br />Errors due to the use of coarse resolutions<br />Not too noticeable unless compared with ground-truths<br />Simple<br />Fast<br />General<br />Easy to integrate<br />Capture multiple shadow frequencies<br />26<br />
- 30. ResultsAdditional Results<br />27<br />
- 31. ResultsAdditional Results<br />28<br />
- 32. ResultsAdditional Results<br />29<br />
- 33. ResultsAdditional Results<br />30<br />
- 34. Thank You<br />31<br />

No public clipboards found for this slide

×
### Save the most important slides with Clipping

Clipping is a handy way to collect and organize the most important slides from a presentation. You can keep your great finds in clipboards organized around topics.

Be the first to comment