Hardware-Assisted CSG Rendering - PowerPoint PPT Presentation

About This Presentation
Title:

Hardware-Assisted CSG Rendering

Description:

HardwareAssisted CSG Rendering – PowerPoint PPT presentation

Number of Views:46
Avg rating:3.0/5.0
Slides: 18
Provided by: fabi73
Category:

less

Transcript and Presenter's Notes

Title: Hardware-Assisted CSG Rendering


1
Hardware-Assisted CSG Rendering
  • Fabiano Romeiro, Luiz Velho, Luiz
    Henrique de Figueiredo

Harvard University
IMPA
IMPA
2
Theme
  • CSG (Constructive Solid Geometry)
  • Hierarchical modeling of complex objects
  • gt Generated by combinations of simple primitives

3
Motivation
  • Interactivity is important
  • Makes design easier
  • Handle complex objects
  • However, it is difficult
  • Scalability

4
Previous Work
  • Initial Approaches (CPU)
  • Boundary representations
  • Depth-layering
  • Goldfeather et al.
  • Recent Approaches (GPU)
  • Stencil Buffer
  • Wiegand, Rappoport, Stewart
  • Depth-peeling
  • Blister, Hable and Rossignac

5
Our Approach
  • Current Algorithms are bandwidth limited (i.e.,
    depth layering, depth peeling, etc)
  • GOAL
  • Make better use of GPU processing power
  • Shift bottleneck
  • Bandwidth GPU Instruction throughput

6
Overview
  • Perform spatial subdivision on the CPU until CSG
    expression is locally simple enough to render on
    the GPU.
  • Locally Simple
  • Surface within a cell is
  • Single primitive
  • Boolean operation of two primitives

7
Algorithm
  • Subdivision Step
  • Create Hierarchical Spatial Decompositionbased
    on the CSG expression
  • Ray Tracing Step
  • Traverse Subdivision Structure andRender each
    Cell

8
Subdivision Step
  • Subdivision Structure
  • Modified octree (sequenced kd-tree)

Illustrative Subdivision Example in 2D
9
Real Subdivision Example
10
Visual Trade-Off
  • Quality x Speed
  • Increasing threshold gives better performance
    but introduces visible artifacts

1 pixel
20 pixels
OBS No make-up!
11
Ray-Tracing on the GPU
  • Draw faces of Objects Proxy Bounding Volume
  • Use Vertex and Pixel shadersto trace rays on the
    GPU

12
Ray-Tracing Step
  • Octree Traversal
  • Recursive front-to-back order
  • At leaf cells
  • Take action according to cell classification

13
CSG Ray-Tracing
  • Two Types of Cells

a) Single primitive shader
b) Boolean operation of 2 primitives
o
o
o
o
14
Results
  • Measurements performed in 2 configurations
  • C1 Pentium-M 1.4GHz, Geforce FX Go5200
  • C2 Athlon 64 3800, Geforce 6800 GT
  • To evaluate performance we measured
  • S Subdivision time (CPU)
  • TR Traversal and rendering time (GPU)
  • Ts Setup time (Bandwidth)

15
Results
CK200
CK500
CK1000
WIDGET
Model S S TS TS TR TR
Model C1 C2 C1 C2 C1 C2
WIDGET 17 12 9 5 2262 59
CK200 223 163 84 42 6331 346
CK500 1232 888 432 213 16046 1514
CK1000 3705 2658 1265 626 34975 4324
16
Demo
17
Conclusions
  • Performance comparable to best current methods
  • For models with 500 primitives
  • GPU instruction throughput limited
  • Next generation GPUs
  • Expect to surpass other methods on complex models
Write a Comment
User Comments (0)
About PowerShow.com