Presentation is loading. Please wait.

Presentation is loading. Please wait.

Adaptive Global Visibility Sampling Jiří Bittner 1, Oliver Mattausch 2, Peter Wonka 3, Vlastimil Havran 1, Michael Wimmer 2 1 Czech Technical University.

Similar presentations


Presentation on theme: "Adaptive Global Visibility Sampling Jiří Bittner 1, Oliver Mattausch 2, Peter Wonka 3, Vlastimil Havran 1, Michael Wimmer 2 1 Czech Technical University."— Presentation transcript:

1 Adaptive Global Visibility Sampling Jiří Bittner 1, Oliver Mattausch 2, Peter Wonka 3, Vlastimil Havran 1, Michael Wimmer 2 1 Czech Technical University in Prague 2 Vienna University of Technology 3 Arizona State University 1

2 Motivation – Potentially Visible Sets 2 Potentially Visible Set (PVS)View cell

3 Motivation – PVS Applications 3 Rendering Game consoles Data streaming Virtual worlds Visibility Analysis Level design

4 PVS for 10,000 view cells: > 1 dayPVS for 1 view cell:~ 10 sec Motivation – Global Visibility 4

5 PVS Computation Methods 5 PVS size Exact Conservative Aggressive PVS  PVS E PVS  PVS E PVS  PVS E [Durand00] [Wonka00] [Koltun01] [Leyvand03], … [Nirenstein02] [Bittner03] [Haumont05] [Airey90] [Nirenstein04] [Wonka06], …

6 Conservative  Yet Another PVS Computation Method? 6 Time Exact Aggressive Too large PVSs Ideal Costly [Wonka et al. SIGGRAPH 2006] We want to get here! > 20x faster Interaction with global visibility Tune parameters… Tune a bit more … Our method PVS size New applications Not robust Exact ~1 minute

7   Classical from-region visibility   Global visibility sampling – – Uses visibility coherence – – And is progressive   ` Global Visibility Sampling 7 for each view cell Compute PVS while !terminate Compute vis. sample Add to all PVSs

8 Visibility Samples 8

9   Different sample distributions – – Stationary – – Adaptive   Mix distribution according to their performance Adaptive Global Visibility Sampling How to sample efficiently? 9 while !terminate Compute visibility sample Add to all PVSs

10   Two point – – point + point   Point-direction – – point + direction   Object-direction – – surface point + direction   Each distribution good for particular scene configuration Stationary Sample Distributions 10

11   Stationary distributions   Adaptive sampling – – Assume visibility coherence – – Sample neighborhood of good samples by mutations Adaptive Sample Distribution 11 Many bad samples (no new PVS entries) A few good samples (new PVS entries)

12 Mutation Based Sampling   What is a “good” sample? – – Sample with contribution to at least one view cell!   Store good samples in mutation queue 12

13 Mutation Based Sampling   Two-point mutation – – Mutate both end points of a sample – – Use 2D Gaussian in tangent plane 13

14   Silhouette mutation – – Mutate termination point – – Find silhouette ray   Reverse mutation – – Mutate origin – – Applied if depth discontinuity detected Mutation Based Sampling – cont. 14

15 Mixing Sample Distributions 15 ` … new PVS entries for view cell v … view cells pierced by the sample  Mix distributions adaptively  Contribution of a sample

16 Mixing Sample Distributions 16 ` + + … new PVS entries for view cell v … view cells pierced by the sample  Mix distributions adaptively  Contribution of a sample

17 Mixing Sample Distributions – cont.   Performance (weight) of distribution D   Distribution selected randomly according to w(D) 17 t(s) … time to process the sample

18 Terminating the Computation    PVS / sample < threshold   pixel error < threshold   Cheap pixel error estimation – – Error seen by randomly positioned camera – – Uses contributions of point-direction samples 18

19 Putting it Together 19 Terminate? Select distribution Draw sample Cast bidirectional rays Hit? Update distribution weights Update PVSs Contribution? Store as mutation candidate n y y n n Done y

20 MMinimize visibility errors in early stages QQuick preview EExtend visible objects FFilter kernel width depends on ––D––Distance ––S––Sampling density EErrors vs. PVS overestimation Visibility Filtering 20 V V

21   Interactive editing   Update only affected scene parts   Delete object – – Remove from all PVSs – – Mutations find new objects   Insert object – – Create shadow volumes – – Remove shadowed objects – – Mutations reinsert PVS entries Dynamic Updates 21 V V

22   5 test scenes   8,192 view cells each   2 x Xeon E5440 2.83GHz quad-core CPU, 32GB RAM   Custom BVH-based ray tracer 0.1M-1M rays/s SceneViennaArenaPompeiiPowerplantBoeing 777 Triangles3,609,6754,528,1605,646,04112,748,510337,000,000 Objects6,1567,80412,22810,150130,000 Results 22

23 Results – Evaluated Methods   AGVS … Adaptive Global Visibility Sampling   REF … Uniform random sampling (point-direction)   GPU-REF … GPU implementation (occlusion queries) 23

24 Results – Average PVS size 24 speedup ~43 2.86.6 speedup ~18 120

25 Results – PVS size 25 2.0 speedup ~60 speedup ~85 1.4120

26 Results – Pixel Error Measurement 26  After 2 hours: avg. ~10 pixels, max. ~500 pixels Walkthrough in Vienna Resolution 1000 x 1000

27 Results - Visibility Error Visualization 27

28 Results – Render Cost Analysis Application 28

29 Conclusion   New PVS computation method – – Progressively refines global visibility solution – – Adaptive sampling   Benefits – – Speed – – Ease of use (interaction, termination)   Quick preview of global visibility – – Render cost analysis, game level design   High quality PVS computation – – Games, online multi-user virtual worlds 29

30 Thank you! Acknowledgments   Data: Digital Media Production, Boeing comp.   Funding: Austrian Science Fund (FWF) (P21130-N13), Ministry of Education, Youth and Sports of the Czech Republic (LC-06008, MSM 6840770014, Kontakt 2009/6), NSF. 30

31 Details – Comparison with GVS   Walkthrough of 33 view cells   GVS – – ~62 hours for 8,192 view cells – – avg. pixel error 5.4, max. pixel error 424   AGVS – – 17 minutes, avg 104, max 4519 – – 2 hours, avg 10, max. 501 31

32 Results – Comparison with GVS 32

33 Details – Comparison with Online Culling 33

34 Details - Termination Criteria 34

35 Details – Visibility Filter 35

36   Queue of mutation candidates   Every entry has a mutation count   Equalize mutation counts   Size: 0.5M - 2M rays Details - Mutation Sample Buffer 36 17 1 0 Recent entries … … 1 2 2 3 3 17

37 Details – Distribution Mixture 37


Download ppt "Adaptive Global Visibility Sampling Jiří Bittner 1, Oliver Mattausch 2, Peter Wonka 3, Vlastimil Havran 1, Michael Wimmer 2 1 Czech Technical University."

Similar presentations


Ads by Google