clipless dual-space bounds for faster stochastic rasterization

55
Clipless Dual-Space Bounds for Faster Stochastic Rasterization Samuli Laine Timo Aila Tero Karras Jaakko Lehtinen NVIDIA Research

Upload: shanna

Post on 24-Feb-2016

72 views

Category:

Documents


4 download

DESCRIPTION

Clipless Dual-Space Bounds for Faster Stochastic Rasterization. Samuli Laine Timo Aila Tero Karras Jaakko Lehtinen NVIDIA Research. ( x,y ). ( x,y, u,v,t ). Motion Blur. Motion Blur. t= 0. t= 1. Motion Blur. Accumulation Buffer [Haeberli ‘90]. t. InterleaveUVT [Fatahalian ‘09]. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Samuli Laine Timo Aila Tero Karras Jaakko Lehtinen

NVIDIA Research

Page 2: Clipless Dual-Space Bounds for Faster Stochastic Rasterization
Page 3: Clipless Dual-Space Bounds for Faster Stochastic Rasterization
Page 4: Clipless Dual-Space Bounds for Faster Stochastic Rasterization
Page 5: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

(x,y)

Page 6: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

(x,y,u,v,t)

Page 7: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Motion Blur

Page 8: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Motion Blur

t=0 t=1

Page 9: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Motion Blur

Page 10: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

tAccumulation Buffer [Haeberli ‘90]

Page 11: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

tInterleaveUVT [Fatahalian ‘09]

Page 12: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

tInterleaveUVT [Fatahalian ‘09]

Page 13: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

tInterleaveUVT [Fatahalian ‘09]

Page 14: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

tInterleaveUVT [Fatahalian ‘09]

Page 15: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

4 samples/pixel (16 UVT triples) 16 samples/pixel (64 UVT triples)

Scene: Assassin’s Creed, courtesy of Ubisoft

InterleaveUVT [Fatahalian ‘09]

Page 16: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Unique UVTs

4 samples/pixel, unique UVTs 16 samples/pixel, unique UVTs

Scene: Assassin’s Creed, courtesy of Ubisoft

Page 17: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

5D Rasterization

t=0 t=1

t

Page 18: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

5D Rasterization

t=0 t=1

t

Page 19: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

5D Rasterization

t=0 t=1

t

Page 20: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

5D Rasterizationt

Page 21: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

5D Rasterization

t=0 t=1

t

?

Page 22: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

5D Rasterization

t=0 t=1

t

Page 23: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

5D Rasterization

t=0 t=1

t?

Page 24: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

5D Rasterization

t=0 t=1

t?

Page 25: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Pixar Algorithm

t=0 t=1

t

t=.5

Page 26: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Pixar Algorithm

t=0 t=1

t

t=.5

X X

Page 27: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Pixar Algorithm

t=0 t=1

t

t=.5

X X

Page 28: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Our Method

t=0 t=1

t

Page 29: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Our Method

t=0 t=1

t

Page 30: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Our Method

t=0 t=1

t X X Xt range computed for pixel

Page 31: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Our Method Determine pixels potentially covered by triangle For each pixel

Compute time bounds tmin ,tmax

Enumerate samples where tmin ≤ t ≤ tmax

For each such sample, perform 5D coverage test

Same for lens bounds umin ,umax and vmin ,vmax

Page 32: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Bound Computation Lens bounds computed in screen space

Time bounds computed in dual space

Page 33: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Lens Bounds

x

y

u=0u= –1 u= +1

film

lens

focal plane

u

screen-space x islinear with u

Page 34: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Lens Bounds

x

y

u= –1 u= +1

screen-space x islinear with u

Page 35: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Lens Bounds

x

y

u=a u=b

screen-space x islinear with u

ua b

Page 36: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Time Bounds World-space affine motion

Not affine in screen space, but affine in clip space Perspective causes singularities in screen space

Operate in dual space

Page 37: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Clip Space and Dual Space

x

wt=0 t=1

Page 38: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Clip Space and Dual Space

x

w

γ

δγ= –1 γ= +1

Page 39: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Clip Space and Dual Space

x

w

γ

δ

δ

{

γ= –0.5

Page 40: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Clip Space and Dual Space

x

w

γ

δ

Page 41: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Clip Space and Dual Space

x

w

γ

δ

Page 42: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Clip Space and Dual Space

x

w

γ

δ

Page 43: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Clip Space and Dual Space

x

w

γ

δ

δ is linear in x and wδ = x – wγ

x and w are linear in tδ is linear in t

t=0 t=1

t=0

t=1

Page 44: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Clip Space and Dual Space

x

w

γ

δt=0 t=1

t=0

t=1

Page 45: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Clip Space and Dual Space

x

w

γ

δt=0 t=1

t=0

t=1

Page 46: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Clip Space and Dual Space

x

w

γ

δt=0 t=1

t=0

t=1

t=a

t

Page 47: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Clip Space and Dual Space

x

w

γ

δt=0 t=1

t=0

t=1

t=a

ta

Page 48: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Time Bounds Compute separately for x and y

Intersect resulting spans If intersection is empty, skip pixel

Page 49: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Recap For each triangle

For each pixel Compute t, u, v bounds Cull samples outside bounds

Profit

Page 50: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Results Measure sample test efficiency (STE)

Compare against methods that allow arbitrary sampling patterns

# samples tested with full 5D test# samples hit

STE =

Page 51: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Results

Scene: Age of Conan PC MMO, courtesy of Funcom

Bboxscan

Pixar Ourmethod4 16 64

static 23.6 23.6 23.6 23.6 23.6

motion 2.7 9.5 17.7 21.9 23.7

motion x 2 1.3 6.0 14.6 20.9 24.0

defocus 1.7 4.4 8.8 13.9 23.1

defocus x 2 0.7 1.8 4.4 8.8 21.9

both 0.7 1.2 2.6 4.3 5.6

both x 2 0.4 0.6 1.1 2.0 2.9STE in %, scene Conan

Page 52: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Results

Scene: Assassin’s Creed, courtesy of Ubisoft

Bboxscan

Pixar Ourmethod4 16 64

static 23.2 23.2 23.2 23.2 23.2

motion 10.8 19.5 22.4 23.1 23.4

motion x 2 4.3 14.8 21.2 23.0 23.6

defocus 9.5 15.1 19.0 21.1 23.2

defocus x 2 4.3 9.5 15.1 19.0 23.0

both 4.5 6.8 7.2 10.1 14.1

both x 2 1.3 2.1 3.9 6.7 6.9STE in %, scene Assassin

Page 53: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

ResultsBboxscan

Pixar Ourmethod4 16 64

static 8.59 8.60 8.59 8.60 8.59

motion 0.50 2.97 6.43 8.02 8.63

motion x 2 0.14 1.27 4.70 7.40 8.69

defocus 0.19 0.59 1.53 3.13 8.57

defocus x 2 0.05 0.19 0.59 1.53 8.51

both 0.12 0.25 0.49 1.08 4.51

both x 2 0.03 0.07 0.16 0.39 2.42STE in %, scene Cars

Page 54: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Conclusions Each triangle processed once Arbitrary sampling patterns High STE

Future work Combined motion + defocus case

Page 55: Clipless Dual-Space Bounds for Faster Stochastic Rasterization

Thank You