136
RT08, August ‘08 Large Ray Packets for Real- time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R. Mark University of Texas at Austin Intel Corporation

RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

  • View
    215

  • Download
    2

Embed Size (px)

Citation preview

Page 1: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Large Ray Packets for Real-time Whitted Ray Tracing

Ryan Overbeck Columbia University

Ravi Ramamoorthi Columbia University

William R. MarkUniversity of Texas at Austin

Intel Corporation

Page 2: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Current Real-time Ray Tracing

Use large ray packets (16-256 rays)

Focused on primary visibility and point-light shadows

Images somewhat dull

Easily generated using rasterization algorithms

Page 3: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

This Work: Whitted Ray Tracing

Whitted Ray tracing: Primary Visibility Point-light Shadows Reflections Refractions

Page 4: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Mission

Study large ray packets for Whitted ray tracing Scene traversal (BVH)

Partition Traversal: New!

Frustum Culling General secondary ray packets: New!

Page 5: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Mission

Evaluation of old and new algorithms Ray packet size Scene complexity Ray Recursion Complexity

Page 6: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Result: Real-time Whitted RT

Page 7: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Outline

Motivation

Frustum Culling for Secondary Rays

Scene Traversal with Large Ray Packets

Results

Page 8: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Frustum Culling

Primary Rays Reshetov et al. 2005

Point-Light Shadow Rays Boulos et al. 2006 , Wald et al. 2007

Reflection + Refraction Rays New!

Page 9: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Frustum Culling: Point Light

1. Choose dominant axis:

2. Find intersection points at .

3. Get min/max coords.

1

Page 10: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

1. Choose dominant axis:

2. Find intersection points at .

3. Get min/max coords.

4. Create 4 corner rays.

5. Compute plane normals.

Frustum Culling: Point Light

1

Page 11: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Frustum Culling: Reflection

Page 12: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Frustum Culling: Reflection

Samples’ Bounding Box

Scene Bounding Box

Page 13: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Frustum Culling: Reflection

1. Choose dominant axis:

2. Find intersections with 2 planes:1. from scene AABB.2. from samples’ AABB.

3. Get min/max coords.

4. Create 4 corner rays.

5. Compute plane normals.

Page 14: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Outline

Motivation

Frustum Culling for Secondary Rays

Scene Traversal with Large Ray Packets

Results

Page 15: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

3 Algorithms for Scene Traversal

Masked Traversal – Control Method Based on Wald 2001, Reshetov 2005 (MLRT) Only good for small packets

Ranged Traversal – State-of-the-art Wald et al. 2007 Degrades performance for incoherent rays!

Partition Traversal: New! Robust to incoherent rays and large packets

Page 16: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Page 17: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

BVH Inner Cell

Page 18: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Near BVH Leaf Cell

Page 19: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Far BVH Leaf Cell

Page 20: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Alive

Alive

Alive

Alive

Alive0

1

2

3

4

Page 21: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Alive

Alive

Alive

Alive

Alive0

1

2

3

4

Page 22: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Alive

Alive

Alive

Alive

Alive0

1

2

3

4

Page 23: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Alive

Alive

Alive

Alive

Alive0

1

2

3

4

Page 24: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Alive

Alive

Alive

Alive

Alive0

1

2

3

4

Page 25: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Alive

Alive

Alive

Alive

Dead0

1

2

3

4

Page 26: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Alive

Alive

Alive

Dead

Dead0

1

2

3

4

Page 27: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Alive

Alive

Alive

Dead

Dead0

1

2

3

4

Page 28: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Alive

Alive

Alive

Dead

Dead0

1

2

3

4

Page 29: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Dead

Alive

Alive

Dead

Dead0

1

2

3

4

Page 30: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Dead

Alive

Alive

Dead

Dead0

1

2

3

4

Page 31: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Dead

Alive

Alive

Dead

Dead0

1

2

3

4

Page 32: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Dead

Alive

Alive

Dead

Dead0

1

2

3

4

Page 33: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Dead

Alive

Alive

Dead

Dead0

1

2

3

4

Page 34: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Dead

Alive

Alive

Dead

Dead0

1

2

3

4

Page 35: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Dead

