Download presentation
Presentation is loading. Please wait.
1
Computer Graphics Research at Virginia
David Luebke Department of Computer Science
2
Outline Why I like graphics My current research VDS Gaze NPR
Scanning Monticello
3
Why Graphics? Graphics is cool Graphics is interesting
I like to see what I’m doing I like to show people what I’m doing Graphics is interesting Involves simulation, algorithms, architecture… Graphics is moving quickly Intel vs. nVidia... Graphics is fun Graphics is important
4
Universal: Jurassic Park
Why Graphics? Entertainment: Cinema Universal: Jurassic Park Pixar: Geri’s Game
5
Why Graphics? Entertainment: Games id: Quake II Cyan: Riven
6
The Visible Human Project MIT: Image-Guided Surgery Project
Why Graphics? Medical Visualization The Visible Human Project MIT: Image-Guided Surgery Project
7
Why Graphics? Computer Aided Design (CAD)
8
Why Graphics? Scientific Visualization
9
Outline Why I like graphics My current research
VDS: View-Dependent Simplification Gaze Art-Based Rendering Scanning Monticello
10
The Problem: Massive Model Rendering
Problem: interactive visualization of very complex environments Who cares? Scientific visualization Medical visualization Computer Aided Design (CAD )
11
Massive Model Examples: Aerospace CAD
Cassini space probe model 415,000 polygons Courtesy Jet Propulsion Laboratory
12
Massive Model Examples: Maritime CAD
Submarine Torpedo Room 700,000 polygons Courtesy General Dynamics, Electric Boat Div.
13
Massive Model Examples: Structural CAD
Coal-fired power plant 13 million polygons Courtesy ABB Engineering
14
Massive Model Examples: More Maritime CAD
Double Eagle container ship 82 million polygons Courtesy Newport News Shipbuilding
15
The Holy Grail… Deussen et al: Realistic Modeling of Plant Ecosystems
16
Level of Detail The problem: One solution:
Polygons rule the world (of interactive graphics) Polygonal models are often too complex to render at interactive rates One solution: Level-of-detail methods simplify the polygonal geometry of small or distant objects
17
Level of Detail Traditional Approach
Create levels of detail (LODs) of objects: 249,924 polys 62,480 polys 7,809 polys 975 polys Courtesy IBM
18
Level of Detail: Traditional Approach
Distant objects use coarser LODs:
19
Limitations of Traditional LOD
Most algorithms are: Too fragile for messy CAD models Too slow for large CAD models Not suited for drastic simplification
20
Drastic Simplification: Large Objects
Courtesy IBM and ACOG
21
Drastic Simplification: Small Objects
Courtesy Electric Boat
22
Drastic Simplification: Preserving Topology
Rotor model: 21 holes 4736 faces Courtesy Alpha_1 Project, University of Utah
23
Drastic Simplification: Preserving Topology
21 holes, 1006 faces 1 hole, 46 faces
24
The Problems With Drastic Simplification
For drastic simplification: Large objects must be subdivided Small objects must be combined Topology must be simplified Difficult or impossible with traditional LOD
25
A New Approach Dynamic: simplify objects on the fly
View-dependent: account for viewpoint Global: simplify scenes, not objects Automatic: simplify without user’s help
26
Dynamic Level of Detail
A relatively recent departure from the traditional static approach: Static LOD: create individual LODs in a preprocess Dynamic LOD: create data structure from which a desired level of detail can be extracted at run time.
27
View-Dependent LOD: Examples
Show nearby portions of object at higher resolution than distant portions View from eyepoint Birds-eye view
28
View-Dependent LOD: Examples
Show silhouette regions of object at higher resolution than interior regions
29
View-Dependent LOD: Examples
Show more detail where the user is looking than in their peripheral vision: 11,726 triangles
30
View-Dependent LOD: Examples
Show more detail where the user is looking than in their peripheral vision: 34,321 triangles
31
Dynamic LOD: How Does It Work?
So…dynamic LOD is great, but how do we implement it? 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
32
The Vertex Tree Each vertex tree node contains:
A subset of model vertices A representative vertex or repvert Folding a node collapses its vertices to the repvert Unfolding a node splits the repvert back into vertices
33
Vertex Tree Example Triangles in active list Vertex tree 8 7 R 2 I II
10 6 9 3 10 A B C 3 1 1 2 7 4 5 6 8 9 4 5 Triangles in active list Vertex tree
34
Vertex Tree Example Triangles in active list Vertex tree 8 7 R A 2 I
II 10 6 9 3 10 A B C 3 1 1 2 7 4 5 6 8 9 4 5 Triangles in active list Vertex tree
35
Vertex Tree Example Triangles in active list Vertex tree 8 R A I II 10
6 9 3 10 A B C 3 1 2 7 4 5 6 8 9 4 5 Triangles in active list Vertex tree
36
Vertex Tree Example Triangles in active list Vertex tree 8 R A I II 10
6 9 3 10 A B C 3 B 1 2 7 4 5 6 8 9 4 5 Triangles in active list Vertex tree
37
Vertex Tree Example Triangles in active list Vertex tree 8 R A I II 10
9 3 10 A B C 3 B 1 2 7 4 5 6 8 9 Triangles in active list Vertex tree
38
Vertex Tree Example Triangles in active list Vertex tree 8 R A C I II
10 9 3 10 A B C 3 B 1 2 7 4 5 6 8 9 Triangles in active list Vertex tree
39
Vertex Tree Example Triangles in active list Vertex tree R A C I II 10
3 10 A B C 3 B 1 2 7 4 5 6 8 9 Triangles in active list Vertex tree
40
Vertex Tree Example Triangles in active list Vertex tree R A C II I II
10 3 10 A B C 3 B 1 2 7 4 5 6 8 9 Triangles in active list Vertex tree
41
Vertex Tree Example Triangles in active list Vertex tree R A II I II
10 10 A B C 3 B 1 2 7 4 5 6 8 9 Triangles in active list Vertex tree
42
Vertex Tree Example Triangles in active list Vertex tree R A I II I II
10 10 A B C 3 B 1 2 7 4 5 6 8 9 Triangles in active list Vertex tree
43
Vertex Tree Example Triangles in active list Vertex tree R I II I II
10 A B C 3 B 1 2 7 4 5 6 8 9 Triangles in active list Vertex tree
44
Vertex Tree Example Triangles in active list Vertex tree R I II I II R
10 A B C 3 B 1 2 7 4 5 6 8 9 Triangles in active list Vertex tree
45
Vertex Tree Example Triangles in active list Vertex tree R I II R 10 A
B C 3 1 2 7 4 5 6 8 9 Triangles in active list Vertex tree
46
The Vertex Tree: Tris and Subtris
8 7 9 8 10 5 4 6 A 3 Fold Node A 2 10 9 6 3 1 Unfold Node A 4 5 Node->Tris: triangles that change shape upon folding Node->Subtris: triangles that disappear completely
47
The Vertex Tree: Tris and Subtris
Each node’s tris and subtris can be computed offline to be accessed very quickly at run time This is the key observation behind dynamic simplification
48
Outline Why I like graphics My current research VDS
Gaze: gaze-directed rendering NPR Scanning Monticello
49
Gaze-Directed Rendering
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
50
Gaze-Directed Rendering: ERICA
Problem 1: how to do eye tracking? Answer ERICA project (Prof. Hutchinson) Main uses: disabled access, gaze analysis ERICA pros: non-intrusive eye tracking 60 Hz, ~1 cm accuracy ERICA cons: No windows (working on it) Head must stay very still (working on it) Currently a bit bulky (working on it)
51
Gaze-Directed Rendering: Perceptual Science
Problem 2: how to degrade detail? Want a rigorous solution, not a hack Goal 1: Imperceptible LOD Idea: use findings from perceptual physiology Map contrast gratings to nodes in tree, only fold nodes when gratings are imperceptible Goal 2: principled approach to polygon-budget rendering This is ongoing work in the truest sense Paper underway Future: better perceptual mode, other rendering modalities
52
Outline Why I like graphics My current research VDS Gaze
NPR: Non-Photorealistic Rendering Scanning Monticello
53
Non-Photorealistic Rendering
Fancy name, simple idea: Make computer graphics that don’t look like computer graphics
54
Non-Photorealistic Rendering
Fancy name, simple idea: Make computer graphics that don’t look like computer graphics
55
Non-Photorealistic Rendering
Fancy name, simple idea: Make computer graphics that don’t look like computer graphics
56
Bunny: Traditional CG Rendering
NPRlib NPRlib: flexible callback-driven NP rendering Bunny: Traditional CG Rendering
57
Non-Photorealistic Rendering
NPRlib: flexible callback-driven NP rendering Bunny: Pencil-Sketch Rendering
58
Non-Photorealistic Rendering
NPRlib: flexible callback-driven NP rendering Bunny: Charcoal Smudge Rendering
59
Non-Photorealistic Rendering
NPRlib: flexible callback-driven NP rendering Bunny: Two-Tone Rendering
60
Non-Photorealistic Rendering
NPRlib: flexible callback-driven NP rendering Molecule: Traditional CG Rendering
61
Non-Photorealistic Rendering
NPRlib: flexible callback-driven NP rendering Molecule: Painterly Rendering
62
Non-Photorealistic Rendering
NPRlib: flexible callback-driven NP rendering Molecule: Cartoon Rendering
63
NPRlib Senior thesis, Derek Cornish: Ongoing research, Andrea Rowan
Turns out that VDSlib is an excellent foundation on which to build NPRlib Particles to guide strokes vertices Regulate screen-space density view-dependent simplification Ongoing research, Andrea Rowan We have a start, need: Better architecture Better examples Users
64
Outline Why I like graphics My current research VDS Gaze
NPR: Non-Photorealistic Rendering Scanning Monticello
65
Scanning Monticello Fairly new technology: scanning the world
My connection: telepresence project at UNC
66
Scanning Monticello Want a flagship project to showcase this
Idea: scan Thomas Jefferson’s Monticello Historic preservation Virtual tours Archeological and architectural research, documentation, and dissemination Great driving problem for scanning & rendering research Just finished first pilot project Show some data...
67
Outline Why I like graphics My current research MMR Gaze
NPR: Non-Photorealistic Rendering Scanning Monticello
68
Graphics Resources Several SGI O2 workstations 2 SGI Octanes
Midrange graphics hardware SGI InfiniteReality2 2 x 225 MHz R10K, 1 Gb, 4 Mb cache High-end graphics hardware: 13 million triangles/sec, 64 Mb texture memory Hot new PC platforms High-end card built on nVidia’s best chipset Stereo glasses, digital video card, miniDV stuff Quad Xeon on loan
69
Breakout Hackfest: Wednesdays @ 5:30 PM Graphics Lunch: Fridays @ noon
Let’s schedule a breakout and do the pizza thing next week…
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.