DPL2/10/2016 CS 551/651: Final Review David Luebke
DPL2/10/2016 Administrivia Exercise 2 sign-up sheet Exercise 2 sign-up sheet –3-5 PM, May 4-11 Course evaluations Course evaluations Assignments graded by Monday, May 10 Assignments graded by Monday, May 10
DPL2/10/2016 Final Exam Format: in-class, closed-book, closed-note, closed-computer exam Format: in-class, closed-book, closed-note, closed-computer exam Length: 1-2 hours expected length Length: 1-2 hours expected length Topics: All lectures, all reading Topics: All lectures, all reading
DPL2/10/2016 Realism Global vs. local illumination models Global vs. local illumination models Ray tracing Ray tracing –Principles & limitations –Optimizations –Advanced techniques
DPL2/10/2016 Realism Antialiasing: theory & practice Antialiasing: theory & practice –Frequency domain, Nyquist limit, etc. –Convolution, filters, etc. –Sampling strategies –Antialiasing & texture mapping
DPL2/10/2016 Realism Radiosity Radiosity –Principles & limitations –Progressive radiosity –Computing form factors
DPL2/10/2016 Speed Visibility Visibility –View-frustum culling –Cells & portals Airey: ray-casting Airey: ray-casting Teller: linear programming line-of-sign calculations Teller: linear programming line-of-sign calculations Luebke (pfPortals): depth-first adjacency graph traversal using cull boxes Luebke (pfPortals): depth-first adjacency graph traversal using cull boxes
DPL2/10/2016 Speed Visibility continued Visibility continued –General occlusion culling Hierarchical Z-Buffer: coherence in image space, object space, and time Hierarchical Z-Buffer: coherence in image space, object space, and time Hierarchical Occlusion Maps: depth vs. overlap, single-pass occluder selection, using texture hardware to accelerate HOM Hierarchical Occlusion Maps: depth vs. overlap, single-pass occluder selection, using texture hardware to accelerate HOM
DPL2/10/2016 Speed Level of detail mechanisms Level of detail mechanisms –Sampling –Adaptive subdivision –Decimation –Vertex merging
DPL2/10/2016 Speed LOD criteria LOD criteria –Geometric vs. perceptual –Vertex clustering: importance ranking Curvature Curvature Edge length Edge length –Decimation: distance from plane, distance from edge –Quadric Error Metric: squared distance from all supporting planes
DPL2/10/2016 Speed LOD algorithms LOD algorithms –Vertex clustering (Rossignac, Low) –Decimation (Schroeder) –Quadric error metrics (Garland)
DPL2/10/2016 Speed Choosing LODs Choosing LODs –Simple metrics (distance, screen size) –"Knapsack” approach Cost (time, polygons) Cost (time, polygons) Benefit (lots of possible criteria) Benefit (lots of possible criteria)
DPL2/10/2016 Speed Dynamic LOD Dynamic LOD –Idea: don’t build LODs in preprocess, build data structure & extract LODs –Mechanism: reversible vertex clustering/edge collapsing Structures: vertex tree, active triangle list Structures: vertex tree, active triangle list Store tris, subtris with nodes Store tris, subtris with nodes –Static vs. dynamic LOD: pros & cons –View-dependent LOD: pros & cons
DPL2/10/2016 Speed Dynamic LOD continued Dynamic LOD continued –View-dependent LOD criteria Vertex cluster size Vertex cluster size Silhouette preservation Silhouette preservation Triangle budget Triangle budget –Optimizations: temporal coherence, asynchronous parallelization
DPL2/10/2016 Topics Work we’ve sampled in more detail: Work we’ve sampled in more detail: –Debevec: modeling & rendering architecture from photographs –Zhang: Hierarchical Occlusion Maps –Luebke: View-dependent polygonal simplification –Raskar: Image-precision silhouette edges