hardware-assisted visibility sorting for tetrahedral volume rendering steven callahan milan ikits...
Post on 21-Dec-2015
219 views
TRANSCRIPT
![Page 1: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/1.jpg)
Hardware-Assisted Visibility Sortingfor Tetrahedral Volume Rendering
Hardware-Assisted Visibility Sortingfor Tetrahedral Volume Rendering
Steven Callahan Milan Ikits
João Comba Cláudio Silva
Steven Callahan Milan Ikits
João Comba Cláudio Silva
![Page 2: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/2.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Overview
• Introduction • Previous Work• Hardware-Assisted Visibility Sorting• Results• Future Work• Conclusion
![Page 3: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/3.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Research Goal
Real-time volume rendering• Scalable (machine performance)• Data of arbitrary size• Simple and robust implementations
![Page 4: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/4.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Volume Rendering
Regular Irregular
RR →3:f
![Page 5: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/5.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Why Irregular Grids ?
• Unstructured grids are the preferred data type in scientific computations
• Level-Of-Detail (LOD) techniques intrinsically need unstructured grids
El-Sana et al, Ben-GurionEl-Sana et al, Ben-Gurion
![Page 6: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/6.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Optical Models
Light
s s
Absorption plus emission
€
I(s+ Δs) = I(s) + g(s)Δs− I(s)Ω(s)Δs
I(s) = g(x)e− Ω(y )dy0x∫ dx0
s∫
![Page 7: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/7.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Compositing
Front-to-back
€
I01 =α 1I1 + (1−α 1)α 0I0α 01 =α 1 + (1−α 1)α 0
I0 I1 I2
0 1 2
I2
201
I01
![Page 8: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/8.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Volume Rendering: (Intersection) Sampling + Sorting
![Page 9: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/9.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Sampling: Triangle-Based Approach
Class 1 (+, +, +, -)
Class 2 (+, +, -, -)
Projected Tetrahedra [Shirley-Tuchman 1990]
![Page 10: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/10.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Sorting
Application
Rasterization
Display
Object-SpaceSorting
Image Space
i.e., let’s sort the geometry!
![Page 11: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/11.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Cell-Projection
12
43
6
7 5B
p
A
A < Bp
![Page 12: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/12.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Object-Space Sorting: Williams’ MPVO
Viewing direction
A
B
C
E
D
F
B < AA < C
B < E
C < E
C < D
E < F
D < F
Idea: Define ordering relationsby looking at shared faces.
![Page 13: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/13.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
MPVO Limitations
Missing relations!
![Page 14: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/14.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
XMPVO
Viewing direction
Idea: Using ray shooting queries to complement ordering relations.
A B
C
D
A < C
A < BB < D
![Page 15: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/15.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Sorting
Application
Rasterization
Display
Object Space
Image-SpaceSorting
i.e., let’s sort the pixels!
![Page 16: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/16.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Image-Space Sorting: A-Buffer
Idea: Keep a list of intersections for each pixel.
[Carpenter 1984]
![Page 17: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/17.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Cell-Projection With An A-Buffer
![Page 18: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/18.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Cell-Projection With An A-Buffer
![Page 19: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/19.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Cell-Projection With An A-Buffer
![Page 20: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/20.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Cell-Projection With An A-Buffer
![Page 21: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/21.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Cell-Projection With An A-Buffer
![Page 22: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/22.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Cell-Projection With An A-Buffer
![Page 23: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/23.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Cell-Projection With An A-Buffer
![Page 24: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/24.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Cell-Projection With An A-Buffer
![Page 25: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/25.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Cell-Projection With An A-Buffer
![Page 26: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/26.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Cell-Projection With An A-Buffer
![Page 27: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/27.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Cell-Projection With An A-Buffer
![Page 28: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/28.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Cell-Projection With An A-Buffer
![Page 29: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/29.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Cell-Projection With An A-Buffer
Not sorted!
![Page 30: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/30.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Cell-Projection With An A-Buffer
Sorted!
![Page 31: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/31.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
A-Buffer Limitations
c cells
n x n pixels
Number of Intersections: O(cn )2
Problems• Time: sorting takes too long• Memory: storage too high
![Page 32: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/32.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Sorting
Application
Rasterization
Display
Image-SpaceSorting
Object-SpaceSorting
![Page 33: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/33.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Approximate Object-Space Sorting
1
![Page 34: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/34.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Approximate Object-Space Sorting
1 2
![Page 35: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/35.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Approximate Object-Space Sorting
1 23
![Page 36: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/36.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Approximate Object-Space Sorting
1 23
45
![Page 37: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/37.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Approximate Object-Space Sorting
1 23
45 6 7
![Page 38: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/38.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Approximate Object-Space Sorting
1 23
45 7 6
A Solution: Use an insertion-sort A-buffer!A Solution: Use an insertion-sort A-buffer!
![Page 39: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/39.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Approximate Object-Space Sorting
1 23
45 7 6
Use a conservative bound on the intersections
What about the space problem?
![Page 40: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/40.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Hardware Assisted Visibility Sorting (HAVS)
Sort in image-space and object-space• Do an approximate object-space sorting of
the cells on the CPU (i.e. sort by face centroid)
• Complete the sort in image-space by using a fixed depth A-buffer (called a k-buffer) implemented on the GPU
• Can handle non-convex meshes, has a low memory overhead, and requires minimal pre-processing of data
![Page 41: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/41.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
HAVS Overview
![Page 42: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/42.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
k-buffer
• Fixed size A-buffer of depth k• Fragment stream sorter• Stores k entries for each pixel. Each entry
consists of the fragment’s scalar value and its distance to the viewpoint
• An incoming fragment replaces the entry that is closest to the eye (front-to-back compositing)
• Given a sequence of fragments such that each fragment is within k positions from its position is sorted order, it will output the fragments in sorted order
![Page 43: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/43.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
k-buffer: Hardware Implementation
• Use multiple render target capability of ATI graphics cards (ATI_draw_buffers in OpenGL)
• Use P-buffer to accumulate color and opacity and three Aux buffers for the k-buffer entries
P-buffer
Aux 0
Aux 1
Aux 2
r g b a
r comp g comp b comp a comp
v1 v2d1 d2
v4v3 d4d3
v5 v6d5 d6
![Page 44: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/44.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Fragment Shader Overview
![Page 45: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/45.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Details
• Fix incorrect screen-space texture coordinates caused by perspective-correct interpolation
Perspective interpolation
Projecting vertices to find tex coords
Projecting tex coords in shader
![Page 46: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/46.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Details
• Simultaneously reading and writing to a buffer is undefined when fragments are rasterized in parallel
![Page 47: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/47.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Details
• The buffers are initialized and flushed using k screen-aligned rectangles with negative scalar values
• Handling non-convex objects requires the exterior faces to be tagged with a negative distance d and keeping track of when we are inside or outside of the mesh with the sign of the scalar value v
![Page 48: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/48.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Details
• Early ray termination reads accumulated opacity and kills fragment if it is over a given threshold. Early z-test is currently not available on ATI 9800 when using multiple rendering targets
![Page 49: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/49.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Pre-Integrated Transfer Function
Previous Work• Volume density optical model
Williams and Max 1992• Pre-integration on GPU
Roettger et al. 2000 5 s to update a 128x128x128 table
• Incremental pre-integration on CPU Wieler et al. 2003 1.5 s to update a 128x128x128 table
![Page 50: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/50.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Pre-Integrated Transfer Function
Williams and Max
l
Sf Sb
![Page 51: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/51.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Pre-Integrated Transfer Function
Roettger et al.
S
S
b
f
n = 0…lmax
1 ,
)0,0,0( ),(
1,,0 ),(1
1 and ),(),,(
01
01
3
)(
33
3
)(
33
13133
==
=+=
−=−−
+=
−==
−
−
−−
+
+
D
wnl
DD
D
wnl
DD
bfb
nDnDbfD
e
Cwnl
eCC
niSSni
Sw
ClSST
ii
ii
θθθ
κ
θ
ρ
ρ
L
T3D
![Page 52: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/52.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Pre-Integrated Transfer Function
)',,()),,(1(),,()',,(
)',,()),,(1(),,()',,(
)'(
)'(
bygiven is 'length next for the entries the,' toequal
or less lengths with entries allfor calculatedbeen has table3D theIf
333
333
lSSlSSlSSllSS
lSSClSSlSSCllSSC
ll
lSSlS
llll
bpDpfpfDbfD
bpDpfpfDbfD
bfp
−+=+
−+=+++
=
+=
Weiler et al.
l
Sf SbSp
l’
l
![Page 53: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/53.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Pre-Integrated Transfer Function
Our Approach• Incremental pre-integration of the 3D
transfer function completely on the GPU Compute base slice using [Roettger et
al.] Compute the other slices using the base
slice and the previously computed slice [Weiler et al.]
• 0.067 s to update a 128x128x128 table• This allows interactive updates to the
colormap and transfer function opacity
![Page 54: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/54.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Experiments
Environment• 3.0 GHz Pentium 4 • 1024 MB RAM• Windows XP• ATI Radeon 9800 Pro
Results• k-buffer analysis• Performance results
![Page 55: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/55.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
K-buffer Analysis
Dataset Max A Max k k > 2 k > 6
Spx2 476 22 10,262 512
Torso 649 15 43,317 1,683
Fighter 904 3 1 0
Accuracy analysis• Analysis of k depth required to correctly
render datasets• Max values from 14 fixed viewpoints
![Page 56: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/56.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
k-buffer Analysis
Distribution analysis• Shows actual pixels that require large k
depths to render correctly for each viewpoint
k <= 2 (green) 2 < k <= 6 (yellow) k > 6 (red)
![Page 57: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/57.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Results
Dataset Cells K = 2
Fps
K = 2
Tets/s
K = 6
Fps
K = 6
Tets/sSpx2 0.8 M 2.07 1712 K 1.7 1407 K
Torso 1.1 M 3.13 3390 K 1.86 1977 K
Fighter 1.4 M 2.41 3387 K 1.56 2190 K
Performance• Average values from 14 fixed viewpoints• Does not include partial sort on CPU• 512 x 512 viewport with a 128 x 128 x 128
pre-integrated transfer function
![Page 58: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/58.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Image – Blunt Fin
![Page 59: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/59.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Image - Spx
![Page 60: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/60.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Image – Torso
![Page 61: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/61.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Image - Fighter
![Page 62: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/62.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Future Work
• Optimize partial sort on CPU• Develop techniques to refine datasets to
respect a given k (subdivide degenerate tets)
• Incorporate isosurface rendering• Parallel techniques• Proper hole handling• Dynamic data• Use early z-test
![Page 63: Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits](https://reader030.vdocuments.site/reader030/viewer/2022032704/56649d635503460f94a45ffc/html5/thumbnails/63.jpg)
Scientific Computing and Imaging Institute, University of UtahScientific Computing and Imaging Institute, University of Utah
Conclusion
• Renders up to 6 million Tets/sec when using a linear transfer function
• Handles arbitrary non-convex meshes• Requires minimal pre-processing of data• Maximum data size is bounded by main
memory• Uses simple vertex and fragment shaders