Polygon Graphics
   HOME

TheInfoList



OR:

In
3D computer graphics 3D computer graphics, or “3D graphics,” sometimes called CGI, 3D-CGI or three-dimensional computer graphics are graphics that use a three-dimensional representation of geometric data (often Cartesian) that is stored in the computer for th ...
, polygonal modeling is an approach for modeling objects by representing or approximating their
surface A surface, as the term is most generally used, is the outermost or uppermost layer of a physical object or space. It is the portion or region of the object that can first be perceived by an observer using the senses of sight and touch, and is t ...
s using
polygon mesh In 3D computer graphics and solid modeling, a polygon mesh is a collection of , s and s that defines the shape of a polyhedral object. The faces usually consist of triangles (triangle mesh), quadrilaterals (quads), or other simple convex polyg ...
es. Polygonal modeling is well suited to
scanline rendering Scanline rendering (also scan line rendering and scan-line rendering) is an algorithm for visible surface determination, in 3D computer graphics, that works on a row-by-row basis rather than a polygon-by-polygon or pixel-by-pixel basis. All of t ...
and is therefore the method of choice for
real-time computer graphics Real-time computer graphics or real-time rendering is the sub-field of computer graphics focused on producing and analyzing images in real time. The term can refer to anything from rendering an application's graphical user interface (GUI) to ...
. Alternate methods of representing 3D objects include
NURBS Non-uniform rational basis spline (NURBS) is a mathematical model using basis splines (B-splines) that is commonly used in computer graphics for representing curves and surfaces. It offers great flexibility and precision for handling both analyt ...
surfaces,
subdivision surface In the field of 3D computer graphics, a subdivision surface (commonly shortened to SubD surface) is a curved surface represented by the specification of a coarser polygon mesh and produced by a recursive algorithmic method. The curved surface, t ...
s, and equation-based representations used in
ray tracers is an arcade-style auto racing and combat video game developed by Taito and released in Japan and Europe in 1997 and in North America in 1998 for the PlayStation console. It has been compared to Taito's own ''Chase H.Q.'' from 1988. Gameplay ...
.


Geometric theory and polygons

