Posts Tagged ‘graphics’

3D Model

Wednesday, August 6th, 2008

In 3D computer graphics, 3D modeling is the process of developing a mathematical, wireframe representation of any three-dimensional object (either inanimate or living) via specialized software.  The product is called a 3D model.  It can be displayed as a two-dimensional image through a process called 3D rendering or used in a computer simulation of physical phenomena. The model can also be physically created using 3D Printing devices.

 

3D Models may be created automatically or manually.  The manual modeling process of preparing geometric data for 3D computer graphics is similar to plastic arts such as sculpting.

 

3D Models represent a 3D object using a collection of points in 3D space, connected by various geometric entities such as triangles, lines, curved surfaces, etc.  Being a collection of data (points and other information), 3D models can be created by hand, algorithmically (procedural modeling), or scanned.

 

3D models are widely used where 3D graphics are used.  Actually, their use predates the widespread use of 3D graphics on personal computers.  Many computer games used pre-rendered images of 3D models as sprites before computers could render them in real-time.

 

Today, 3D models are used in a wide variety of fields.  The medical industry uses detailed models of organs.  The movie industry uses them as characters and objects for animated and real-life motion pictures.  The video game industry uses them as assets for computer and video games. The science sector uses them as highly detailed models of chemical compounds.  The architecture industry uses them to demonstrate proposed buildings and landscapes.  The engineering community uses them as designs of new devices, vehicles and structures as well as a host of other uses.  In recent decades, the earth science community has started to construct 3D geological models as a standard practice.

 

The Utah teapot model developed by Martin Newell (1975) is one of the most common models used in 3D graphics education.

 

Almost all 3D models can be divided into two categories.

 

Solid – These models define the volume of the object they represent (like a rock).  These are more realistic, but more difficult to build.  Solid models are mostly used for non-visual simulations such as medical and engineering simulations, and for specialized visual applications such as ray tracing and constructive solid geometry.

 

Shell – These models represent the surface, not the volume (like an eggshell).  These are easier to work with than solid models.  Almost all visual models used in games and film are shell models.

 

Because the appearance of an object depends largely on the exterior of the object, boundary representations are common in computer graphics.  Two dimensional surfaces are a good analogy for the objects used in graphics, though quite often these objects are non-manifold. Since surfaces are not finite, a discrete digital approximation is required: polygonal meshes (and to a lesser extent subdivision surfaces) are by far the most common representation, although point-based representations have been gaining some popularity in recent years.  Level sets are a useful representation for deforming surfaces, which undergo many topological changes such as fluids.

 

The process of transforming representations of objects, such as the middle point coordinate of a sphere and a point on its circumference into a polygon representation of a sphere is called tessellation.  This step is used in polygon-based rendering where objects are broken down from abstract representations (”primitives”) such as spheres, cones etc., to so-called meshes, which are nets of interconnected triangles.  Meshes of triangles (instead of e.g. squares) are popular as they have proven to be easy to render using scan line rendering.  Polygon representations are not used in all rendering techniques, and in these cases the tessellation step is not included in the transition from abstract representation to rendered scene.

 

Modeling processes

 

There are three popular methods to develop a model:

 

Polygonal modeling – Points in 3D space called vertices, are connected in a linear fashion to form a polygonal mesh, used for example by 3DS Max.  The vast majority of 3D models today are built as textured polygonal models, because they are the most flexible and quickest for the computer to handle.  However, polygons cannot be bent.  Curved surfaces are approximated by using many small flat surfaces.

 

NURBS modeling – NURBS Surfaces are defined by Spline curves, which are influenced by weighted control points.  The curve follows (but does not necessarily interpolate) the points. Increasing the weight for a point will pull the curve closer to that point.  NURBS are truly smooth surfaces, not approximations using small flat surfaces, and so are particularly suitable for organic modeling.  Maya is the most well-known commercial software that uses NURBS natively.

 

Splines & Patches modeling – Like NURBS, Splines and Patches depend on curved lines to define the visible surface.  Patches fall somewhere between NURBS and polygons in terms of flexibility and ease of use.

 

Modeling can be performed by means of a dedicated program (e.g., Maya, 3DS Max, Blender, Lightwave, Modo) or an application component (Shaper, Lofter in 3DS Max) or some scene description language (as in POV-Ray).  In some cases, there is no strict distinction between these phases; in such cases modeling is just part of the scene creation process (this is the case, for example, with Caligari trueSpace and Realsoft 3D).