Top Banner
Ray Casting of Multiple Volumetric Datasets with Polyhedral Boundaries on Manycore GPUs SIGGRAPH ASIA 2009 2010/03/31 ked
28

Multiple volumetric datasets

Dec 14, 2014

Download

Technology

ked19

A summary of the Siggraph Asia paper, "Ray Casting of Multiple Volumetric Datasets with Polyhedral Boundaries on Manycore GPUs."
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Multiple volumetric datasets

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

SIGGRAPH ASIA 2009

2010/03/31

ked

Page 2: Multiple volumetric datasets

Authors

Bernhard KainzPhD student

Markus GrabnerAssistant professor

Alexander BornikSenior researcher

Stefan HauswiesnerResearch assistant

Judith MuehlSenior researcher

Dieter SchmalstiegFull professor

Page 3: Multiple volumetric datasets

Demo

Page 4: Multiple volumetric datasets

Properties

Real-time frame-rates Many volumes Arbitrary polyhedral geometry CUDA implementation

A 20k polygons dragon with a 2563 brain volume

and nine 643 smoke clouds

Page 5: Multiple volumetric datasets

Outline

Volume rendering with ray casting Depth sorting for polyhedral datasets Results

Page 6: Multiple volumetric datasets

Outline

Volume rendering with ray casting Depth sorting for polyhedral datasets Results

Page 7: Multiple volumetric datasets

Volume scattering

Multiple scattering

Page 8: Multiple volumetric datasets

Volume scattering

Multiple scattering

Page 9: Multiple volumetric datasets

Volume rendering integral

K(t): absorption coefficient

Page 10: Multiple volumetric datasets

Volume rendering integral

K(t): absorption coefficient

Page 11: Multiple volumetric datasets

Volume rendering integral

K(t): absorption coefficient

Page 12: Multiple volumetric datasets

Volume rendering integral

K(t): absorption coefficient

Page 13: Multiple volumetric datasets

Ray casting

Page 14: Multiple volumetric datasets

Ray casting + empty space skipping

Page 15: Multiple volumetric datasets

Ray casting + empty space skipping

Page 16: Multiple volumetric datasets

Outline

Volume rendering with ray casting Depth sorting for polyhedral datasets Results

Page 17: Multiple volumetric datasets

Flow-chart

Page 18: Multiple volumetric datasets

Flow-chart

Triangle rasterization

Depth sorting

Integration

Page 19: Multiple volumetric datasets

Triangle rasterizationFor a >=0 For a < 0

Page 20: Multiple volumetric datasets

Triangle rasterization

y=0, n1(y)=1y=1, n1(y)=1y=2, n1(y)=1y=3, n1(y)=2

Use r0y=0, r(y)=0x0001y=1, r(y)=0x0010y=2, r(y)=0x0100y=3, r(y)=0x3000

For a >=0 For a < 0

Page 21: Multiple volumetric datasets

Triangle rasterization

y=0, n1(y)=1y=1, n1(y)=1y=2, n1(y)=1y=3, n1(y)=2

Use r0y=0, r(y)=0x0001y=1, r(y)=0x0010y=2, r(y)=0x0100y=3, r(y)=0x3000

For a >=0 For a < 0

Page 22: Multiple volumetric datasets

Depth sorting

Use 63 entries to keep depth order A entry contains

Z-value Triangle ID

Page 23: Multiple volumetric datasets

Depth sorting + evaluation

Use 63 entries to keep depth order A entry contains

Z-value Triangle ID

81 depth data Their result Ground truth Errors > 5%

Page 24: Multiple volumetric datasets

Outline

Volume rendering with ray casting Depth sorting for polyhedral datasets Results

Page 25: Multiple volumetric datasets

Results

Roessler: shader code, C5 generates too large codeBrecheisen: can not handle >4 volumes

Page 26: Multiple volumetric datasets

Results

Page 27: Multiple volumetric datasets

Q&A

Page 28: Multiple volumetric datasets

Thx.