Title: Real-Time Rendering
1Real-Time Rendering Game Technology
2Demo Time
- New card not installed yet so
3Administrative Issues
- Everything on hold till Thursday
- Course forum should be up then, Ill send out
mail when it comes available - At that point you should do the pitch
assignment - Thursday guest visit by Dean Abernathy, IATH
- Topic virtual reality for cultural heritage sites
4To think about
- What are some possible bottlenecks in system
performance of a graphics/game engine? - Does it make any difference to sort your geometry
front-to-back or back-to-front when using a
depth-buffer? - Will your textured polygons render faster if
MIP-mapping is enabled or disabled? - Does the order that you traverse polygons (i.e.,
issue vertices using glVertex() or something like
it) matter?
5Moral
- Real-time graphics happens on highly custom,
highly sophisticated hardware - You have to understand something about how that
hardware works for the best performance - In addition to understanding the basic principles
and algorithms, of course
6Level of Detail
- David Luebke
- University of Virginia
7Level of Detail
- David Luebke
- University of Virginia
8Level of Detail
- David Luebke
- University of Virginia
9Level of Detail
- David Luebke
- University of Virginia
10Introduction
- Level of detail (LOD) is an important tool for
maintaining interactivity - Focuses on the fidelity / performance tradeoff
- Not the only tool! Complementary with
- Parallel rendering
- Occlusion culling
- Image-based rendering etc
11Level of Detail The Basic Idea
- The problem
- Geometric datasets can be too complex to render
at interactive rates - One solution
- Simplify the polygonal geometry of small or
distant objects - Known as Level of Detail or LOD
- A.k.a. polygonal simplification, geometric
simplification, mesh reduction, decimation,
multiresolution modeling,
12Level of Detail
- A recurring theme in computer graphics trade
fidelity for performance - Reduce level of detail of distant, small, or
unimportant objects
13Level of Detail
- A recurring theme in computer graphics trade
fidelity for performance - Reduce level of detail of distant, small, or
unimportant objects
14Level of DetailMotivation
- Big models!
- St. Matthew 372 million polygons
- David 1 billion polygons
Courtesy Digital Michelangelo Project
15Level of Detail ResearchGLOD
- GLOD
- High-level library for LOD in OpenGL
- Goal make high-quality LOD easy to integrate in
games and other graphics applications - Includes and interfaces with VDSlib
- Cool software (interface design) issues
- Free membership in the Church of Glöd
- Show GLOD video
16Level of DetailTraditional LOD In A Nutshell
- Create levels of detail (LODs) of objects
69,451 polys
2,502 polys
251 polys
76 polys
Courtesy Stanford 3D Scanning Repository
17Level of DetailTraditional LOD In A Nutshell
- Distant objects use coarser LODs
18Level of DetailThe Big Questions
- How to represent and generate simpler versions of
a complex model?
69,451 polys
2,502 polys
251 polys
76 polys
Courtesy Stanford 3D Scanning Repository
19Level of DetailThe Big Questions
- How to evaluate the fidelity of the simplified
models?
69,451 polys
2,502 polys
251 polys
76 polys
Courtesy Stanford 3D Scanning Repository
20Level of DetailThe Big Questions
- When to use which LOD of an object?
69,451 polys
2,502 polys
251 polys
76 polys
Courtesy Stanford 3D Scanning Repository
21Some Background
- History of LOD techniques
- Early history Clark (1976), flight simulators
- Handmade LODs ? automatic LODs
- LOD run-time management reactive ? predictive
(Funkhouser) - LOD frameworks
- Discrete (1976)
- Continuous (1996)
- View-dependent (1997)