DOC PREVIEW
UW-Madison CS 559 - Modeling

This preview shows page 1-2-15-16-17-32-33 out of 33 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 33 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 33 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 33 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 33 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 33 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 33 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 33 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 33 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Last TimeToday: ModelingModeling OverviewIssues in ModelingChoosing a RepresentationCategorizing Modeling TechniquesTechniques We Will ExaminePolygon ModelingPolygons DominateWhat’s Bad About Polygons?Polygons Aren’t GreatProperties of Polygon MeshesPolygonal Data StructuresPolygon SoupPolygon Soup EvaluationSlide 16Vertex IndirectionIndirection EvaluationOpenGL and Vertex IndirectionOpenGL and Vertex Indirection (v1)OpenGL and Vertex Indirection (v2)Yet More VariantsNormal VectorsA CubeComputing Normal VectorsStoring Other InformationIndexed Lists vs. PointersVertex PointersMeshes from ScanningScanning in ActionLevel Of DetailLevel of DetailProblems with Polygons04/09/02 (c) University of Wisconsin, CS559Last Time•Texturing in OpenGL•Texturing Options•Project 2 is now available. Start as soon as you can.•Homework 5 is delayed04/09/02 (c) University of Wisconsin, CS559Today: Modeling•So far in class:–We’ve looked at images and image manipulation–We’ve looked at rendering from polygons•Next major section:–Modeling04/09/02 (c) University of Wisconsin, CS559Modeling Overview•Modeling is the process of describing an object•Sometimes the description is an end in itself–eg: Computer aided design (CAD), Computer Aided Manufacturing (CAM)–The model is an exact description•More typically in graphics, the model is then used for rendering (we will work on this assumption)–The model only exists to produce a picture–It can be an approximation, as long as the visual result is good•The computer graphics motto: “If it looks right it is right”–Doesn’t work for CAD04/09/02 (c) University of Wisconsin, CS559Issues in Modeling•There are many ways to represent the shape of an object•What are some things to think about when choosing a representation?04/09/02 (c) University of Wisconsin, CS559Choosing a Representation•How well does it represents the objects of interest?•How easy is it to render (or convert to polygons)?•How compact is it (how cheap to store and transmit)?•How easy is it to create?–By hand, procedurally, by fitting to measurements, …•How easy is it to interact with?–Modifying it, animating it•How easy is it to perform geometric computations?–Distance, intersection, normal vectors, curvature, …04/09/02 (c) University of Wisconsin, CS559Categorizing Modeling Techniques•Surface vs. Volume–Sometimes we only care about the surface•Rendering and geometric computations–Sometimes we want to know about the volume•Medical data with information attached to the space•Some representations are best thought of defining the space filled, rather than the surface around the space•Parametric vs. Implicit–Parametric generates all the points on a surface (volume) by “plugging in a parameter” eg (sin cos, sin sin, cos)–Implicit models tell you if a point in on (in) the surface (volume) eg x2 + y2 + z2- 1 = 004/09/02 (c) University of Wisconsin, CS559Techniques We Will Examine•Polygon meshes–Surface representation, Parametric representation•Prototype instancing and hierarchical modeling–Surface or Volume, Parametric•Volume enumeration schemes–Volume, Parametric or Implicit•Parametric curves and surfaces–Surface, Parametric•Subdivision curves and surfaces•Procedural models04/09/02 (c) University of Wisconsin, CS559Polygon Modeling•Polygons are the dominant force in modeling for real-time graphics•Why?04/09/02 (c) University of Wisconsin, CS559Polygons Dominate•Everything can be turned into polygons (almost everything)•We know how to render polygons quickly•Many operations are easy to do with polygons•Memory and disk space is cheap•Simplicity and inertia04/09/02 (c) University of Wisconsin, CS559What’s Bad About Polygons?•What are some disadvantages of polygonal representations?04/09/02 (c) University of Wisconsin, CS559Polygons Aren’t Great•They are always an approximation to curved surfaces–But can be as good as you want, if you are willing to pay in size–Normal vectors are approximate–They throw away information–Most real-world surfaces are curved, particularly natural surfaces•They can be very unstructured•It is difficult to perform many geometric operations–Results can be unduly complex, for instance04/09/02 (c) University of Wisconsin, CS559Properties of Polygon Meshes•Convex/Concave–Convexity makes many operations easier:•Clipping, intersection, collision detection, rendering, volume computations, …•Closed/Open–Closed if the polygons as a group contain a closed space•Can’t have “dangling edges” or “dangling faces”•Every edge lies between two faces–Closed also referred to as watertight•Simple–Faces intersect each other only at edges and vertices–Edges only intersect at vertices04/09/02 (c) University of Wisconsin, CS559Polygonal Data Structures•There are many ways to store a model made up of polygons–Choice affects ease of particular operations–There is no one best way of doing things, so choice depends on application•There are typically three components to a polygonal model:–The location of the vertices–The connectivity - which vertices make up which faces–Associated data: normals, texture coordinates, plane equations, …•Typically associated with either faces or vertices04/09/02 (c) University of Wisconsin, CS559Polygon Soupstruct Vertex {float coords[3];}struct Triangle {struct Vertex verts[3];}struct Triangle mesh[n];glBegin(GL_TRIANGLES)for ( i = 0 ; i < n ; i++ ){glVertex3fv(mesh[i].verts[0]);glVertex3fv(mesh[i].verts[1]);glVertex3fv(mesh[i].verts[2]);}glEnd();Important Point: OpenGL, and almost everything else, assumes a constant vertex ordering: clockwise or counter-clockwise. Default, and slightly more standard, is counter-clockwise•Many polygon models are just lists of polygons04/09/02 (c) University of Wisconsin, CS559Polygon Soup Evaluation•What are the advantages? •What are the disadvantages?04/09/02 (c) University of Wisconsin, CS559Polygon Soup Evaluation•What are the advantages? –It’s very simple to read, write, transmit, etc.–A common output format from CAD modelers–The format required for OpenGL•BIG disadvantage: No higher order information–No information about neighbors–No open/closed information–No guarantees on degeneracies04/09/02 (c) University of Wisconsin, CS559Vertex Indirection•There are reasons not to store the vertices explicitly at


View Full Document

UW-Madison CS 559 - Modeling

Documents in this Course
Filters

Filters

14 pages

Lecture 2

Lecture 2

24 pages

Clipping

Clipping

22 pages

Filters

Filters

26 pages

Dithering

Dithering

33 pages

Lecture 4

Lecture 4

20 pages

Load more
Download Modeling
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Modeling and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Modeling 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?