Alive

Alive

Dead

Dead0

1

2

3

4

Page 36: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Dead

Alive

Alive

Dead

Dead0

1

2

3

4

Page 37: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Dead

Alive

Alive

Dead

Dead0

1

2

3

4

Page 38: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Dead

Alive

Alive

Dead

Dead0

1

2

3

4

Page 39: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Dead

Alive

Alive

Dead

Dead0

1

2

3

4

Page 40: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Alive

Alive

Alive

Alive

Alive0

1

2

3

4

Page 41: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Alive

Alive

Alive

Alive

Alive0

1

2

3

4

Page 42: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Alive

Alive

Alive

Alive

Dead0

1

2

3

4

Page 43: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Alive

Alive

Alive

Dead

Dead0

1

2

3

4

Page 44: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Alive

Alive

Alive

Dead

Dead0

1

2

3

4

Page 45: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Alive

Dead

Alive

Dead

Dead0

1

2

3

4

Page 46: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked Traversal

012

3

4

Dead

Dead

Alive

Dead

Dead0

1

2

3

4

Causes extra ray—cell tests

Page 47: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 48: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 49: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 50: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 51: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 52: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 53: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 54: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 55: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 56: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 57: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 58: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 59: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 60: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 61: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 62: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 63: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 64: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 65: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 66: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

3

4

Page 67: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

012

4

3

Page 68: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 69: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 70: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 71: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 72: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 73: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 74: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 75: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 76: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 77: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 78: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 79: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 80: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 81: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 82: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 83: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 84: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Page 85: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged Traversal

210

4

3

Reduces ray—cell tests

Increases ray—triangle tests

Page 86: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 2 3 4

2

1

0

4

3

Page 87: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 2 3 4

2

1

0

4

3

A

Page 88: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 2 3 4

2

1

0

4

3

ABE

Page 89: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 2 3 4

2

1

0

4

3

AB E

Page 90: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 2 3 4

2

1

0

4

3

ABE

Page 91: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 2 3 4

2

1

0

4

3

AB E

Page 92: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 2 3 4

2

1

0

4

3

ABE

Page 93: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 2 3 4

2

1

0

4

3

ABE

Page 94: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 4 3 2

2

1

0

4

3

ABE

Page 95: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 4 3 2

2

1

0

4

3

ABE

Page 96: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 4 3 2

2

1

0

4

3

A

Page 97: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 4 3 2

2

1

0

4

3

A

Page 98: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 4 3 2

2

1

0

4

3

ABE

Page 99: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 4 3 2

2

1

0

4

3

AB E

Page 100: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 4 3 2

2

1

0

4

3

ABE

Page 101: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 1 4 3 2

2

1

0

4

3

ABE

Page 102: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

ABE

Page 103: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

ABE

Page 104: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

A

Page 105: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

A

Page 106: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

A

Page 107: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

A

Page 108: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

A

Page 109: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

A

Page 110: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

A

Page 111: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

ABE

Page 112: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

AB E

Page 113: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

ABE

Page 114: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

ABE

Page 115: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

A

Page 116: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

A

Page 117: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Partition Traversal (New)

0 4 1 3 2

2

1

0

4

3

A

More ray—cell intersection tests

No unnecessary ray—triangle intersection tests

Robust to incoherent rays

Page 118: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Outline

Motivation

Frustum Culling for Secondary Rays

Scene Traversal with Large Ray Packets

Results

Page 119: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

3 Performance Variables

Ray Packet Size

Scene Complexity

Ray Recursion Complexity

Page 120: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

3 Performance Variables

Ray Packet Size

Scene Complexity

Ray Recursion Complexity

4x4 8x8 32x3216x16

Page 121: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

3 Performance Variables

Ray Packet Size

Scene Complexity

Ray Recursion Complexity

ERW6(804 Triangles)

Toasters(11,141 Triangles)

Fairy(172,669 Triangles)

Rings(217,812 Triangles)

Page 122: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

3 Performance Variables

Ray Packet Size

Scene Complexity

Ray Recursion Complexity

Primary Visibility

Primary Visibility

+Point-light Shadows

Primary Visibility

+2-Bounce