The basic object used in mesh modeling is a
vertex Vertex, vertices or vertexes may refer to: Science and technology Mathematics and computer science *Vertex (geometry), a point where two or more curves, lines, or edges meet *Vertex (computer graphics), a data structure that describes the position ...
, a point in three-dimensional space. Two vertices connected by a straight line become an
edge Edge or EDGE may refer to: Technology Computing * Edge computing, a network load-balancing system * Edge device, an entry point to a computer network * Adobe Edge, a graphical development application * Microsoft Edge, a web browser developed by ...
. Three vertices, connected to each other by three edges, define a
triangle A triangle is a polygon with three Edge (geometry), edges and three Vertex (geometry), vertices. It is one of the basic shapes in geometry. A triangle with vertices ''A'', ''B'', and ''C'' is denoted \triangle ABC. In Euclidean geometry, an ...
, which is the simplest
polygon In geometry, a polygon () is a plane figure that is described by a finite number of straight line segments connected to form a closed ''polygonal chain'' (or ''polygonal circuit''). The bounded plane region, the bounding circuit, or the two toge ...
in
Euclidean space Euclidean space is the fundamental space of geometry, intended to represent physical space. Originally, that is, in Euclid's Elements, Euclid's ''Elements'', it was the three-dimensional space of Euclidean geometry, but in modern mathematics ther ...
. More complex
polygons In geometry, a polygon () is a plane figure that is described by a finite number of straight line segments connected to form a closed ''polygonal chain'' (or ''polygonal circuit''). The bounded plane region, the bounding circuit, or the two toge ...
can be created out of multiple triangles, or as a single object with more than 3 vertices. Four sided polygons (generally referred to as quads) and triangles are the most common shapes used in polygonal modeling. A group of polygons, connected to each other by shared vertices, is generally referred to as an element. Each of the polygons making up an element is called a face. In
Euclidean geometry Euclidean geometry is a mathematical system attributed to ancient Greek mathematics, Greek mathematician Euclid, which he described in his textbook on geometry: the ''Euclid's Elements, Elements''. Euclid's approach consists in assuming a small ...
, any three non-collinear points determine a
plane Plane(s) most often refers to: * Aero- or airplane, a powered, fixed-wing aircraft * Plane (geometry), a flat, 2-dimensional surface Plane or planes may also refer to: Biology * Plane (tree) or ''Platanus'', wetland native plant * Planes (gen ...
. For this reason, triangles always inhabit a single plane. This is not necessarily true of more complex polygons, however. The flat nature of triangles makes it simple to determine their
surface normal In geometry, a normal is an object such as a line, ray, or vector that is perpendicular to a given object. For example, the normal line to a plane curve at a given point is the (infinite) line perpendicular to the tangent line to the curve at ...
, a three-dimensional vector perpendicular to the triangle's surface. Surface normals are useful for determining light transport in ray tracing, and are a key component of the popular
Phong shading In 3D computer graphics, Phong shading, Phong interpolation, or normal-vector interpolation shading is an interpolation technique for surface shading invented by computer graphics pioneer Bui Tuong Phong. Phong shading interpolates surface nor ...
model. Some rendering systems use
vertex normal In the geometry of computer graphics, a vertex normal at a vertex of a polyhedron is a directional vector associated with a vertex, intended as a replacement to the true geometric normal of the surface. Commonly, it is computed as the normalized ...
s instead of face normals to create a better-looking lighting system at the cost of more processing. Note that every triangle has two face normals, which point to opposite directions from each other. In many systems only one of these normals is considered valid – the other side of the polygon is referred to as a backface, and can be made visible or invisible depending on the programmer’s desires. Many
modeling program A model is an informative representation of an object, person or system. The term originally denoted the plans of a building in late 16th-century English, and derived via French and Italian ultimately from Latin ''modulus'', a measure. Models c ...
s do not strictly enforce geometric theory; for example, it is possible for two vertices to have two distinct edges connecting them, occupying exactly the same spatial location. It is also possible for two vertices to exist at the same spatial coordinates, or two faces to exist at the same location. Situations such as these are usually not desired and many packages support an auto-cleanup function. If auto-cleanup is not present, however, they must be deleted manually. A group of polygons which are connected by shared vertices is referred to as a mesh. In order for a mesh to appear attractive when rendered, it is desirable that it be non-self-intersecting, meaning that no edge passes through a polygon. Another way of looking at this is that the mesh cannot pierce itself. It is also desirable that the mesh not contain any errors such as doubled vertices, edges, or faces. For some purposes it is important that the mesh be a
manifold In mathematics, a manifold is a topological space that locally resembles Euclidean space near each point. More precisely, an n-dimensional manifold, or ''n-manifold'' for short, is a topological space with the property that each point has a n ...
– that is, that it does not contain holes or singularities (locations where two distinct sections of the mesh are connected by a single vertex).


Construction of polygonal meshes

Although it is possible to construct a mesh by manually specifying vertices and faces, it is much more common to build meshes using a variety of tools. A wide variety of
3D graphics software 3D computer graphics, or “3D graphics,” sometimes called CGI, 3D-CGI or three-dimensional computer graphics are graphics that use a three-dimensional representation of geometric data (often Cartesian) that is stored in the computer for the ...
packages are available for use in constructing polygon meshes. One of the more popular methods of constructing meshes is box modeling, which uses two simple tools: * The subdivide tool splits faces and edges into smaller pieces by adding new vertices. For example, a square would be subdivided by adding one vertex in the center and one on each edge, creating four smaller squares. * The extrude tool is applied to a face or a group of faces. It creates a new face of the same size and shape which is connected to each of the existing edges by a face. Thus, performing the extrude operation on a square face would create a cube connected to the surface at the location of the face. A second common modeling method is sometimes referred to as inflation modeling or extrusion modeling. In this method, the user creates a 2D shape which traces the outline of an object from a photograph or a drawing. The user then uses a second image of the subject from a different angle and extrudes the 2D shape into 3D, again following the shape’s outline. This method is especially common for creating faces and heads. In general, the artist will model half of the head and then duplicate the vertices, invert their location relative to some plane, and connect the two pieces together. This ensures that the model will be symmetrical. Another common method of creating a polygonal mesh is by connecting together various primitives, which are predefined polygonal meshes created by the modeling environment. Common primitives include: * Cubes * Pyramids * Cylinders * 2D primitives, such as squares, triangles, and disks * Specialized or esoteric primitives, such as the
Utah Teapot The Utah teapot, or the Newell teapot, is a 3D test model that has become a standard reference object and an in-joke within the computer graphics community. It is a mathematical model of an ordinary Melitta-brand teapot that appears solid ...
or Suzanne, Blender's monkey mascot. * Spheres - Spheres are commonly represented in one of two ways: **
Icosphere A geodesic polyhedron is a convex polyhedron made from triangles. They usually have icosahedral symmetry, such that they have 6 triangles at a vertex, except 12 vertices which have 5 triangles. They are the dual of corresponding Goldberg polyh ...
s are
icosahedron In geometry, an icosahedron ( or ) is a polyhedron with 20 faces. The name comes and . The plural can be either "icosahedra" () or "icosahedrons". There are infinitely many non- similar shapes of icosahedra, some of them being more symmetrica ...
s which possess a sufficient number of triangles to resemble a sphere. **
UV sphere UV mapping is the 3D modeling process of projecting a 3D model's surface to a 2D image for texture mapping. The letters "U" and "V" denote the axes of the 2D texture because "X", "Y", and "Z" are already used to denote the axes of the 3D object i ...
s are composed of quads, and resemble the grid seen on some globes - quads are larger near the "equator" of the sphere and smaller near the "poles," eventually terminating in a single vertex. Finally, some specialized methods of constructing high or low detail meshes exist.
Sketch based modeling {{Inline citations, date=April 2021 Sketch-based modeling is a method of creating 3D models for use in 3D computer graphics applications. Sketch-based modeling is differentiated from other types of 3D modeling by its interface - instead of creati ...
is a user-friendly interface for constructing low-detail models quickly, while
3D scanner 3D scanning is the process of analyzing a real-world object or environment to collect data on its shape and possibly its appearance (e.g. color). The collected data can then be used to construct digital 3D modelling, 3D models. A 3D scanner can ...
s can be used to create high detail meshes based on existing real-world objects in an almost automatic way. These devices are very expensive, and are generally only used by researchers and industry professionals but can generate high accuracy sub-millimetric digital representations.


Operations

There are a very large number of operations which may be performed on polygonal meshes. Some of these roughly correspond to real-world manipulations of 3D objects, while others do not. Polygonal mesh operations include: * Creations - Create new geometry from some other mathematical object ** ''Loft'' - Generate a mesh by creating a shape along two or more profile curves ** Extrude - Creates a surface by sweeping a profile curve or polygon surface along a straight or linear line ** Revolve - Generate a mesh by revolving (rotating) a shape around an axis ** Marching cubes - Algorithm to construct a mesh from an
implicit function In mathematics, an implicit equation is a relation of the form R(x_1, \dots, x_n) = 0, where is a function of several variables (often a polynomial). For example, the implicit equation of the unit circle is x^2 + y^2 - 1 = 0. An implicit functi ...
* Binary Creations - Create a new mesh from a binary operation of two other meshes ** Add - Boolean addition of two or more meshes ** Subtract - Boolean subtraction of two or more meshes ** Intersect - Boolean intersection ** Union - Boolean union of two or more meshes ** Attach - Attach one mesh to another (removing the interior surfaces) ** Chamfer - Create a beveled surface which smoothly connects two surfaces * Deformations - Move only the vertices of a mesh ** Deform - Systematically move vertices (according to certain functions or rules) ** Weighted Deform - Move vertices based on localized weights per vertex ** Morph - Move vertices smoothly between a source and target mesh ** Bend - Move vertices to "bend" the object ** Twist - Move vertices to "twist" the object * Manipulations - Modify the geometry of the mesh, but not necessarily topology ** Displace - Introduce additional geometry based on a "displacement map" from the surface ** Simplify - Systematically remove and average vertices ** Subdivide - Introduce new vertices into a mesh by subdividing each face. In the case of, for instance, Catmull-Clark, subdivision can also have a smoothing effect on the meshes it is applied to. **
Convex Hull In geometry, the convex hull or convex envelope or convex closure of a shape is the smallest convex set that contains it. The convex hull may be defined either as the intersection of all convex sets containing a given subset of a Euclidean space ...
- Generate a convex mesh which minimally encloses a given mesh ** Cut - Create a hole in a mesh surface ** Stitch - Close a hole in a mesh surface * Measurements - Compute some value of the mesh **
Volume Volume is a measure of occupied three-dimensional space. It is often quantified numerically using SI derived units (such as the cubic metre and litre) or by various imperial or US customary units (such as the gallon, quart, cubic inch). The de ...
- Compute the 3D volume of a mesh (discrete volumetric integral) **
Surface Area The surface area of a solid object is a measure of the total area that the surface of the object occupies. The mathematical definition of surface area in the presence of curved surfaces is considerably more involved than the definition of arc ...
- Compute the surface area of a mesh (discrete surface integral) ** Collision Detection - Determine if two complex meshes in motion have collided ** Fitting - Construct a parametric surface (NURBS, bicubic spline) by fitting it to a given mesh ** Point-Surface Distance - Compute distance from a point to the mesh ** Line-Surface Distance - Compute distance from a line to the mesh ** Line-Surface Intersection - Compute intersection of line and the mesh ** Cross Section - Compute the curves created by a cross-section of a plane through a mesh **
Centroid In mathematics and physics, the centroid, also known as geometric center or center of figure, of a plane figure or solid figure is the arithmetic mean position of all the points in the surface of the figure. The same definition extends to any ob ...
- Compute the centroid, geometric center, of the mesh ** Center-of-Mass - Compute the center of mass, balance point, of the mesh **
Circumcenter In geometry, the circumscribed circle or circumcircle of a polygon is a circle that passes through all the vertices of the polygon. The center of this circle is called the circumcenter and its radius is called the circumradius. Not every polyg ...
- Compute the center of a circle or sphere enclosing an element of the mesh **
Incenter In geometry, the incenter of a triangle is a triangle center, a point defined for any triangle in a way that is independent of the triangle's placement or scale. The incenter may be equivalently defined as the point where the internal angle bisec ...
- Compute the center of a circle or sphere enclosed by an element of the mesh


Extensions

Once a polygonal mesh has been constructed, further steps must be taken before it is useful for games, animation, etc. The model must be
texture mapped Texture mapping is a method for mapping a texture on a computer-generated graphic. Texture here can be high frequency detail, surface texture, or color. History The original technique was pioneered by Edwin Catmull in 1974. Texture mapping ...
to add colors and texture to the surface and it must be given a skeleton for animation. Meshes can also be assigned weights and centers of gravity for use in
physical simulation Dynamical simulation, in computational physics, is the simulation of systems of objects that are free to move, usually in three dimensions according to Newton's laws of dynamics, or approximations thereof. Dynamical simulation is used in computer ...
. To display a model on a computer screen outside of the modeling environment, it is necessary to store that model in one of the
file format A file format is a standard way that information is encoded for storage in a computer file. It specifies how bits are used to encode information in a digital storage medium. File formats may be either proprietary or free. Some file formats ...
s listed below, and then use or write a program capable of loading from that format. The two main methods of displaying 3D polygon models are
OpenGL OpenGL (Open Graphics Library) is a cross-language, cross-platform application programming interface (API) for rendering 2D and 3D vector graphics. The API is typically used to interact with a graphics processing unit (GPU), to achieve hardwa ...
and
Direct3D Direct3D is a graphics application programming interface (API) for Microsoft Windows. Part of DirectX, Direct3D is used to render three-dimensional graphics in applications where performance is important, such as games. Direct3D uses hardware a ...
. Both of these methods can be used with or without a 3D accelerated
graphics card A graphics card (also called a video card, display card, graphics adapter, VGA card/VGA, video adapter, display adapter, or mistakenly GPU) is an expansion card which generates a feed of output images to a display device, such as a computer moni ...
.


Advantages and disadvantages

There are many disadvantages to representing an object using polygons. Polygons are incapable of accurately representing curved surfaces, so a large number of them must be used to approximate curves in a visually appealing manner. The use of complex models has a cost in lowered speed. In scanline conversion, each polygon must be converted and displayed, regardless of size, and there are frequently a large number of models on the screen at any given time. Often, programmers must use multiple models at varying levels of detail to represent the same object in order to cut down on the number of polygons being rendered. The main advantage of polygons is that they are faster than other representations. While a modern graphics card can show a highly detailed scene at a
frame rate Frame rate (expressed in or FPS) is the frequency (rate) at which consecutive images (frames) are captured or displayed. The term applies equally to film and video cameras, computer graphics, and motion capture systems. Frame rate may also be ca ...
of 60 frames per second or higher, surface modelers, the main way of displaying non-polygonal models, are incapable of achieving an interactive frame rate (10 frame/s or higher) with a similar amount of detail. With sprites, another alternative to polygons, every required pose must be created individually, while a single polygonal model can perform any movement if the appropriate motion data is applied, and can be viewed from any angle.


File formats

A variety of formats are available for storing 3D polygon data. The most popular are: * .3ds, .max, which is associated with
3D Studio Max Autodesk 3ds Max, formerly 3D Studio and 3D Studio Max, is a professional 3D computer graphics program for making 3D animations, models, games and images. It is developed and produced by Autodesk Media and Entertainment. It has modeling capabil ...
* .blend, which is associated with
Blender A blender (sometimes called a mixer or liquidiser in British English) is a kitchen appliance, kitchen and laboratory appliance used to mix, crush, purée or emulsion, emulsify food and other substances. A stationary blender consists of a blender ...
* .c4d associated with
Cinema 4D Cinema 4D is a 3D software suite developed by the German company Maxon. Overview As of R21, only one version of Cinema 4D is available. It replaces all previous variants, including BodyPaint 3D, and includes all features of the past 'Studio' ...
* .dae (
COLLADA COLLADA (for ''COLLA''borative ''D''esign ''A''ctivity) is an interchange file format for interactive 3D applications. It is managed by the nonprofit technology consortium, the Khronos Group, and has been adopted by ISO as a publicly available s ...
) * .
dxf AutoCAD DXF (Drawing Interchange Format, or Drawing Exchange Format) is a CAD data file format developed by Autodesk for enabling data interoperability between AutoCAD and other programs. DXF was introduced in December 1982 as part of AutoCA ...
, .dwg, .dwf, associated with
AutoCAD AutoCAD is a commercial computer-aided design (CAD) and drafting software application. Developed and marketed by Autodesk, AutoCAD was first released in December 1982 as a desktop app running on microcomputers with internal graphics controllers. ...
* .fbx (Autodesk former. Kaydara Filmbox) * .jt originally developed by
Siemens Digital Industries Software Siemens Digital Industries Software (formerly UGS and then Siemens PLM Software) is an American computer software company specializing in 3D & 2D Product Lifecycle Management (PLM) software. The company is a business unit of Siemens, operates un ...
; now an
ISO ISO is the most common abbreviation for the International Organization for Standardization. ISO or Iso may also refer to: Business and finance * Iso (supermarket), a chain of Danish supermarkets incorporated into the SuperBest chain in 2007 * Iso ...
standard. * .lwo, which is associated with
Lightwave LightWave 3D is a 3D computer graphics program developed by NewTek. It has been used in films, television, motion graphics, digital matte painting, visual effects, video game development, product design, architectural visualizations, virtual ...
* .lxo, which is associated with MODO * .mb and .ma, which are associated with
Maya Maya may refer to: Civilizations * Maya peoples, of southern Mexico and northern Central America ** Maya civilization, the historical civilization of the Maya peoples ** Maya language, the languages of the Maya peoples * Maya (Ethiopia), a populat ...
* .md2, .md3, associated with the Quake series of games * .mdl used with
Valve A valve is a device or natural object that regulates, directs or controls the flow of a fluid (gases, liquids, fluidized solids, or slurries) by opening, closing, or partially obstructing various passageways. Valves are technically fittings ...
's
Source Engine Source is a 3D game engine developed by Valve. It debuted as the successor to GoldSrc in 2004 with the release of '' Counter-Strike: Source'' and '' Half-Life 2''. Updates to Source were released in incremental versions, with the engine being su ...
* .nif (
NetImmerse Gamebryo (; ; formerly NetImmerse until 2003) is a game engine developed by Gamebase Co., Ltd. and Gamebase USA, that incorporates a set of tools and plugins including run-time libraries, supporting video game developers for numerous cross ...
/
gamebryo Gamebryo (; ; formerly NetImmerse until 2003) is a game engine developed by Gamebase Co., Ltd. and Gamebase USA, that incorporates a set of tools and plugins including run-time libraries, supporting video game developers for numerous cross-pl ...
) * .obj (Wavefront's "The Advanced Visualizer") * .ply used to store data from
3D scanner 3D scanning is the process of analyzing a real-world object or environment to collect data on its shape and possibly its appearance (e.g. color). The collected data can then be used to construct digital 3D modelling, 3D models. A 3D scanner can ...
s * .rwx (Renderware) * .stl used in
rapid prototyping Rapid prototyping is a group of techniques used to quickly fabricate a scale model of a physical part or assembly using three-dimensional computer aided design (CAD) data. Construction of the part or assembly is usually done using 3D printin ...
* .u3d (
Universal 3D Universal 3D (U3D) is a compressed file format standard for 3D computer graphics data. The format was defined by a special consortium called ''3D Industry Forum'' that brought together a diverse group of companies and organizations, including ...
) * .wrl (VRML 2.0)


See also

*
Finite element method The finite element method (FEM) is a popular method for numerically solving differential equations arising in engineering and mathematical modeling. Typical problem areas of interest include the traditional fields of structural analysis, heat ...
*
Mesh generation Mesh generation is the practice of creating a mesh, a subdivision of a continuous geometric space into discrete geometric and topological cells. Often these cells form a simplicial complex. Usually the cells partition the geometric input domain ...
*
Polygon (computer graphics) Polygons are used in computer graphics to compose images that are three-dimensional in appearance. Usually (but not always) triangular, polygons arise when an object's surface is modeled, vertices are selected, and the object is rendered in a ...
*
Polygon mesh In 3D computer graphics and solid modeling, a polygon mesh is a collection of , s and s that defines the shape of a polyhedral object. The faces usually consist of triangles (triangle mesh), quadrilaterals (quads), or other simple convex polyg ...
*
Vector graphics Vector graphics is a form of computer graphics in which visual images are created directly from geometric shapes defined on a Cartesian plane, such as points, lines, curves and polygons. The associated mechanisms may include vector display a ...
*
Geometry processing Geometry processing, or mesh processing, is an area of research that uses concepts from applied mathematics, computer science and engineering to design efficient algorithms for the acquisition, reconstruction, analysis, manipulation, simulation a ...
*
3D modeling In 3D computer graphics, 3D modeling is the process of developing a mathematical coordinate-based representation of any surface of an object (inanimate or living) in three dimensions via specialized software by manipulating edges, vertices, an ...


References


Bibliography

# OpenGL SuperBible (3rd ed.), by Richard S Wright and Benjamin Lipchak # OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 1.4, Fourth Edition by OpenGL Architecture Review Board # OpenGL(R) Reference Manual : The Official Reference Document to OpenGL, Version 1.4 (4th Edition) by OpenGL Architecture Review Board # Blender documentation: https://web.archive.org/web/20051212074804/http://blender.org/cms/Documentation.628.0.html # Maya documentation: packaged with Alias Maya, http://www.alias.com/eng/index.shtml {{DEFAULTSORT:Polygonal Modeling 3D computer graphics