1 / 30

Ray Casting of Multiple Volumetric Datasets with Polyhedral Boundaries on Manycore GPUs

Explore ray casting techniques for rendering translucent and polyhedral objects on manycore GPUs, with a focus on performance optimization and memory management.

haydeej
Download Presentation

Ray Casting of Multiple Volumetric Datasets with Polyhedral Boundaries on Manycore GPUs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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 • Triangle Rasterization • Depth Sorting • Ray casting of homogeneous segments • 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 fasterthan straightforward per-pixel computation

  19. 2. Depth Sorting

  20. 2. Depth Sorting • For integrate with Ray casting method Array Triangle id 16bits Z-value 16bits

  21. 3. Ray casting of Homogeneous Segments &4. Empty Space Skipping

  22. 3. Ray casting of Homogeneous Segments • 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

  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

  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

More Related