Object representation
Geri s Game Pixar 1997 Subdivision surfaces Polhemus 3d scan Over 700 controls 2 Computer Graphics
Quick test #1 Describe the picture Graphical systems, visualization and multimedia 3
Quick test #1 Describe the picture Graphical systems, visualization and multimedia 4
Quick test #2 Volunteers: Describe the image to others Others: Reproduce the image Graphical systems, visualization and multimedia 5
Semantic vs. numeric Humans semantic representation concepts, notions, meanings, emotions... imprecise, ambiguous Computers numeric representation exact, mathematical, straightforward Graphical systems, visualization and multimedia 6
Detailed representation Graphical systems, visualization and multimedia 7
Object properties basic What object properties there are? Graphical systems, visualization and multimedia 8
Object properties - advanced Physical object properties mass, stiffness, elasticity Material properties shininess, roughness light behavior friction etc. We ll deal with materials later Graphical systems, visualization and multimedia 9
Object definition Geometry plus model transformation (local global) Material color, shininess, index of refraction Body properties weight, elasticity... Graphical systems, visualization and multimedia 10
2D objects Let s define these objects Graphical systems, visualization and multimedia 11
2D objects Let s define these objects Graphical systems, visualization and multimedia 12
Shapes vs. bitmaps We ll deal with bitmaps later Shapes, vectors, curves, parametric, implicit Bitmaps, raster, pixels, explicit Graphical systems, visualization and multimedia 13
2D geometry
Polygons Control vertices x,y coordinates in order CCW Edges width shape style (solid, dotted etc.) Graphical systems, visualization and multimedia 15
Curves Primitives circle, ellipse General parametric curves Graphical systems, visualization and multimedia 16
Parametric curves Bezier curves Spline curves Graphical systems, visualization and multimedia 17
Remember: line equation Line P-Q where P = [x 1,y 1 ], Q = [x 2,y 2 ] x = x 1 + t * (x 2 x 1 ) } y = y 1 + t * (y 2 y 1 ) L = P + t*(q-p) Graphical systems, visualization and multimedia 18
Parametric curve Generalization x = f 1 ( t ) y = f 2 ( t ) } C(x,y) = f(t) Example Circle x c x r.cos( t) y c y r.sin( t), t 0,2 Graphical systems, visualization and multimedia 19
Cubic Bezier curves 4 control points C 0, C 1, C 2, C 3 C 0 and C 3 endpoints C 1 and C 2 define shape Can be expressed in matrix form Graphical systems, visualization and multimedia 20
Approximation / interpolation http://lubovo.misto.cz/curves/ Graphical systems, visualization and multimedia 21
Interpolation curves Control vertices + tangent vectors corner (cusp) smooth symmetrical Usually cubic splines good manipulation Graphical systems, visualization and multimedia 22
Parametric polygonal C(x,y) = f(t) t = 0.0, 0.2, 0.4, 0.6, 0.8, 1.0 Graphical systems, visualization and multimedia 23
3D geometry
From polygons to polyhedra Graphical systems, visualization and multimedia 25
From curves to surfaces Graphical systems, visualization and multimedia 26
Boundary representation Only the surface of the object is described No information about the inside Point cloud Wireframe Polygonal mesh Parametric surfaces Subdivision surfaces Implicit surfaces Graphical systems, visualization and multimedia 27
Point cloud Set of points located on object s surface Usually obtained by 3D scanning Connectivity information? http://www.photomodeler.com Graphical systems, visualization and multimedia 28
Wireframe Set of vertices V(x,y,z) Edges E(V i,v j ) Graphical systems, visualization and multimedia 29
Real wireframe Benedict Radcliffe s Toyota Corolla 30 Computer Graphics
Polygonal representation Polygonal mesh Vertices V(x,y,z) Faces F(V 1, V 2,... V n ) (Edges) E(V i, V j ) Graphical systems, visualization and multimedia 31
Example winged edge Data structure for mesh representation Fast mesh traversal Splitting / merging operations Graphical systems, visualization and multimedia 32
Polygon orientation normal Remember right-hand coordinate system Surface normal Graphical systems, visualization and multimedia 33
Parametric surfaces 3D generalization of parametric curves m n control points parameters u,v C(x,y,z) = f(u,v) http://cadauno.sourceforge.net/ Graphical systems, visualization and multimedia 34
Parametric surfaces e.g. Cubic Bezier surface, NURBS Graphical systems, visualization and multimedia 35
Parametric vs. polygonal Parametric smooth, reparametrizable harder rendering precise rendering Polygonal discrete, hard to reparametrize faster rendering or rasterization approximative rendering Graphical systems, visualization and multimedia 36
Parametric polygonal C(x,y,z) = f(u,v) u = 0.0, 0.2, 0.4, 0.6, 0.8, 1.0, v = 0.0, 0.33, 0.66, 1.0 Graphical systems, visualization and multimedia 37
Subdivision surfaces Recursive subdivision of a polygonal model Limit surface - continuous Easy modeling, small data size http://www.holmes3d.net/graphics/subdivision/ Graphical systems, visualization and multimedia 38
Subdivision example Graphical systems, visualization and multimedia 39
Implicit surfaces F(x,y,z) = 0 sphere: metaballs: Examples: http://iat.ubalt.edu/summers/math/platsol.htm Graphical systems, visualization and multimedia 40 0 2 2 2 2 r z y x 0 ) ) ( ) ( ) /(( 2 2 2 c z z y y x x R m m m m
Video http://www.youtube.com/watch?v=k27zvop1pw4 Graphical systems, visualization and multimedia 41
Question What happens if we turn F(x,y,z) = 0 into F(x,y,z) 0? surface volume Graphical systems, visualization and multimedia 42
Volumetric representation not only boundary but also the insides of the object Medicine Physics Simulations Animation Graphical systems, visualization and multimedia 43
Voxels Volume elements, 3D pixels Discrete Binary values Float values Graphical systems, visualization and multimedia 44
Video Prof. Miloš Šrámek http://www.viskom.oeaw.ac.at/~milos/ Mpeg animation of 615 images, rendered from a segmented MRI data set. Graphical systems, visualization and multimedia 45
Constructive solid geometry Primitives + Boolean operators on sets AND, OR, NOT singularities manifolds Graphical systems, visualization and multimedia 46
CSG continued Hierarchy Leaves = primitives Nodes = operators Volume-rep good Boundary-rep difficult Graphical systems, visualization and multimedia 47
Functional representation F-rep ~ generalization of CSG More node functions operators e.g. object blending Graphical systems, visualization and multimedia 48
Special objects
Particle systems Emitter + physics + elementary particle Water, snow, rain Smoke, fog, clouds Swarms, crowds Multi-agent systems 50 Computer Graphics
Billboards Complex objects faked by a picture Trees, grass Fire, smoke Light effects Distant objects Can be animated Animated Sprite Pack http://www.thegamecreators.com/?m=view_product&id=2154 51 Computer Graphics
Billboard Tree 52 Computer Graphics
Multiple sprites 53 Computer Graphics
Summary Boundary vs. Volume representation Parametric vs. Polygonal representation Parametric Polygonal Sprites / Billboards 54 Computer Graphics