Title: LargeScale Polygon Rendering
1Large-Scale Polygon Rendering
2Solutions
- Decimation
- Visibility Culling
- Parallel Rendering
- Others
3Surface Decimation
Use a smaller number of triangles to represent
the same surface -gt preserve the topology
Removing vertices Contracting edges Etc.
4Visibility Culling
Do not display polygons that are not visible to
the eyes
1 million triangles
188,000 triangles
5Parallel Rendering
63D Rendering Pipeline
Geometry Processing
Rasterization
7Parallel Rendering
sequential
G R
display
8Parallel Rendering (2)
- Geometry processing parallelized by assigning
each processor a subset of primitives (polygons) - Rasterization parallelized by assigning each
processor a portion of pixel calculations
9Parallel Rendering (3)
What is rendering anyway? Calculate the effect
of each primitive on each pixel During
transformation, a primitive can go anywhere
on the screen Rendering can be seen as sorting
primitives to the screen
10Parallel Rendering (4)
Rendering as a sorting process
11Sorting primitives
Where to sort? Sorting can pretty much happy
anywhere Where/When to sort will affect the
structure of the parallel rendering system
G R
G R
G R
G R
G R
G R
display
12Sort-First Parallel Rendering
13Sort-First Parallel Rendering
Distribute the primitives early in the rendering
pipeline
- Subdivide the screen
- Pre-transform the primitives
- Distribute the primitives
- Each processor render its own
- primitives
- No communication needed
- afterwards
P2
P1
P3
P4
P1 P2 P3
P4
14Sort-Middle Parallel Rendering
15Sort-Middle Parallel Rendering
Distribute the primitives in the middle of
pipeline
P1 P2 P3 P4
1. Arbitrary assignment 2. Geometry processing
3. Sorting
P1 P2 P3 P4
Rasterization
16Sort-Last Parallel Rendering
17Sort-Last Parallel Rendering
Distribute the primitives in the end of pipeline
P1 P2 P3 P4
1. Arbitrary assignment 2. Geometry processing
3. Rasterization
18Sort-Last Parallel Rendering
P1 P2 P3 P4
Sort images with z Compositing/z-buffer
P1 P2 P3 P4
19Uniprocessor Cost
20Sort First Overhead
21Sort first pros and cons
- Pros
- Low communication cost
- Processors implement the entire pipeline
- Cons
- Susceptible to load imbalance
- Need special handling for frame to frame coherence
22Sort Middle Overhead
23Sort middle pros and cons
- Pros
- General and straightforward
- Cons
- High communication cost if tessellation ratio is
high - Susceptible to load imbalance between
rasterization
24Sort Last Overhead
25Sort last Pros and Cons
- Pros
- Independent rendering of a full pipeline up to
pixel merging - Less Prone to load imbalance
- Cons
- Pixel traffic can be extremely high, particularly
for oversampling
26Comparison
27Comparisons
- Pre-transformation and bucketization overhead may
not be significant - SL-sparse has little processing overhead beyond
pixel merging - SL-full requires much more effort for merging
pixels - Sort first communication cost can be small if
frame to frame coherence is utilized - Simple and large primitives favor sort first and
middle. Small and complex primitive favor sort
last sparse
28Parallel Volume Rendering
29Parallel Volume Rendering