Geometric ModellingModelling methodologyConstructive Solid GeometryConstructive Solid GeometrySweepsFree-form deformationFree-Form DeformationsRepresentationsRepresentationsPolygonsPointsParmeteric PatchesSubdivision surfacesSpatial subdivisionDistance fieldsMedial axisMetaballsMarching CubesProcedural modellingL-SystemsPlant ecosystemsProcedural TerrainsProcedural TerrainsProcedural TerrainsProcedural citiesProcedural citiesProcedural Buildings4/18/071Geometric ModellingComputer GraphicsCOMP 770 (236)Spring 2007Instructor: Brandon Lloyd4/18/072■ Modeling methods■ Surface representations■ Procedural modeling4/18/073Modelling methodology■ Explicit° Hand modification of theunderlying representation° CSG° Sweeps° Deformations■ Procedural° L-SystemsDeRose984/18/074Constructive Solid Geometry■ Combine simple solid objects into complex ones through set theoretic operationshttp://en.wikipedia.org/wiki/Constructive_solid_geometryUnion Difference Intersection4/18/075Constructive Solid Geometryhttp://en.wikipedia.org/wiki/Constructive_solid_geometry4/18/076Sweepshttp://groups.csail.mit.edu/graphics/classes/6.837/F98/talecture/■ Formed by sweeping a generating shape along a path° Surfaces of revolution° Extrusions4/18/077Free-form deformation■ Surround object in a lattice■ Freeze lattice coordinates of surface points■ Manipulate lattice to deform object4/18/078Free-Form DeformationsYoon and Kim 20064/18/079Representations■ Boundary representations (B-reps)° represent only the surface of an object° “shells”° e.g. polygon meshes, parameteric patches ■ Solid representations° have clear inside and outside° e.g. implicit functionshttp://cadd.web.cern.ch/cadd/cad_geant_int/thesis/node23.html4/18/0710Representations■ Explicit° Polygonal mesh° Point-based° Parametric patches° Subdivision surfaces° Spatial subdivision■ Others° Distance fields° Medial axis° Metaballs4/18/0711Polygons■ May or may not have connectivity■ Fast to draw4/18/0712Points■ Typical output from a range finder■ No topology■ Adaptive sampling4/18/0713Parmeteric Patches■ Compact■ Smooth surface representation■ Good control■ Special care is needed to maintain continuity4/18/0714Subdivision surfaces■ Compact ■ More flexible than patches■ Refine to requiredlevel-of-detailDeRose984/18/0715Spatial subdivision■ Explicit representation of the interior of an object■ Uses ° visibility ° simplificationUniformUniform4/18/0716Distance fields■ Store the distance to the surface at each point° Good for collision detection° Can “implicitize” a b-rep4/18/0717Medial axis■ Compact■ Uses° Classification° Deformationhttp://www.fegs.co.uk/motech.html4/18/0718Metaballs■ Define potential field around each point■ Set a threshold for the surface■ Extract the surface for polygonal rendering° Marching cubeshttp://www.inf.ufrgs.br/~nedel/projects/vh.htmlhttp://www.corelmag.com4/18/0719Marching Cubes■ Extracts an isosurface from a regular grid■ Looks for sign changes between grid points and creates a surface between them4/18/0720Procedural modelling■ Advantages° Can be used to generate models that could never be generated by hand° Compact representations■ Disadvantages° Sometime hard to get exactly what you want(can be use to generate a starting point)4/18/0721L-Systems■ Simple rules used to produce complex structuresFrom The Algorithmic Beauty of Plants4/18/0722Plant ecosystems■ Combines simulation with user specified parametersMaps for controlling theplacement of nettleDeussen et al. 19984/18/0723Procedural Terrainshttp://www.pandromeda.com4/18/0724Procedural Terrains4/18/0725Procedural Terrainshttp://www.basinski-net.de/scapes6/pages/valley.htm4/18/0726Procedural cities■ User specified parameters:° water° elevation° population density■ L-systems generate roads■ Buildings added to city blocksParish and Müller 20014/18/0727Procedural citiesParish and Müller 20014/18/0728Procedural BuildingsMüller et al
View Full Document