340 likes | 619 Views
Separable Approximation of Ambient Occlusion Jing Huang 1 Tamy Boubekeur 1 Tobias Ritschel 1,2 Matthias Holländer 1 Elmar Eisemann 1 1 Télécom ParisTech - CNRS/LTCI 2 Intel Visual Computing Institute. Ambient Occlusion.
E N D
Separable Approximation of Ambient Occlusion Jing Huang1Tamy Boubekeur1 Tobias Ritschel1,2 Matthias Holländer1 Elmar Eisemann1 1Télécom ParisTech - CNRS/LTCI 2Intel Visual Computing Institute
Ambient Occlusion Fast approximation of a subset of indirect lightingeffects
Ambient Occlusion • AO = shadowcreated by ambient illumination Ref photo : Guangzhou - Cloudy Day • Was first introduced by M. S. Langer & S. W. Zucker («Shape fromshading on a cloudyday», 1994) • Capturing surface variation usingaccessibiltyshading by Gavin Miller («Efficient Algorithms for Local and Global Accessibility Shading», 1994)
Ambient Occlusion Integral of Visibility all over the hemisphere
Ambient Occlusion • Improving the perception of volume, concavities & contact areas of 3D objects AO in Starcraft II.
Evaluation Estimated by ray tracing Prohibitive for real time rendering
Screen-SpaceAmbient Occlusion For Real Time Applications
ScreenSpaceAmbient Occlusion SSAO • Main idea: • using the depth-buffer as a cheap, randomly accessible substitution for the actualscene’sgeometry. • Casting AO computation as a local filter in screenspace • CryEngine [Mittring2007]
ScreenSpaceAmbient Occlusion • [Shanmugam and Okan 2007], [McGuire 2010]
ScreenSpaceMethods • Horizon-Based AO [BAVOIL 2008] depends on the elevation angle e
HybridAmbient Occlusion • Accounts for «outside the view» occluders [Reinbothe 2009]
Problem • Can we go a stepfurther ? • SSAO alreadyreformulated a 3D raytracingprocessinto a 2D screenspacelayout • Can wework in 1D ? Observation: • SSAO looks like a local image filter. Idea: • Propose a separable (2x1D) AO approximation instead of a full (2D) evaluation
BilateralFilter Withgaussianfilter Withbilateralfilter Original signal
SeparableBilateralFilter Mathematicallynot separable But convincingseparableapproximation [Pham 2005]
Separable AO • Separate AO samplingalong 2 orthogonal axes in a 2-passprocess • Evaluation alongeach axis usinganykind of SSAO • Occlusion estimation (Crytek, HBAO, etc) • Sampling (uniform, random, jittered, etc) Needspatiallyvarying directions for removingdirectionalbandingartifacts Solution: Local Frame Randomization
Local Frame Randomization • Randomize the orientation of the local frame (axis pair) ateach pixel • Avoidsbandingartifacts.
Distribution Pattern [Pharr 2004] • Usingdifferent distribution pattern: • Random • Stratifiedsampling • Regular • Jittered • Low-discrepancysampling • Halton sequence • Hammersleysequence Random Regular Jittered Halton Hammersley
InterleavedSampling[Keller 2001] • Regularlyreplicated basis pattern • Betweenregular & irregularsampling Regular Pattern Interleaved Pattern
InterleavedSampling[Keller 2001] «Toasters»
InterleavedSampling[Keller 2001] Sampling 4 x 4 BoxfilterResults High FrequencyRandom AO in « Toaster’sfeet » 4 x 4 Interleaved • Advantage: • easy to filter • savememory
Performance Resolution 1024 x 768 GPU Nvidia GTX 480
PerceptualError Measuredagainst the exact computation for each technique using[Mittring 2007] [BAVOIL 2008] Reference HBAO Separable PerceptualDifference in Labspace. [Yee 2004]
Limitations • Inheritedfrom the particular SSAO technique using to evaluatealong the 2 axis • Missedoccluders (outside the frustum) • Couldbesolved by voxelization [Reinbothe 2009] • Over occlusion • Couldbesolved by depth peeling [Ritschel 2009]
Conclusion • Separable Approximation of Ambient Occlusion • Faster than complete evaluation • Compatible with all SSAO methods • No visible error • Same principle can be applied to other screen-space rendering techniques
Acknowledgements • ANR Projects « Cecil » and « MEDIAGPU » • European Network of Excellence « 3DLife » • Help from Telecom ParisTech: Catherine Pelachaud, Bert Buchholz, Jean-Marc Thiery
Thankyou for your attention • Thanks • Merci • 谢谢 • Danke • Obrigado • Gracias