Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo...

25
Interactive Visualization of Interactive Visualization of Exceptionally Complex Exceptionally Complex Industrial Industrial CAD Datasets CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland University http://graphics.cs.uni-sb.de

Transcript of Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo...

Page 1: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Interactive Visualization of Exceptionally Complex IndustrialExceptionally Complex Industrial

CAD DatasetsCAD Datasets

Andreas Dietrich Ingo Wald Philipp Slusallek

Computer Graphics Group

Saarland University

http://graphics.cs.uni-sb.de

Page 2: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 22

MotivationMotivationMotivationMotivation

• CG hardware performance has dramatically increased– Typically based on rasterization technology– Can render many million triangles / second

• Scene complexity rises even faster– Many CAD datasets too complex to be displayed interactively– Rasterization algorithms too limited

Real-Time Ray Tracing approachChallenge: Interactive visualization of a „Boeing 777“

Page 3: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 33

IntroductionIntroductionIntroductionIntroduction

• Virtual prototyping becoming increasingly important

• Collaborative engineering – CAD design of complete aircrafts, ships, buildings, etc.– Many independent teams design individual components– Millions of single parts modeled with full geometric detail

• Complete datasets become extremely large

• Goal: Direct interactive display of original CAD data

Page 4: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 44

The „Boeing 777“ ModelThe „Boeing 777“ ModelThe „Boeing 777“ ModelThe „Boeing 777“ Model

Page 5: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 55

The „Boeing 777“ ModelThe „Boeing 777“ ModelGeometric ComplexityGeometric ComplexityThe „Boeing 777“ ModelThe „Boeing 777“ ModelGeometric ComplexityGeometric Complexity

Page 6: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 66

The „Boeing 777“ ModelThe „Boeing 777“ ModelThe „Boeing 777“ ModelThe „Boeing 777“ Model

• More than 350 million individual triangles

• 12 GByte raw model data

• Complicated topological structure

• Low degree of occlusion

• „Soup“ of unconnected polygons

Page 7: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 77

Complex interwoven parts Self-intersecting polygons

The „Boeing 777“ ModelThe „Boeing 777“ ModelComplicated TopologyComplicated TopologyThe „Boeing 777“ ModelThe „Boeing 777“ ModelComplicated TopologyComplicated Topology

Page 8: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 88

The „Boeing 777“ ModelThe „Boeing 777“ ModelLow Degree of OcclusionLow Degree of OcclusionThe „Boeing 777“ ModelThe „Boeing 777“ ModelLow Degree of OcclusionLow Degree of Occlusion

Page 9: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 99

The „Boeing 777“ ModelThe „Boeing 777“ ModelThe „Boeing 777“ ModelThe „Boeing 777“ Model

• Same problem with most industrial CAD datasets

• Difficult for most large model rendering systemsDetailed discussion in [Wald et al., EGSR 2004]

Page 10: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 1010

The „Boeing 777“ ModelThe „Boeing 777“ ModelThe „Boeing 777“ ModelThe „Boeing 777“ Model

• Same problem with most industrial CAD datasets

• Difficult for most large model rendering systemsDetailed discussion in [Wald et al., EGSR 2004]

Real-Time Ray Tracing approach

Goal: Interactive visualization on a single PC

(Dual AMD Opteron 1.8 GHz, 6 GByte RAM)

Page 11: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 1111

Out-of-Core Ray TracingOut-of-Core Ray TracingOut-of-Core Ray TracingOut-of-Core Ray Tracing

• Ray tracing capable of handling massive models – Logarithmic in the number of triangles– Multi-level Kd-trees as hierarchical spatial index

• „Boeing 777“ model requires 30 – 40 GByte on disk

Out-of-core mechanism needed

• Build index structures offline on disk

• Map disk data into 64-bit address space (mmap())

Page 12: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 1212

Memory ManagementMemory ManagementOS Based Memory MappingOS Based Memory MappingMemory ManagementMemory ManagementOS Based Memory MappingOS Based Memory Mapping

• Advantages of OS based memory mapping– Automatic demand paging– Address translation and I/O handled by CPU and OS– Fine cache granularity (pagesize 4 KByte)

