Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computer Graphics Research at Virginia

Similar presentations


Presentation on theme: "Computer Graphics Research at Virginia"— Presentation transcript:

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…


Download ppt "Computer Graphics Research at Virginia"

Similar presentations


Ads by Google