Reflections

Primary Visibility

+2-Deep

Refractions

Page 123: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked

RangedPartition

0

500

1000

1500

Tim

e(M

illio

n C

PU

Cyc

les)

4x4 8x8 16x16 32x32Ray Packet Size

Traversal vs. Ray Packet Size

Masked Traversal: performance degrades for > 4x4 packets

Ranged Traversal: performance degrades for > 8x8 packets

Paritition Traversal: performance increases with packet size

Fairy Scene2-Bounce Reflections

Page 124: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

MaskedPartitionRanged

0

400

800

1200

Tim

e(M

illio

n C

PU

Cyc

les)

Traversal vs. Recursion Complexity

Masked Traversal: Degrades with recursion complexity

Ranged Traversal: Degrades with recursion complexity

Partition Traversal: More robust to increasing recursion complexity

Fairy Scene16x16 Packets

PrimaryShadowsPrimary

+ 2-Deep Refractions

Primary+

2-Bounce Reflections

Primary+Recursion

Complexity

Page 125: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked

RangedPartition

0

1000

2000

3000

Tim

e(M

illio

n C

PU

Cyc

les)

Traversal vs. Recursion Complexity

Difference between Partition and Ranged more pronounced on more complex scenes

Rings Scene16x16 Packets

PrimaryShadowsPrimary

+ 2-Deep Refractions

Primary+

2-Bounce Reflections

Primary+Recursion

Complexity

4000

2x

Page 126: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Masked

RangedPartition

0

1000

2000

3000

Tim

e(M

illio

n C

PU

Cyc

les)

Traversal vs. Scene Complexity

Ranged Traversal: Degrades with scene complexity

Partition Traversal: More robust to increasing scene complexity

4000

2-Bounce Reflections

16x16 Packets

Scene Complexity

ERW6 Toasters Fairy Rings

Page 127: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Ranged vs. Partition Traversal

Ranged Traversal Most ray—cell tests deep in BVH More extra ray—triangle tests for incoherent rays

Partition Traversal Most ray—cell tests high in BVH No extra ray—triangle tests

Page 128: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Traversal: Summary

Use Ranged Traversal Primary rays and coherent point-light shadow rays Small to medium packets: <= 8x8 rays

Use Partition Traversal Incoherent rays: deep reflections + refractions Large ray packets: > =16x16 rays

Page 129: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

With CullingNo Culling

0

100

200

300

Tim

e(M

illio

n C

PU

Cyc

les)

Frustum Culling vs. Recursion Complexity

Frustum culling provides modest benefits

Toasters Scene16x16 Packets

PrimaryShadowsPrimary

+ 2-Deep Refractions

Primary+

2-Bounce Reflections

Primary+Recursion

Complexity

400

Page 130: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Frustum Culling: Summary

Primary + Point-light Shadows Up to 2x performance benefit possible But more often ~1.5x or less

Reflections + Refractions Expect 1.2x – 1.3x performance benefit

Page 131: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Conclusion

Use ranged and partition traversal in correct situation

16x16 packets: 3x – 6x benefit over 2x2

Whitted Ray Tracing is now interactive to real-time

11.8 FPS 6.7 FPS 8.5 FPS 4 FPS

Page 132: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Real-Time Whitted Ray Tracing

Primary Visibility

Ranged Traversal

Point-Light

Ranged Traversal

1-Bounce Reflections

Ranged Traversal

Page 133: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Conclusion

Primary Visibility

Ranged Traversal

3-Bounce Reflections

Partition Traversal

Page 134: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Conclusion

Primary Visibility

Ranged Traversal

Point-Light Shadows

Partition Traversal

3-Deep Refractions

Partition Traversal

1-Bounce Reflections

Partition Traversal

Page 135: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Acknowledgements

Thanks to: Lab mates at Columbia University.

Paid for by: NSF (grants CCF 03-05322, CCF 04-46916, CCF 07-

01775), a Sloan Research Fellowship, and an ONR Young Investigator Award N00014-17-1-0900.

Intel fellowship to Ryan Overbeck and related equipment donations from Intel and NVIDIA.

Page 136: RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R

RT08, August ‘08

Questions?