Visibility and Hidden Surface Removal
Visibility and Hidden Surface Removal Visibility and Hidden Surface Removal
4. Back-face culling • Simple test (when looking down the −z axis): examine the sign of the z component of the surface normal • z < 0 in VCS → back-facing polygon • How effective is it? – Can cull about 50% polygons in a typical scene – Does not really do occlusion – Many invisible faces still processed © Machiraju/Zhang/Möller 34
5. Spatial Partitioning • break a larger problem down into smaller ones, by assigning objects to spatially coherent groups as a preprocessing step – 2D - use a grid on the image plane – 3D - use a grid over object space – Adaptive partitioning techniques for irregularly distributed objects in space: size of partitions vary • Quadtrees, octrees • BSP-trees (binary space partition trees) © Machiraju/Zhang/Möller • kd-trees 35
- Page 1 and 2: Visibility and Hidden Surface Remov
- Page 3 and 4: Reading • Angel - Chapter 6.10-6.
- Page 5 and 6: Visibility (2) • Connecting dots
- Page 7 and 8: Visibility (4) • Include shading
- Page 9 and 10: Visibility (6) • wireframe © Mac
- Page 11 and 12: Visibility (8) • Inter-object vis
- Page 13 and 14: Why compute visibility? • Realism
- Page 15 and 16: Classification of algorithms • Hi
- Page 17 and 18: Object Space for each object in wor
- Page 19 and 20: How to improve efficiency • Pay a
- Page 21 and 22: 1. Coherence • Why? — Object pr
- Page 23 and 24: 1. Edge and face coherence • Edge
- Page 25 and 26: 2. Use of projection normalization
- Page 27 and 28: 2. Perspective Transform • Can br
- Page 29 and 30: 3. Bounding Objects (2) • For ren
- Page 31 and 32: 3. Bounding Objects (4) • rectang
- Page 33: 4. Back-face culling • Assumption
- Page 37 and 38: 6. Hierarchy • Use (e.g., semanti
- Page 39 and 40: z-buffer algorithm revisited • On
- Page 41 and 42: z-buffer: exploiting depth coherenc
- Page 43 and 44: z-buffer: bilinear interpolation
- Page 45 and 46: List Priority (2) • Depth compari
- Page 47 and 48: List Priority (4) • Do extents in
- Page 49 and 50: List Priority (6) • Do polygons c
- Page 51 and 52: List Priority (8) • If these test
- Page 53 and 54: List Priority (10) • More example
- Page 55 and 56: Scanline: data structure • Recall
- Page 57 and 58: Scanline Example • Another repres
- Page 59 and 60: Scanline: scan example 2 • At sca
- Page 61 and 62: Scanline: scan example 4 • Mainta
- Page 63 and 64: Scanline problems • Beware of lar
- Page 65 and 66: Building the BSP trees • Object s
- Page 67 and 68: BSP traversal example • Rendering
- Page 69 and 70: Warnock’s subdivision • Divide
- Page 71 and 72: Warnocks Algorithm (3) - Single sur
- Page 73 and 74: Warnock’s Algorithm • If none o
- Page 75: Final issues on area subdivision
4. Back-face culling<br />
• Simple test (when looking down the −z<br />
axis): examine the sign of the z component<br />
of the surface normal<br />
• z < 0 in VCS → back-facing polygon<br />
• How effective is it?<br />
– Can cull about 50% polygons<br />
in a typical scene<br />
– Does not really do occlusion<br />
– Many invisible faces still<br />
processed © Machiraju/Zhang/Möller<br />
34