Jump to content

Computer graphics (computer science)

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Alanbly (talk | contribs) at 18:25, 18 March 2007 (Fixed intent of removed sentence). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Computer graphics is a sub-field of computer science and is concerned with digitally synthesizing and manipulating visual content. Although the term often refers to three-dimensional computer graphics, it also encompasses two-dimensional graphics and image processing. Computer graphics is often differentiated from the field of visualization, although the two have many similarities.

Some major subproblems in computer graphics include:

  1. describing the shape of an object (modeling)
  2. describing the motion of an object (animation)
  3. creating an image of an object (rendering)


The Utah teapot

Modeling

Modeling describes the shape of an object. The two most common sources of 3D models are those created by an artist or engineer using some kind of 3D modeling tool, and those scanned into a computer from real-world objects. Models can also be produced procedurally or via physical simulation.

Because the appearance of an object depends largely on the exterior of the object, boundary representations are most 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.

Subfields

  • Constructive solid geometry - Process by which complicated objects are modelled with implicit goemetric ojects and boolean operations
  • Discrete differential geometry - a recent field which defines geometric quantities for the discrete surfaces used in computer graphics.
  • Geometric processing - surface reconstruction and several mesh operations (simplification, repair, parameterization, remeshing, generation, compression, and editing) all fall under this heading.
  • Point-based graphics - a recent field which focuses on points as the fundamental representation of surfaces.
  • Simulation (e.g. cloth modeling, animation of fluid dynamics, etc.)
  • Subdivision surfaces

Animation

Animation refers to the temporal description of an object, i.e., how it moves and deforms over time. Popular methods include keyframing, inverse kinematics, and motion capture, though many of these techniques are used in conjunction with each-other. As with modeling, physical simulation is another way of specifying motion.

Rendering

Rendering converts a model into an image either by simulating light transport to get physically-based photorealistic images, or by applying some kind of style as in non-photorealistic rendering. The two basic operations in realistic rendering are transport (how much light gets from one place to another) and scattering (how surfaces interact with light). See Rendering (computer graphics) for more information.

Transport

Transport describes how illumination in a scene gets from one place to another. Visibility is a major component of light transport.

Scattering

Models of scattering and shading are used to describe the appearance of a surface. Although these issues may seem like a problems all on their own, they are studied almost exclusively within the context of rendering. Shading can be broken down into two orthogonal issues, which are often studied independently:

  1. scattering - how light interacts with the surface at a given point
  2. shading - how material properties vary across the surface

The former problem refers to scattering, i.e., the relationship between incoming and outgoing illumination at a given point. Descriptions of scattering are usually given in terms of a bidirectional scattering distribution function or BSDF. The latter issue addresses how different types of scattering are distributed across the surface (i.e., which scattering function applies where). Descriptions of this kind are typically expressed with a program called a shader. (Note that there is some confusion since the word "shader" is sometimes used for programs that describe local geometric variation.)

A simple example of shading is texture mapping, which uses an image to specify the diffuse color at each point on a surface, giving it more apparent detail.

Other Subfields

History

William Fetter was credited with coining the term Computer Graphics in 1960, to describe his work at Boeing. One of the first displays of computer animation was Futureworld (1976), which included an animation of a human face and hand — produced by Ed Catmull and Fred Parke at the University of Utah.

There are several international conferences and journals where the most significant results in computer graphics are published. Among them are the SIGGRAPH and Eurographics conferences and the ACM Transactions on Graphics journal. The joint Eurographics and ACM SIGGRAPH symposium series features the major venues for the more specialized sub-fields: Symposium on Geometry Processing [1], Symposium on Rendering, and Symposium on Computer Animation.

An extensive history of computer graphics can be found at [2].

Applications

Connected Studies

See also

Numerous sub-areas of computer graphics can be found in Category:3D computer graphics.