Clipless Dual-Space Bounds for Faster Stochastic Rasterization
description
Transcript of Clipless Dual-Space Bounds for Faster Stochastic Rasterization
![Page 1: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/1.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/2.jpg)
![Page 3: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/3.jpg)
![Page 4: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/4.jpg)
![Page 5: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/5.jpg)
(x,y)
![Page 6: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/6.jpg)
(x,y,u,v,t)
![Page 7: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/7.jpg)
Motion Blur
![Page 8: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/8.jpg)
Motion Blur
t=0 t=1
![Page 9: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/9.jpg)
Motion Blur
![Page 10: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/10.jpg)
tAccumulation Buffer [Haeberli ‘90]
![Page 11: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/11.jpg)
tInterleaveUVT [Fatahalian ‘09]
![Page 12: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/12.jpg)
tInterleaveUVT [Fatahalian ‘09]
![Page 13: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/13.jpg)
tInterleaveUVT [Fatahalian ‘09]
![Page 14: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/14.jpg)
tInterleaveUVT [Fatahalian ‘09]
![Page 15: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/15.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/16.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/17.jpg)
5D Rasterization
t=0 t=1
t
![Page 18: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/18.jpg)
5D Rasterization
t=0 t=1
t
![Page 19: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/19.jpg)
5D Rasterization
t=0 t=1
t
![Page 20: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/20.jpg)
5D Rasterizationt
![Page 21: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/21.jpg)
5D Rasterization
t=0 t=1
t
?
![Page 22: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/22.jpg)
5D Rasterization
t=0 t=1
t
![Page 23: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/23.jpg)
5D Rasterization
t=0 t=1
t?
![Page 24: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/24.jpg)
5D Rasterization
t=0 t=1
t?
![Page 25: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/25.jpg)
Pixar Algorithm
t=0 t=1
t
t=.5
![Page 26: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/26.jpg)
Pixar Algorithm
t=0 t=1
t
t=.5
X X
![Page 27: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/27.jpg)
Pixar Algorithm
t=0 t=1
t
t=.5
X X
![Page 28: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/28.jpg)
Our Method
t=0 t=1
t
![Page 29: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/29.jpg)
Our Method
t=0 t=1
t
![Page 30: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/30.jpg)
Our Method
t=0 t=1
t X X Xt range computed for pixel
![Page 31: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/31.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/32.jpg)
Bound Computation Lens bounds computed in screen space
Time bounds computed in dual space
![Page 33: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/33.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/34.jpg)
Lens Bounds
x
y
u= –1 u= +1
screen-space x islinear with u
![Page 35: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/35.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/36.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/37.jpg)
Clip Space and Dual Space
x
wt=0 t=1
![Page 38: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/38.jpg)
Clip Space and Dual Space
x
w
γ
δγ= –1 γ= +1
![Page 39: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/39.jpg)
Clip Space and Dual Space
x
w
γ
δ
δ
{
γ= –0.5
![Page 40: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/40.jpg)
Clip Space and Dual Space
x
w
γ
δ
![Page 41: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/41.jpg)
Clip Space and Dual Space
x
w
γ
δ
![Page 42: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/42.jpg)
Clip Space and Dual Space
x
w
γ
δ
![Page 43: Clipless Dual-Space Bounds for Faster Stochastic Rasterization](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/43.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/44.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/45.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/46.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/47.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/48.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/49.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/50.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/51.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/52.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/53.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/54.jpg)
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](https://reader037.fdocuments.in/reader037/viewer/2022102714/56816570550346895dd8043c/html5/thumbnails/55.jpg)
Thank You