Paper Presentation Micropolygon Ray Tracing With Defocus and

  • Slides: 31
Download presentation
Paper Presentation - Micropolygon Ray Tracing With Defocus and Motion Blur - Qiming Hou,

Paper Presentation - Micropolygon Ray Tracing With Defocus and Motion Blur - Qiming Hou, Hao Qin, Wenyao Li, Baining Guo, Kun Zhou Presenter : Jong Hyeob Lee 2010. 28

Micropolygon ● What is a micropolygon? Polygon 2 Micropolygon

Micropolygon ● What is a micropolygon? Polygon 2 Micropolygon

Defocus and Motion Blur 3

Defocus and Motion Blur 3

Rasterization vs Ray Tracing ● Tracing a ray is slower than rasterizing a pixel.

Rasterization vs Ray Tracing ● Tracing a ray is slower than rasterizing a pixel. ● Every ray returns something useful. Rasterization waste time on not-covered or occluded pixels. ● Tradeoff between per-operation cost and useful operation percentage. ● Stochastic sampling favors ray tracing. 4

Goal ● A 4 D micropolygon ray tracing ● Performs up to an order

Goal ● A 4 D micropolygon ray tracing ● Performs up to an order of magnitude faster than rasterization. ● Eliminates the quality-performance tradeoff in defocus and motion blur rendering. 5

Related Works ● Micropolygon ● Reyes [Cook et al. 1987] ● Render. Ants [Zhou

Related Works ● Micropolygon ● Reyes [Cook et al. 1987] ● Render. Ants [Zhou et al. 2009] ● Defocus and Motion Blur ● Adaptive sampling [Hachisuka et al. 2008] ● Hyper-trapezoids ● Collision detection [Hubbard 1995] 6

Overview ● Hyper-trapezoid ● BVH Construction ● Ray Generation ● BVH Traversal 7

Overview ● Hyper-trapezoid ● BVH Construction ● Ray Generation ● BVH Traversal 7

Overview ● Hyper-trapezoid ● BVH Construction ● Ray Generation ● BVH Traversal 8

Overview ● Hyper-trapezoid ● BVH Construction ● Ray Generation ● BVH Traversal 8

Hyper-trapezoid ● A hyper-trapezoid is… ● Two faces at T=0, T=1 interpolated linearly across

Hyper-trapezoid ● A hyper-trapezoid is… ● Two faces at T=0, T=1 interpolated linearly across T 9

Hyper-trapezoid ● Axis-aligned bound box & Bounding box based hyper-trapezoid 10

Hyper-trapezoid ● Axis-aligned bound box & Bounding box based hyper-trapezoid 10

Hyper-trapezoid ● 4 D OBB hyper-trapezoids ● The T=0 and T=1 faces are 3

Hyper-trapezoid ● 4 D OBB hyper-trapezoids ● The T=0 and T=1 faces are 3 D OBB, analogous to 3 D Hyper-trapezoids with 2 D Bouding Box faces. T=0 11 T=1

Comparisons with AABB ● Test scenes (Furball, Ladybug, Fairy, Car) 12

Comparisons with AABB ● Test scenes (Furball, Ladybug, Fairy, Car) 12

Comparisons with AABB 13

Comparisons with AABB 13

Overview ● Hyper-trapezoid ● BVH Construction ● Ray Generation ● BVH Traversal 14

Overview ● Hyper-trapezoid ● BVH Construction ● Ray Generation ● BVH Traversal 14

BVH Construction ● Basic topology is the same as general BVH. 15

BVH Construction ● Basic topology is the same as general BVH. 15

BVH Construction ● Build process ● Top level BVH ● In-grid level BVH ●

BVH Construction ● Build process ● Top level BVH ● In-grid level BVH ● Compute bounding volume 16

BVH Construction ● Top level BVH ● Unit : Micropolygon grid ● Split strategy

BVH Construction ● Top level BVH ● Unit : Micropolygon grid ● Split strategy : Surface Area Heuristic ● Termination criterion : One gird in every node 17

BVH Construction ● In-grid level BVH ● Unit : Micropolygons ● Split strategy :

BVH Construction ● In-grid level BVH ● Unit : Micropolygons ● Split strategy : Parametric space mid-split ● Termination criterion : Less than 8 micropolygons in a node 18

BVH Construction ● Compute bounding volume ● Compute grid-level orientation ● Bottom-up merge :

BVH Construction ● Compute bounding volume ● Compute grid-level orientation ● Bottom-up merge : use the orientation that results in smaller surface area. ● Top-down simplify : use parent node’s orientation if surface area isn’t increased too much. 19

Overview ● Hyper-trapezoid ● BVH Construction ● Ray Generation ● BVH Traversal 20

Overview ● Hyper-trapezoid ● BVH Construction ● Ray Generation ● BVH Traversal 20

Ray Generation ● Reducing the alias ● Lens permutation : magic square ● Time

Ray Generation ● Reducing the alias ● Lens permutation : magic square ● Time permutation : magic square shuffled and shifted per-pixel 21

Overview ● Hyper-trapezoid ● BVH Construction ● Ray Generation ● BVH Traversal 22

Overview ● Hyper-trapezoid ● BVH Construction ● Ray Generation ● BVH Traversal 22

BVH Traversal – Ray and OBB ● Transforming rays into per-box local frame. 23

BVH Traversal – Ray and OBB ● Transforming rays into per-box local frame. 23

BVH Traversal – Ray and OBB ● Transforming rays into per-box local frame. 24

BVH Traversal – Ray and OBB ● Transforming rays into per-box local frame. 24

BVH Traversal - Micropolygon ● Use a rasterization-like method to compute pseudo-intersections for micropolygons.

BVH Traversal - Micropolygon ● Use a rasterization-like method to compute pseudo-intersections for micropolygons. ● Project micropolygon to view plane. ● Use even-odd rule to test it. 25

Comparison with Rasterization ● Better quality 26

Comparison with Rasterization ● Better quality 26

Comparisons with AABB ● Test scenes (Furball, Ladybug, Fairy, Car) 27

Comparisons with AABB ● Test scenes (Furball, Ladybug, Fairy, Car) 27

Comparison with Rasterization ● Faster sampling time 28

Comparison with Rasterization ● Faster sampling time 28

Result – Total rendering time 29

Result – Total rendering time 29

Conclusion ● The first time ray tracing is faster than rasterizaion. ● A novel

Conclusion ● The first time ray tracing is faster than rasterizaion. ● A novel acceleration structure based on oriented hypertrapezoid. ● Limitation : ● Inefficiency of transparency handling ● The BVH is not effective when tracing rays inside objects over rasterization methods. 30

Q&A ● Thank you. 31

Q&A ● Thank you. 31