Title: Games, Movies and Virtual Worlds
1Games, Movies and Virtual Worlds An
Introduction to Computer Graphics
- Ayellet Tal
- Department of Electrical Engineering
- Technion
2When you think about graphics, you envision
3When you think about graphics , you envision
4When you think about graphics, you envision
5Applications
- Science
- Art
- Engineering
- Medicine
- Entertainment
- Advertising
- Education
6Applications
- Science
- Art
- Engineering
- Medicine
- Entertainment
- Advertising
- Education
7Applications
- Science
- Art
- Engineering
- Medicine
- Entertainment
- Advertising
- Education
8Applications
- Science
- Art
- Engineering
- Medicine
- Entertainment
- Advertising
- Education
9Applications
- Science
- Art
- Engineering
- Medicine
- Entertainment
- Advertising
- Education
10Applications
- Science
- Art
- Engineering
- Medicine
- Entertainment
- Advertising
- Education
11Applications
- Science
- Art
- Engineering
- Medicine
- Entertainment
- Advertising
- Education
12Applications
- Science
- Art
- Engineering
- Medicine
- Entertainment
- Advertising
- Education
Outside-In
http//www.geom.uiuc.edu/docs/outreach/oi/more
graphics.html
http//www.physics.orst.
edu/bulatov/vrml/index.html
13Why interesting?
- The world
- complex
- dynamic
- multi-dimensional continuous
-
- The screen
- simple
- static
- two-dimensional
- discrete
14Beauty
- Science math and physics
- Engineering software and hardware
- Artistic and aesthetic issues
- Fun!
15Issues in computer graphics
- Geometric modeling
- Rendering
- Animation
- Scientific visualization
The purpose of computing
is insight, not numbers
Hamming - Virtual reality
- Human-computer interaction
16Geometric modeling
- How do we represent objects?
17Wish list
- Large domain
- Unambiguous
- Unique
- Accurate
- Impossible to create invalid representations
- Easy to create and maintain
- Closure under certain operations
- Compact
- Efficient
18Geometric modeling
- How do we represent objects?
Voxels
19Geometric modeling
- How do we represent objects?
Splines
20Geometric modeling
- How do we represent objects?
Polyhedra
21Rendering
- What pixels?
- Whats in the pixel?
- Which color?
22What pixels scan conversion
- Given A mathematical description of a two or a
three dimensional scene - Find A value for each pixel in the frame buffer
23What pixels scan conversion
- Given A mathematical description of a two or a
three dimensional scene - Find A value for each pixel in the frame buffer
24Whats in the pixel - visibility
- Goal Hidden surface removal
- In object space or in image space?
- In software or in hardware?
25What color?
- Illumination and shading
- Transparency, reflection
26Issues - recap
- Modeling
- Construct / represent objects
- Transform to construct scene
- Rendering
- Project
- Scan convert
- Remove hidden surface
- Assign colors
27Animation
- How to define / represent complex
time-dependent behavior of objects?
28(No Transcript)
29Animation topics
- Automatic in-between
- Transformations
- Collision
- Motion
- Facial animation
- Morphing
- Physically-based simulation
30Animation topics
- Automatic in-between
- Transformations
- Collision
- Motion
- Facial animation
- Morphing
- Physically-based simulation
31Animation topics
- Automatic in-between
- Transformations
- Collision
- Motion
- Facial animation
- Morphing
- Physically-based simulation
32Animation topics
- Automatic in-between
- Transformations
- Collision
- Motion
- Facial animation
- Morphing
- Physically-based simulation
33Animation topics
- Automatic in-between
- Transformations
- Collision
- Motion
- Facial animation
- Morphing
- Physically-based simulation
34Animation topics
- Automatic in-between
- Transformations
- Collision
- Motion
- Facial animation
- Morphing
- Physically-based simulation
72 Frames - 5 Full Frames
35Animation topics
- Automatic in-between
- Transformations
- Collision
- Motion
- Facial animation
- Morphing
- Physically-based simulation
36Animation topics
- Automatic in-between
- Transformations
- Collision
- Motion
- Facial animation
- Morphing
- Physically-based simulation
1993, Apple Computer, Inc.
37Case study Teaching dinos to dance
38Algorithm
- Decomposition
- Control skeleton extraction
- Joint binding
- Motion definition or copying
39Algorithm
- Decomposition
- Control skeleton extraction
- Joint binding
- Motion definition or copying
40Algorithm
- Decomposition
- Control skeleton extraction
- Joint binding
- Motion definition or copying
41Algorithm
- Decomposition
- Control skeleton extraction
- Joint binding
- Motion definition or copying
42Algorithm
- Decomposition
- Control skeleton extraction
- Joint binding
- Motion definition or copying
43Research topic decomposition
- Let S be an orientable mesh.
- Goal decompose S into connected
sub-meshes S1, S2 Sk that are face-wise
disjoint, and whose union gives S.
S1
S2
S
Sk
44Key idea two-phase algorithm
- Find major components with fuzzy boundaries
-
- Find exact boundaries
45Algorithm outline
- Construct fuzzy decomposition
- Assign distances to pairs of faces
- Assign probabilities of belonging to patches
- Compute a fuzzy decomposition
- 2. Construct exact boundaries
46Algorithm outline
- Construct fuzzy decomposition
- Assign distances to pairs of faces
- Assign probabilities of belonging to patches
- Compute a fuzzy decomposition
- 2. Construct exact boundaries
47Algorithm outline
- Construct fuzzy decomposition
- Assign distances to pairs of faces
- Assign probabilities of belonging to patches
- Compute a fuzzy decomposition
- 2. Construct exact boundaries
48Algorithm outline
- Construct fuzzy decomposition
- Assign distances to pairs of faces
- Assign probabilities of belonging to patches
- Compute a fuzzy decomposition
- 2. Construct exact boundaries
49Algorithm outline
- Construct fuzzy decomposition
- Assign distances to pairs of faces
- Assign probabilities of belonging to patches
- Compute a fuzzy decomposition
- 2. Construct exact boundaries
50Problem finding boundaries
- Given
- G(V,E) the dual graph of the mesh
- A,B,Fuzzy
- Goal Partition V into VA and VB s.t.
A
Fuzzy
B
51Algorithm for finding boundaries
- Assign capacities
- Construct a flow network on Fuzzy
- Find the minimum cut
52The algorithm has
- Geometry
- Probability
- Clustering
- Graph theory
53Shuttle
54Dove
55 Alien
56Camel
57 Heart
58Venus
59Skeleton hand
60Skeleton extraction
61Skeleton extraction
62Skeleton extraction
63Skeleton extraction
64Help the dove fly
65So,
- Games, movies and virtual world?
66So,
- Games, movies and virtual world?
- Or
- Modeling, rendering, animations
67So,
- Games, movies and virtual world?
- Or
- Modeling, rendering, animations
- Math, physics, data structures, algorithms,
software, hardware
68So,
- Games, movies and virtual world?
- Or
- Modeling, rendering, animations
- Math, physics, data structures, algorithms,
software, hardware - Science, education, medicine, engineering..
69THE END