multi resolution method for ray tracing
play

Multi-Resolution Method for Ray Tracing Sung-Eui Yoon ( ) Course - PowerPoint PPT Presentation

Multi-Resolution Method for Ray Tracing Sung-Eui Yoon ( ) Course URL: http://jupiter.kaist.ac.kr/~sungeui/SGA/ At the Previous Class Studied LOD techniques for rasterization 2 Goal Perform an interactive ray tracing of


  1. Multi-Resolution Method for Ray Tracing Sung-Eui Yoon ( 윤성의 ) Course URL: http://jupiter.kaist.ac.kr/~sungeui/SGA/

  2. At the Previous Class ● Studied LOD techniques for rasterization 2

  3. Goal ● Perform an interactive ray tracing of massive models ● Handles various kinds of polygonal meshes (e.g., scanned data and CAD) Double eagle tanker St. Matthew 82M triangles 372M triangles Forest model (32M) 3

  4. Recent Advances for Interactive Ray Tracing ● Hardware improvements ● Exponential growth of computation power ● Multi-core architectures ● Algorithmic improvements ● Efficient ray coherence techniques [Wald et al. 01, Reshetov et al. 05] 4

  5. Ray Coherence Techniques ● Models with large primitives ● Group rays and test intersections between the group and a bounding box Large Image plane triangles Viewpoint Ray beams 5

  6. Hierarchical Acceleration Data Structures ● kd-trees for interactive ray tracing [Wald 04] ● Simplicity and efficiency ● Used for efficient object culling Axis-aligned kd-node bounding box 6

  7. Ray Tracing of Massive Models ● Logarithmic asymptotic behavior ● Very useful for dealing with massive models ● Due to the hierarchical data structures ● Observed only in in-core cases 7

  8. Performance of Ray Tracing with Different Model Complexity ● Measured with 2GB main memory Render time Memory (log scale) thrashing! Working set size 2GB Model complexity (M tri) - log scale 8

  9. Low Growth Rate of Data Access Time Growth rate during 1993 – 2004 50 45 47X 40 35 30 25 20 15 20X 2X 10 5 0 Disk RAM CPU access access speed speed speed Courtesy: http://www.hcibook.com/e3/online/moores-law/ 9

  10. Inefficient Memory Accesses and Temporal Aliasing ● St. Matthew (256M triangles) ● Around 100M visible triangles ● 1K by 1K image resolution ● 1M primary rays ● Hundreds of triangle per pixel ● Each triangle likely in different area of memory Image plane Small triangles Viewpoint Rays per each pixel 10

  11. Due to the under- sampling Example of Aliasing 11

  12. LOD-based Ray Tracing ● Propose an LOD (level-of-detail)-based ray tracing of massive models ● R-LOD, a novel LOD representation for Ray tracing ● Efficient LOD error metric for primary and secondary rays ● Integrate ray and cache coherent techniques 12

  13. Performance of Ray Tracing with Different Model Complexity ● Measured with 2GB main memory Render time Memory (log scale) thrashing! Working set 2GB size Model complexity (M tri) - log scale 13

  14. Performance of LOD-based Ray Tracing Achieved up to three order of magnitude speedup! ● Measured with 2GB main memory Render time (log scale) Working set size Model complexity (M tri) - log scale 14

  15. Real-time Captured Video – St. Matthew Model 512 by 512 and 2x2 super-sampling, 4 pixels of LOD error in image space 15

  16. Related Work ● Interactive ray tracing ● LOD and out-of-core techniques ● LOD-based ray tracing 16

  17. Interactive Ray Tracing ● Ray coherences ● [Heckbert and Hanrahan 84, Wald et al. 01, Reshetov et al. 05] ● Parallel computing ● [Parker et al. 99, DeMarle et al. 04, Dietrich et al. 05] ● Hardware acceleration ● [Purcell et al. 02, Schmittler et al. 04, Woop et al. 05] ● Large dataset ● [Pharr et al. 97, Wald et al. 04] 17

  18. LOD and Out-of-Core Techniques ● Widely researched ● LOD book [Luebke et al. 02] ● Out-core algorithm course [Chiang et al. 03] ● LOD algorithms combined with out-of-core techniques ● Points clouds [Rusinkiewicz and Levoy 00] ● Regular meshes [Hwa et al. 04, Losasso and Hoppe 04] ● General meshes [Lindstrom 03, Cignoni et al. 04, Yoon et al. 04, Gobbetti and Marton 05] Not clear whether LOD techniques for rasterization is applicable to ray tracing 18

  19. LOD-based Ray Tracing ● Ray differentials [Igehy 99] ● Subdivision meshes [Christensen et al. 03, Stoll et al. 06] ● Point clouds [Wand and Stra β er 03] Image plane Footprint size Viewpoint of ray Ray beam for one pixel 19

  20. ● R-LODs for ray tracing Outline ● Results 20

  21. ● R-LODs for ray tracing Outline ● Results 21

  22. R-LOD Representation ● Tightly integrated with kd-nodes ● A plane, material attributes, and surface deviation Rays kd-node Plane No intersection Normal Valid extent of the plane Intersection 22

  23. Properties of R-LODs ● Compact and efficient LOD representation ● Add only 4 bytes to (8 bytes) kd-node ● Drastic simplification ● Useful for performance improvement ● Error-controllable LOD rendering ● Error is measured in a screen-space in terms of pixels-of-error (PoE) ● Provides interactive rendering framework 23

  24. Two Main Design Criteria for LOD Metric ● Controllability of visual errors ● Efficiency ● Performed per ray (not per object) ● More than tens of million times evaluation 24

  25. Visual Artifacts ● Visibility difference Surface deviation ● Illumination difference Projected area Curvature ● Path difference for secondary rays difference View direction Original mesh Ray with original mesh Ray with LODs LODs Image plane 25

  26. R-LOD Error Metric ● Consider two factors ● Projected screen-space area of a kd-node ● Surface deviation 26

  27. Conservative Projection Method ● Measures the screen-space area affected by using an R-LOD ? C (B) d min > R LOD metric: Image plane d min R Viewpoint kd-node B { PoE error bound One ray beam 27

  28. R-LODs with Different PoE Values PoE: Original 1.85 5 10 (512x512, no anti-aliasing) 28

  29. LOD Metric for Secondary Rays ● Applicable to any linear transformation ● Shadow ● Planar reflection ● Not applicable to non-linear transformation ● Refraction ● Uses more general, but expensive ray differentials [Igehy 99] 29

  30. C 0 Discontinuity between R-LODs Ray ● Possible solutions ● Posing dependencies [Lindstrom 03, Hwa et al. 04, Yoon et al. 04, Cignoni et al. 05] ● Implicit surfaces [Wald and Seidel 05] 30

  31. Expansion of R-LODs Ray ● Expansion of the extent of the plane ● Inspired by hole-free point clouds rendering [Kalaiah and Varshney 03] ● A function of the surface deviation (20% of the surface deviation) 31

  32. Impact of Expansions of R-LODs Hole Before expansion After expansion PoE = 5 Original model at 512 by 512 32

  33. R-LOD Construction ● Principal component analysis (PCA) ● Compute the covariance matrix for the plane of R-LODs Normal (= Eigenvector) ● Hierarchical PCA computation ● Has linear time complexity ● Accesses the original data only one time with virtually no memory overhead 33

  34. Hierarchical PCA Computation with Linear Time Complexity n ∑ σ = − μ − μ ( x )( y ) , xy k x k x = k 1 x y where , are x, y coordinates of kth points k k n n n n n 2 2 ∑ ∑ ∑ ∑ ∑ σ = − + x y x y x y xy k k k k k k 2 n n = = = = = k 1 k 1 k 1 k 1 k 1 + 34

  35. Utilizing Coherence ● Ray coherence ● Using LOD improve the utilization of SIMD traversal/intersection ● Cache coherence ● Use cache-oblivious layouts of bounding volume hierarchies [Yoon and Manocha 06] ● 10% ~ 60% performance improvement 35

  36. ● R-LODs for ray tracing Outline ● Results 36

  37. Implementation ● Uses common optimized kd-tree construction methods ● Based on surface-area heuristic [MacDonald and Booth 90, Havran 00] ● Out-of-core computation ● Decompose an input model into a set of clusters [Yoon et al. 04] 37

  38. Impact of R-LODs 10X speedup # of intersected nodes per ray Render time Working set size PoE = 0 38 PoE = 2.5 (No LOD)

  39. Real-time Captured Video – St. Matthew Model 512 x 512, 2 x 2 anti-aliasing, PoE = 4 39

  40. Pros and Cons ● Limitations ● Does not handle advanced materials such as BRDF ● No guarantee there is no holes ● Advantages ● Simplicity ● Interactivity ● Efficiency 40

  41. Conclusion ● LOD-based ray tracing method ● R-LOD representation ● Efficient LOD error metric ● Hierarchical LOD construction method with a linear time complexity ● Reduce the working set size 41

  42. Ongoing and Future Work ● Investigate an efficient use of implicit surfaces ● Allow approximate visibility ● Extend to global illumination 42

  43. At the Next Class ● Will discuss cache-coherent layouts 43

Recommend


More recommend