Visualization of Industrial Structures with Implicit GPU Primitives
Visualization of Industrial Structures with Implicit GPU Primitives. Rodrigo de Toledo Bruno Levy. Plan. Motivation Previous work Our contributions New GPU primitives Implicit information on GPU Study-cases Results Conclusions. 13 M triangles 200K implicit primitives + 1M triangles
Visualization of Industrial Structures with Implicit GPU Primitives
E N D
Presentation Transcript
Visualization of Industrial Structures with Implicit GPU Primitives Rodrigo de Toledo Bruno Levy
Plan • Motivation • Previous work • Our contributions • New GPU primitives • Implicit information on GPU • Study-cases • Results • Conclusions
13 M triangles 200K implicit primitives + 1M triangles (2x speed-up + quality) Reverse engineering Motivation • Problem statement: Interactive visualization of massive models is very difficult • Too much primitives (triangles) • Proposition: Whenever it is possible, use implicit GPU primitives rather than triangles • Example: power plant
Previous Work (1/3) • Extended GPU primitives: • 2004, “Extending the graphic pipeline with new GPU-accelerated primitives” • Quadrics:
GPU primitives • Ray cast • Z-buffer update • Freely combined with triangle meshes • Advantages: • Quality • Computations by pixel • Silhouette, phong etc… • Speed • Very simple fragment shaders • LOD behavior • Memory • Represented by few parameters
Previous Work (2/3) • ISVC 2007, “Iterative Methods for Visualization of Implicit Surfaces on GPU” • Cubics and Quartics • TORUS
Multiple Tori • GPU primitives are faster • 16000 tori • Newton at 50 fps • the others < 1fps GeForce 7900
Previous Work (3/3) TMCE 2008, “Reverse Engineering for Industrial-Environment CAD Models” • Industrial environments are mainly composed by tubular structures (90%) • Topological approach Quadrics Torus
Our contributions • New GPU primitives • Billboard cylinder • Truncated cone • Torus slice • Implicit information encoded on GPU memory • Floating-point texture • Two study-cases • Power-plant • Oil platform
Cylinders • Billboard • only 4 vertices • tight projection enclosing the cylinder perspective orthographic gl_RECT(-1,-1,1,1); or gl_RECT(-u,-v,u,v);
Cylinders • View-dependent coordinate system • Computing perspective
Cylinders • Including caps on cylinders in perspective
Cones • Truncated and complete cones
Torus slices • Adaptive polyhedra • Up to 180º • Very useful for CAD
Grouping primitive parameters • Floating-point texture (each texel 4 scalars) • Read by vertices • Double speed • Our biggest example only uses 10MB (340k primitives)
Study cases • Power plant • 13M triangles • Oil platform • 27M triangles
Reverse Engineering Results Memory reduction
Speed-up (1/3) • Test settings: • Without any culling • They would disturb our results • Surely, culling algorithms would increase all frame rates • We have compared GPU primitives against triangles • Triangles rendering: • Multiple VBO (Vertex Buffer Object) • GPU primitives in two situations: • Exclusively • Combined with unrecognized triangles • GeForce 7900
Silhouette Intersection Continuity Image Quality
Conclusion • Topological reverse engineering shows good efficiency • but it is restricted to CAD models (depends on regularity) • With GPU primitives rendering we combine more quality, more speed and less memory • Future work: new implicit GPU primitives for CAD models • GPU implementation + Rev. Eng. • Ex: half-sphere, half-ellipsoid, sheared cylinder
Thank you! For questions please email us: Gmail: rodrigodetoledo