• Problems– Access to unavailable data causes page faults– Stalling of rendering process inhibits interactivity

Manually check data availabilityDetect and prevent page faults using tile table

Page 13: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 1313

Memory ManagementMemory ManagementTile TableTile TableMemory ManagementMemory ManagementTile TableTile Table

• Simple hash table to efficiently check tile availability

1 tile = 16 pages

Page 14: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 1414

Memory ManagementMemory ManagementTile HandlingTile HandlingMemory ManagementMemory ManagementTile HandlingTile Handling

• Tile descriptor– Bits 48 – 16 : Tile base address (detect hash collisions)– Bit 1 : Referenced bit– Bit 0 : Availability bit

• Tiles loaded by asynchronous fetcher thread– Cache miss: Add tile ID to request queue

• Asynchronous tile eviction– Free memory using „Second Chance“ algorithm (madvise())

Page 15: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 1515

Proxy ObjectsProxy ObjectsBridging Loading TimeBridging Loading TimeProxy ObjectsProxy ObjectsBridging Loading TimeBridging Loading Time

• Have to cancel ray traversal if data is not available

• Large memory working set even for a single frame– All required data cannot be loaded every frame– Try to display some meaningful approximation

Memory resident „Proxy“ objects

Replacement until exact data has been loaded

Page 16: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 1616

Proxy ObjectsProxy ObjectsStructureStructureProxy ObjectsProxy ObjectsStructureStructure

• Proxies precomputed prior to rendering– Build proxy for subtrees accessed when crossing tile borders– Sample subtree volume with rays– Store normals and materials for set of discretized ray directions

28 directions / voxel :Less than 350 MBytefor complete model

Page 17: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 1717

Proxy ObjectsProxy ObjectsStructureStructureProxy ObjectsProxy ObjectsStructureStructure

• When ray traversal has to be canceled– Interpolate shading information from closest ray directions

Page 18: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 1818

Proxy ObjectsProxy ObjectsResults Results Proxy ObjectsProxy ObjectsResults Results

• Immediately after system startup

Without proxies (red: canceled rays) With proxies

Page 19: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 1919

Proxy ObjectsProxy ObjectsResults Results Proxy ObjectsProxy ObjectsResults Results

• After ~30 seconds (more than 2 GByte loaded)

Without proxies (red: canceled rays) With proxies

Page 20: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 2020

High-Quality ShadingHigh-Quality ShadingShadowsShadowsHigh-Quality ShadingHigh-Quality ShadingShadowsShadows

• Without shadows and highlights

Page 21: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 2121

High-Quality ShadingHigh-Quality ShadingShadowsShadowsHigh-Quality ShadingHigh-Quality ShadingShadowsShadows

• Pixel-accurate shadows and highlights– Simple integration into a ray tracer– Significant improvement of depth perception

Page 22: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 2222

High-Quality ShadingHigh-Quality ShadingObserver Light SourceObserver Light SourceHigh-Quality ShadingHigh-Quality ShadingObserver Light SourceObserver Light Source

• Difficult to place light sources

• Attach directional light to observer

Page 23: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 2323

ResultsResultsVideo (640x480 pixels, up to 3 fps)Video (640x480 pixels, up to 3 fps)ResultsResultsVideo (640x480 pixels, up to 3 fps)Video (640x480 pixels, up to 3 fps)

Page 24: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Interactive Visualization of Complex CAD DatasetsInteractive Visualization of Complex CAD Datasets 2424

SummarySummarySummarySummary

• Out-of-core RT framework for complex models– Semi-manual OS based memory management system– Proxy objects as replacement for missing data– Full interactivity during progressive loading– Pixel-accurate shadows

• Future work– Improve proxy quality– Sophisticated lighting simulation

Page 25: Interactive Visualization of Exceptionally Complex Industrial CAD Datasets Andreas Dietrich Ingo Wald Philipp Slusallek Computer Graphics Group Saarland.

Questions ?Questions ?

For more information see

http://graphics.cs.uni-sb.dehttp://www.openrt.dehttp://www.intrace.com

Source 3D data provided by and used with permission of the Boeing Company