GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting...
Transcript of GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting...
GPU-based Raycasting of Volumetric Data
GPU-based Raycasting of Volumetric Data
University Of Memphis
June 30th, 2015
Dongliang Chu SIParCS-2015
Mentors: John Clyne,
Alan Norton
CISL/HSS/VAPOR
GPU-based Raycasting of Volumetric Data
Agenda
Raycasting
GPU-based Raycasting
Raycasting In Layered Data
Proposed Adaptive-Sampling Raycasting
Accomplishment
Conclusion
Future work
2
GPU-based Raycasting of Volumetric Data
Raycasting Raycasting in scientific visualization
3
Isosurface Extraction Direct Volume Rendering
Volumetric Data for Simulation of Turbulence
GPU-based Raycasting of Volumetric Data
Raycasting Algorithm animations
4
GPU-based Raycasting of Volumetric Data
GPU-based Raycasting
Rendering Pipeline on GPU
5
Geometry
Processing &
Rasterization
Fragment
Processing Vertex
Processing
Vertex
Data
Primitive
Data
Frame
Buffer
Vertex
Shader
Fragment
Shader
Raycasting
….
GPU-based Raycasting of Volumetric Data
Raycasting In Layered Grid and Data
Uniform Grid vs Layered Grid
6
(0,0) 0.2 0.4 0.6 0.8 1.0
0.2
0.4
0.6
0.8
1.0
(0,0) 0.2 0.4 0.8 1.0
0.1
0.4
0.5
0.9
1.0
0.6 X
Y
X
Y
0
20
80
100
20
0
0
20
80
100
20
0
De
nsity
Va
lue
De
nsity
Va
lue
, Layered Data
GPU-based Raycasting of Volumetric Data
Raycasting In Layered Grid and Data
Practical layered ocean data
7
(0,0) 0.2 0.4 0.8 1.0
-0.05
-0.1
-0.15
-0.7
0.6 X
Y
0
20
80
100
20
0
De
nsity
Va
lue
-0.2
GPU-based Raycasting of Volumetric Data
Raycasting In Layered Grid and Data
Real-life illustrating example
8
Isosurface of salinity from data generated by a regional ocean model
64 samples 1024 samples
GPU-based Raycasting of Volumetric Data
Proposed Adaptive-Sampling
Raycasting
Adaptive-Sampling
9
(0,0) 0.2 0.4 0.8 1.0
0.2
0.4
0.6
0.8
1.0
0.6 X
Y
0
20
80
100
20
0
Fie
ld V
alu
e
GPU-based Raycasting of Volumetric Data
Proposed Adaptive-Sampling
Raycasting
Algorithm brief description
1) Given the very first enter point corresponding to first cell
2) Calculate the corresponding exit point: calculating the ray’s
possible intersecting points with three hitting- possible
boundary planes, take the point closest to enter pointer as the
exit point, set next cell to which the hit boundary plane
belong, but not covered yet
3) turn the exit point into the enter point for next cell, goto step
2)
10
GPU-based Raycasting of Volumetric Data
Proposed Adaptive-Sampling
Raycasting Difficulties
No Debugger
No “printout” statement
Numeric calculation inaccuracy
11
GPU-based Raycasting of Volumetric Data
Proposed Adaptive-Sampling
Raycasting Solution
Use each pixel’s color channel to for status
checking
Countless loops of analysing, assumption, test,
proof/disproof
12
GPU-based Raycasting of Volumetric Data
Accomplishment
Test data
13
64^3 volumetric data with 5 non-zero valued layers, 4 condensed, the other apart
GPU-based Raycasting of Volumetric Data
Accomplishment
Running Result (1)
14
Proposed Algorithm Original Algorithm
GPU-based Raycasting of Volumetric Data
Accomplishment
Running Result (2)
15
Proposed Algorithm Original Algorithm
GPU-based Raycasting of Volumetric Data
Accomplishment
Running Result (3)
16
Proposed Algorithm Original Algorithm
GPU-based Raycasting of Volumetric Data
Conclusion
GPU Programming is big challenge
Implement a self-adaptive raycaster working
well with ocean and atmosphere data
17
GPU-based Raycasting of Volumetric Data
Future Work
Apply the proposed algorithm to curvilinear
data for isosurface extraction
Apply the proposed algorithm for direct
volume rendering
18
GPU-based Raycasting of Volumetric Data
19