Professional Documents
Culture Documents
10 RoadToRealTimeOIT Salvi BPS2011
10 RoadToRealTimeOIT Salvi BPS2011
2/66
Talk Outline
Motivation Compositing Equation
Recursive Solvers Visibility Based Solvers
Why Compositing?
Reliance on a single program for rendering an entire scene is a poor strategy..
Separating the image into elements which can be independently rendered saves enormous time..
Motivation
Order-dependent transparency has always been a big limitation for content creators & developers
Restrictive art pipeline: no glass houses Even windows on cars & buildings can be painful Restrictive interaction between objects
Motivation
Alpha-Blending
6/66 Beyond Programmable Shading Course, ACM SIGGRAPH 2011
Motivation
Alpha-Blending
7/66
Order-Independent Transparency
Beyond Programmable Shading Course, ACM SIGGRAPH 2011
Motivation
8/66
Motivation
9/66
Motivation
10/66
Motivation
Alpha-Test
Order-Independent Transparency
Beyond Programmable Shading Course, ACM SIGGRAPH 2011
11/66
Motivation
Scene courtesy of Valve Corporation.
Alpha-Test
12/66
Order-Independent Transparency
Beyond Programmable Shading Course, ACM SIGGRAPH 2011
Compositing Equation
pixel color =
Transmittance
0
13/66
Compositing Equation
pixel color =
14/66
16/66
Recursive Solvers
Alpha Blending / Compositing Depth Peeling
A-buffer
Z algorithm
17/66
Alpha Compositing
18/66
Alpha Compositing
19/66
Alpha Compositing
20/66
Alpha Compositing
21/66
Alpha Compositing
22/66
Alpha Compositing
23/66
Depth Peeling
sorted order
24/66
A-buffer
25/66
A-buffer
26/66
A-buffer
27/66
A-buffer Limitations
Poor & unstable performance, tipically memory
bandwidth limited
28/66
The Z algorithm
Bounded A-buffer
Visibility Function
Models light absorption
Transmittance
30/66
Adaptive Transparency
31/66 Beyond Programmable Shading Course, ACM SIGGRAPH 2011
Occupancy Maps
d ln ( vis(zi )) dzi
Stochastic Transparency
Regular steps at irregular locations
ENDERTON, E., SINTORN, E., SHIRLEY, P., AND LUEBKE, D. 2010. Stochastic transparency
Adaptive Transparency
Derived from volumetric
shadow method
[Salvi et al. 2010]
Adaptive Transparency
0.7
37/66
Adaptive Transparency
0.7
38/66
Adaptive Transparency
0.7
39/66
Adaptive Transparency
0.7
40/66
Adaptive Transparency
0.7
41/66
Adaptive Transparency
0.7
42/66
Adaptive Transparency
0.7 1
43/66
0.7
Adaptive Transparency
0.7 1
44/66
0.7
Adaptive Transparency
0.7 1
45/66
0.7
Adaptive Transparency
0.7 1
46/66
0.7
Adaptive Transparency
0.7 1
47/66
0.7
Adaptive Transparency
Scene courtesy of Valve Corporation.
SMOKE scene 21 ms - 10.6 MFragment Max fragment per pixel: 312 30x faster than A-buffer 2.5x faster than Stoc. Transp.
HAIR scene 48 ms - 15.0 MFragment Max fragment per pixel: 663 40x faster than A-buffer 2x faster than Stoc. Transp. FOREST scene 8 ms - 6.0 MFragment Max fragment per pixel: 45 7x faster than A-buffer 2x faster than Stoc. Transp.
48/66
Adaptive Transparency
Whats Next?
AT & ST are good examples of new algorithms
close to ideal OIT method for real-time apps
ST main limitation is noise / lower quality per vis. rep. storage
Open Problems
Deferred shading and OIT methods
Many methods are trivial to extend to DSers.. ..but awfully inefficient..
Acknowledgements
Special thanks to Jefferson Montgomery and Aaron Lefohn
Craig Kolb, Matt Pharr, Charles Lingle and Elliot Garbus for supporting this
work.
Jason Mitchell and Wade Schinn at Valve Software for the assets from Leftfor-Dead-2
Q&A
Adaptive Transparency pre-print: http://intel.ly/at_hpg11
Backup
54/66
Bibliography
PORTER, T., AND DUFF, T. 1984. Compositing digital images. SIGGRAPH Comput. Graph. 18, 3, 253 259.
CARPENTER, L. 1984. The A -buffer, an antialiased hidden surface method. SIGGRAPH Comput. Graph. 18, 3, 103108.
SINTORN, E., AND ASSARSON, U. 2009. Hair self shadowing and transparency depth ordering using occupancy maps. In I3D 09: Proceedings of the 2009 Symposium on Interactive 3D Graphics and Games, 6774 PATNEY, A., TZENG, S., AND OWENS, J. D. 2010. Fragment parallel composite and filter. Computer Graphics Forum (Proceedings of EGSR 2010) 29, 4 (June), 12511258. YANG, J., HENSLEY, J., GRU 547 N, H., AND THIBIEROZ, N. 2010. Real-time concurrent linked list construction on the gpu. Computer Graphics Forum (Proceedings of EGSR 2010) 29, 4 (June), SALVI, M., VIDIMCE, K., LAURITZEN, A., AND LEFOHN, A. 2010. Adaptive volumetric shadow maps. Computer Graphics Forum (Proceedings of EGSR 2010) 29, 4 (June), 12891296.
Beyond Programmable Shading Course, ACM SIGGRAPH 2011
55/66
visibility function
200+ steps
Distance from viewer (depth)
56/66
visibility function
200+ steps
Distance from viewer (depth)
Transmitta nce
57/66
visibility function
200+ steps
Distance from viewer (depth)
Transmitta nce
32 steps
Distance from viewer (depth)
58/66
visibility function
200+ steps
Distance from viewer (depth)
Transmitta nce
32 steps
Distance from viewer (depth)
59/66
visibility function
200+ steps
Distance from viewer (depth)
Transmitta nce
32 steps
Distance from viewer (depth)
60/66
AT GPU Implementation
Store visibility in the frame buffer?
Data update cannot be mapped to DX11 blend modes
AT Proof-of-Concept Implementation
1) Render transparent fragments to per-pixel lists
Same as A-buffer implementation
Bandwidth Requirements
63/66
AT Future Work
Investigate bounded memory implementations
Per-pixel locks? New frame-buffer format?
65/66
F-Buffer