Date post: | 02-Jan-2016 |
Category: |
Documents |
Upload: | neil-weaver |
View: | 28 times |
Download: | 5 times |
Ray Casting of Multiple Volumetric Datasets with Polyhedral Boundaries
on Manycore GPUs
Park, Soonchan
KAIST (Korea Advanced Institute of Science and Technology)
2
Contents
● Translucent object rendering● In Volumetric data rendering● In Polyhedral object rendering
● Motivation & Goal of this paper● System Overview ( Pipeline )
● Triangle rasterization● Depth sorting● Ray casting of homogeneous segments● Empty space skipping
● Results● Performance● Workload distribution● Memory consumption
3
Contents● Translucent object rendering
● In Volumetric data rendering● In Polyhedral object rendering
● Motivation & Goal of this paper● System Overview ( Pipeline )
● Triangle rasterization● Depth sorting● Ray casting of homogeneous segments● Empty space skipping
● Results● Performance● Workload distribution● Memory consumption
4
How to Render Translucent Object
● Rendering is totally different between data type● Volumetric data ● Polyhedral object data
● Brief explanation will follow ● Volume Rendering● Polyhedral object Rendering
5
Volume Data Set Examples
6
Volume Rendering by Ray Casting Method
Accumulated color of blue voxels = Color of pixel on view plane
7
How to Render Translucency Object
● Opacity transfer function● Example of gray value
● Bone : over 1300● Brain : 550~850● Skin : 400~700
8
Geometry data case
● Back-to-Front order● Sort all geometry by z-value from camera● Render them from far to near
● Depth peeling
9
Depth Peeling
10
Contents
● Translucent object rendering● In Volumetric data rendering● In Polyhedral object rendering
● Motivation & Goal of this paper● System Overview ( Pipeline )
● Triangle rasterization● Depth sorting● Ray casting of homogeneous segments● Empty space skipping
● Results● Performance● Workload distribution● Memory consumption
11
Motivation of this paper
● It is needed● Multiple Volume Rendering● Rendering result of Volumetric data AND
Polyhedral objects together● CSG Operations● Real time solution
Customized Rendering Pipeline
12
Goals
● Implement Rendering method ● for
● Many volumes● Arbitrary polyhedral geometry● CSG operations(AND, OR, …) between them
● By CUDA● Implement Pipeline● Control Memory management● Fully parallelized
● In●Real-time
13
ISSUES
● How to Integrate two different method● How to Improve performance
● Parallelize computation ● Controlling Threads with scheduler (RR)● use GPU
● Other optimization method
14
Contents
● Translucent object rendering● In Volumetric data rendering● In Polyhedral object rendering
● Motivation & Goal of this paper● System Overview ( Pipeline )
● Triangle rasterization● Depth sorting● Ray casting of homogeneous segments● Empty space skipping
● Results● Performance● Workload distribution● Memory consumption
15
Pipeline
16
System Overview
1. Triangle Rasterization2. Depth Sorting3. Ray casting of homogeneous
segments4. Empty space skipping
17
1. Triangle Rasterization
18
1. Triangle Rasterization
● Parallel Computation● Rasterize triangle to screen
● Make coverage masks● 1 or 0 (bit expression)
● Each fragment unit(tile) hasinformation for triangles projected on them
● Consider line slope and expresseach row as bit shifting
Four Times faster than straightforward per-pixel computation
19
2. Depth Sorting
20
● For integrate with Ray casting method
2. Depth Sorting
16bits
16bits
Z-value
Triangle id
Array
21
3. Ray casting of Homogeneous Segments &4. Empty Space Skipping
22
● Pixel thread iterates through the sorted triangle array
● Homogeneous Segments● Interval between two consecutive entries● We know currently intersected scene
objects●CSG(boolean) operation can be applied
3. Ray casting of Homogeneous Segments
23
3. Ray casting of Homogeneous Segments
● Only polyhedral objects loop can be simplified● No need to process whole ray casting step
Performance improvements of up to 10%
24
4. Empty Space Skipping
● Processing rays in empty space is waste!
● Calculating bounding geometries● By using lower resolution mask volume
● Original Volume Uniform bricks ● Test underlying dataset voxel
Tight fitting bounding geometry improves frame rate by up to 15%
25
Contents● Translucent object rendering
● In Volumetric data rendering● In Polyhedral object rendering
● Motivation & Goal of this paper● System Overview ( Pipeline )
● Triangle rasterization● Depth sorting● Ray casting of homogeneous segments● Empty space skipping
● Results● Performance● Workload distribution● Memory consumption
26
Results
● Performance Comparison
27
Results
● Workload distribution
28
Results
Heavy GEOMETRY data load Heavy VOLUME data load
29
Memory Consumption
● Volume Texture ( 5283 )● About 562 MB of global memory
●Pre-computed gradient x4● Triangle Records
● About 6MB●Complex scene increase
30
Conclusion
● Good Performance● by recent improvements in multicore GPU● Customized Pipeline● Render in real-time
● Broad range of applications● Multiple volumes● Volume data + Geometry data● CSG operation