Upload
chad-higgins
View
217
Download
0
Embed Size (px)
Citation preview
Large-Scale Polygon Rendering
Solutions Decimation Visibility Culling Parallel Rendering Others
Surface DecimationUse a smaller number of triangles to represent the same surface -> preserve the topology
Removing vertices
Contracting edges
Etc.
Visibility Culling
Do not display polygons that are not visible to the eyes
188,000 triangles1 million triangles
Parallel Rendering
3D Rendering Pipeline
Transformation Clipping
(modeling, viewing, projection)
Lighting Screen Projection Scan conversion
Z-buffer Shading Geometry Processing
Rasterization
Parallel Rendering
G
R
display
sequential
G
R
G
R
G
R
G
R
G
R
G
R
display
fully parallel
Parallel 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
Parallel Rendering (3)
What is rendering anyway?
Calculate the effect of each primitive on each pixel
During transformation, a primitive can go anywhere onthe screen
Rendering can be seen as sorting primitives to the screen
Parallel Rendering (4)
Rendering as a sorting process
Sorting primitives
Where to sort?
Sorting can pretty muchhappy anywhere
Where/When to sort willaffect the structure of theparallel rendering system
G
R
G
R
G
R
G
R
G
R
G
R
display
Sort-First Parallel Rendering
Sort-First Parallel Rendering
Distribute the primitives early in the rendering pipeline
P1 P2
P3 P4
1. Subdivide the screen2. “Pre-transform” the primitives3. Distribute the primitives4. Each processor render its own primitives5. No communication needed afterwards
P1: P2: P3: P4:
Sort-Middle Parallel Rendering
Sort-Middle Parallel Rendering
Distribute the primitives in the middle of pipeline
P1: P2: P3: P4:
P1 P2
P3 P4
1. Arbitrary assignment
2. Geometry processing
3. Sorting
P1: P2: P3: P4:
Rasterization
Sort-Last Parallel Rendering
Sort-Last Parallel Rendering
P1 P2
P3 P4
Distribute the primitives in the end of pipeline
P1: P2: P3: P4:
G
R
G
R
G
R
G
R
1. Arbitrary assignment
2. Geometry processing
3. Rasterization
Sort-Last Parallel Rendering
P1 P2 P3 P4
P1 P2
P3 P4
P1 P2 P3 P4
Sort images with z
Compositing/z-buffer