Download presentation
Presentation is loading. Please wait.
Published byJennifer Shields Modified over 9 years ago
1
David Luebke2/12/2016 CS 551 / 645: Introductory Computer Graphics David Luebke cs551@cs.virginia.edu http://www.cs.virginia.edu/~cs551
2
David Luebke2/12/2016 Dynamic LOD l Recall definition of static LOD: LODs are created offline at fixed resolution –Simplest programming model; decouples simplification and rendering n LOD creation need not address real-time rendering constraints n Run-time rendering need only pick LODs –Fits modern graphics hardware well n Can compile each LOD into triangle strips and display lists n These render much faster than unorganized polygons on today’s hardware
3
David Luebke2/12/2016 Dynamic Level of Detail l A relatively recent departure from the traditional static approach: –Static LOD: create individual LODs in a preprocess –Dynamic LOD: create data structure from which any desired level of detail can be extracted at run time.
4
David Luebke2/12/2016 Advantages of Dynamic LOD l Better granularity better fidelity l Better granularity smoother transitions l Supports progressive transmission l Supports view-dependent LOD –Use current view parameters to select best representation for the current view –Single objects may thus span several levels of detail
5
David Luebke2/12/2016 View-Dependent LOD: Examples l Show nearby portions of object at higher resolution than distant portions View from eyepoint Birds-eye view
6
David Luebke2/12/2016 View-Dependent LOD: Examples l Show silhouette regions of object at higher resolution than interior regions
7
David Luebke2/12/2016 Coming up l More on view-dependent LOD l As time permits: –More on animation –Graphics hardware –Intro to radiosity l Recap for final
8
David Luebke2/12/2016 Dynamic LOD: How Does It Work? l So…dynamic LOD is great, but how do we implement it? l Basically, with one big data structure: the vertex tree –Represents the entire model –Hierarchy of all vertices in model –Queried each frame for updated scene
9
David Luebke2/12/2016 The Vertex Tree l Each vertex tree node contains: –A subset of model vertices –A representative vertex or repvert l Folding a node collapses its vertices to the repvert l Unfolding a node splits the repvert back into vertices
10
David Luebke2/12/2016 Vertex Tree Example 1 3 2 9 87 10 54 6 12745689 ABC I 3 II R Triangles in active list Vertex tree
11
David Luebke2/12/2016 Vertex Tree Example 3 1 2 9 87 10 54 6 12745689 ABC I 3 II R A Triangles in active list Vertex tree
12
David Luebke2/12/2016 Vertex Tree Example 9 8 10 54 6 12745689 BC I 3 II R A 3 A Triangles in active list Vertex tree
13
David Luebke2/12/2016 Vertex Tree Example 9 8 10 54 6 12745689 BC I 3 II R A 3 B A Triangles in active list Vertex tree
14
David Luebke2/12/2016 Vertex Tree Example 10 12745689 C I 3 II R A 3 B 8 9 AB Triangles in active list Vertex tree
15
David Luebke2/12/2016 Vertex Tree Example 10 12745689 C I 3 II R A 3 B C 8 9 AB Triangles in active list Vertex tree
16
David Luebke2/12/2016 Vertex Tree Example 10 12745689 I 3 II R A 3 B C ABC Triangles in active list Vertex tree
17
David Luebke2/12/2016 Vertex Tree Example II 10 12745689 I 3 R A 3 B C II ABC Triangles in active list Vertex tree
18
David Luebke2/12/2016 Vertex Tree Example 10 12745689 C I 3 R A B II AB Triangles in active list Vertex tree
19
David Luebke2/12/2016 Vertex Tree Example 12745689 C103 R B II I A 10 AB III Triangles in active list Vertex tree
20
David Luebke2/12/2016 Vertex Tree Example 12745689 AC103 R B II I B I Triangles in active list Vertex tree
21
David Luebke2/12/2016 Vertex Tree Example 12745689 AC103 R R B II I B I Triangles in active list Vertex tree
22
David Luebke2/12/2016 Vertex Tree Example 12745689 ABC10 I 3 II R R Triangles in active list Vertex tree
23
David Luebke2/12/2016 The Vertex Tree: Tris and Subtris 3 1 2 9 87 10 54 6 9 8 54 6 A 3 Fold Node A Unfold Node A Node->Tris : triangles that change shape upon folding Node->Subtris : triangles that disappear completely
24
David Luebke2/12/2016 The Vertex Tree: Tris and Subtris l Each node’s tris and subtris can be computed offline to be accessed very quickly at run time l This is the key observation behind dynamic simplification
25
David Luebke2/12/2016 Gaze-Directed Rendering l View-dependent rendering opens up a new door: gaze-directed rendering –Track the user’s eye gaze –Give more detail to region of interest, less elsewhere
26
David Luebke2/12/2016 Gaze-Directed Rendering: ERICA l Problem 1: how to do eye tracking? l Answer ERICA project (Systems Engineering, Tom Hutchinson P.I.) –Infrared camera sits under/near monitor, watches user’s eye –LED in center of camera lens creates glint and glare (=redeye) –Relation of the two gives eye position
27
David Luebke2/12/2016 Gaze-Directed Rendering: ERICA l ERICA pros: –non-intrusive eye tracking –30 Hz, ~1 cm accuracy l ERICA cons: –No incandescent lights or windows –Head must stay very still (almost fixed) –Currently a bit bulky l Main uses: disabled access
28
David Luebke2/12/2016 Gaze-Directed Rendering: Perceptual Science l Problem 2: how to degrade detail? –Want a rigorous solution, not a hack –Goal 1: Imperceptible LOD n Idea: use findings from perceptual physiology n Map contrast gratings to nodes in tree, only fold nodes when gratings are imperceptible –Goal 2: better LOD, with an understanding of degradation effects
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.