<<

3D Ob ject Mo deling

 y

Norman I. Badler Andrew S. Glassner

1 What is 3D mo deling?

Every computer-rendered image requires three essential comp onents: a 3D scene

description, one or more sources of light, and a description of the camera or eye

viewing the scene. The scene description is typically comp osed of one or more

models, or 3D structures. Typically we think of a model as a stand-alone part,

e.g. a p encil or a tree, and the scene as the assembly of these parts into a

complete 3D environment. This attitude re ects the most common pro cedure

for building up a 3D scene: one builds many mo dels, and then assembles them.

Each mo del contains two descriptions: a mathematical representation of the

structure of the shap e, and a recip e for guring out how that shap e would lo ok

if illuminated. Let us examine these descriptions in turn.

1.1 Mo del Structure

The structural description is basically one of geometry. It tells us where the

ob ject is in space, and where it is not. Imagine an empty co ee mug hovering in

space in frontofyou. Now freeze time and lo ok at every molecule in the ro om:

generally each molecule will b e part of the material of the mug or part of the

air around the mug note that the air molecules inside the mug where the co ee

would go are not part of the mug itself; they're part of the air around it. If you

paintevery air molecule white and every mug molecule black, then you'll have

avery ne description of the mug down to the precision of the molecules in the

ro om.

The result of this thought exp eriment has many of the prop erties of 3D

mo dels used in computer : it's conceptually straightforward if bulky,

and has a limited precision most computer programs use the built-in calcula-

tion hardware in to day's computers; this hardware has very high but limited

precision. Some mo deling metho ds are very close to this approach; they create

p oints in space or chop up space very nely and lab el it empty or full. Other



Computer and Information Science Department, UniversityofPennsylvania, Philadelphia,

PA 19104 USA

y

Microsoft Research, One Microsoft Way, Redmond, WA 98052 1

metho ds attempt to let you describ e your mo del more abstractly, saying for

example that your mug is basically a thick cylinder with a b ottom and rounded

lip.

1.2 Mo del App earance

The other part of every mo del is the description. This b oils down to

describing the physics of how the surface of the mo del interacts with light.

Happily, it turns out that these physics are driven by a few descriptive terms

that haveintuitive meaning for us, such as color, shininess, and transparency.

Thus you could say that your co ee mug is shiny and blue, and go a long way

towards describing its app earance.

Since mo dels often simulate real world shap es, wehave to decide how detailed

we want to be. When describing the co ee mug's geometry, do we want to

include every little bump in the ceramic and the irregularities in the overall

shap e, or is a mathematically p erfect cylinder close enough? When describing

its app earance, do wewant to include the little scratches in the glaze, or is it

enough to say that it is just uniformly shiny? The answers to these questions

dep end on howyou intend to use the mo del. If it's going to b e sitting on the

shelf in the background of some scene, p o orly lit and barely visible, then a blue

cylinder might do the trick. But if the mug is the star of your image, front and

center, large and well-lit, then you will probably want more detail.

2 Mo dels: Images and Simulations

There are two principle reasons for building 3D mo dels on the computer: image-

making and simulation. These two pro cedures are very similar, but they typi-

cally have di erent goals.

Image-making requires mo dels that look good. They need to b e suciently

complex that they aren't b oring to the eye, and suciently realistic when that's

the goal to pass convincingly as a good description of the real shap e. The

ultimate arbiter of the mo del's quality is the p erson who lo oks at the picture.

Simulation requires mo dels that are accurate. Some simulations test two

mo dels mathematically to see if they t together within some tolerance; the

result is simply a yes or no answer, rather than an image. Consider a simulation

that tests the strength of the ro of of a new stadium under conditions of heavy

rain: it's critical that the simulated ro of have exactly the intended shap e in

order to determine howmuch rain will roll o the sides. An airplane wing also

must b e mo deled with high accuracy if we exp ect to learn anything meaningful

ab out its lift characteristics when actually actually built.

Some mo dels are the result of a simulation: given a computer-controlled drill,

a blo ckofwo o d, and a program for the drill, what is the shap e of the resulting

part? Here we only supply the initial mo del, and the computer mo di es the 2

mo del for us. Wemaybeasinterested in the surface nish of the nal piece as

its geometry. A hole might b e round, for example, but wewould like to b e sure

that it is smo oth.

These two applications have spawned two rather di erentways of describing

mo dels. One is interactive and approximate, appropriate for making mo dels

that just need to lo ok good. The other is slower and precise, appropriate for

mo dels that must b e accurate. Of course, there's a huge overlap b etween these

di erent systems, since many mo dels used for images need to b e very precise,

and sometimes simulations just need something close as a starting p oint or

stand-in for a more complex shap e.

3 Detail: How Much?

Details add interest. The amount of detail in a mo del can make the di erence

between a b oring and fake image, or one that is interesting and realistic. For

simulation, details can make the di erence between getting an answer that is

right or wrong.

3.1 Visual Detail

Early images used very simple mo dels: a table was a long

box, made up of six p erfectly at, p erfectly smo oth, p erfectly colored sides. Real

tables are much more interesting b ecause they have details. They have struc-

tural detail, and app earance detail also called texture. Lo ok at any man-made

or natural 3D ob ject, and you'll see a wealth of shap e detail and app earance

detail: nothing is p erfectly at, smo oth, or featureless.

To makeinteresting and b elievable images, we need mo dels that have enough

richness that they b egin to match the complexity of the real world idealized

forms are useful for art and education, but even there complexity can help

you get your p oint across. The complexityof what seem to be simple forms

can be staggering: lo ok closely at the coiled line running from a telephone

handset to the base. The wires followavery complicated path, the gaps b etween

coils increase and decrease, the coils themselves lo op around and through each

other. The nish on the wire isn't consistent either: there are scratches and

discolorations all along its length, sometimes in random places and sometimes

in organized chunks like where the cord got caught and scrap ed in a do orway

one day. It's this kind of detail that makes a mo del interesting, and creating

this detail is one of the principle challenges to anyone who makes mo dels.

In general, more detail in the geometry and the app earance is always b etter.

But there are twocaveats to this principle: more detail takes you the designer

more time to create, and it takes the computer the renderer more time to

pro cess. In the previous example, a very detailed mug sitting in a dark corner

will just slowdown your picture-making and add nothing. The situations that 3

cause the most trouble o ccur in , when a shap e starts out far away

and barely visible, and later comes to o ccupy much of the image such as a

baseball hurtling towards the camera.

3.2 Simulation Detail

If you're building a mo del of a stapler and you want to make sure that the

staples will be delivered correctly,it will be imp ortant to b e very accurate in

your mo del of the little hollow depression in the base where the staple folds.

But if you only want to make sure that a pile of pap er 30 pages thick will t

in the op ening between the head and the base, the exact shap e of the hollow

won't matter. Finding the right level of detail is a matter of matching purp ose

to e ort.

4 Mo deling Software

There are several typ es of programs available to help you create 3D mo dels.

These programs are usually referred to as modelers. The p erson using the pro-

gram is also sometimes referred to as the mo deler, but that can be confusing

and dehumanizing. It seems more p ersonal to think of the p erson as the

designer this is also more meaningful than the generic and uncomplementary

user.

One idea that is common to most mo delers is that the designer can create a

copy of some basic form suchasablock or patch, and then mo dify it to create

part of the mo del. The basic forms are called the primitives for that mo deler,

and each copyofisaninstance of that primitive. So a blo cky rob ot made of 20

rectangular blo cks contains 20 instances of the primordial blo ck. This approach

is reminiscent of Plato's notion of ideal forms; the prototyp e shap e is the ideal,

and instances are practical realizations of that ideal.

4.1 Interactive Mo delers

One class of mo deler is interactive. Typically the designer sits in front of a termi-

nal with a keyb oard and mouse, and manipulates shap es on the screen. Because

the image is only two-dimensional, di erent systems have di erent conventions

to allowyou to manipulate ob jects in 3D.

Interactive mo delers typically contain a variety of design aids to help you

achieve some precision in your mo del: a common example is to \snap" p oints

on the mo del to other mo del p oints or to an invisible grid.

Mo dels are built byinteractively selecting, creating, mo difying, and assem-

bling instances of primitives. The shap es typically have \handles" that allow

you to control the shap e. Handles may come in the form of p oints, curves, or

interactive to ols. 4

Often one determines the surface characteristics when the shap e is rst cre-

ated, but then textures may b e laid on the surface to mo dify it.

4.2 Scripted Mo delers

Another class of mo deler is relies on an input script to de ne the mo del. This is

typically a text le that has b een created by the designer using any conventional

text editor. The script sp eci es the shap es in the mo del one by one, identifying

each one by its primitive, and the parameters that sp ecify that instance.

Because scripted mo delers allowyou to sp ecify op erations numerically rather

than interactively, they are ideal for very precise mo deling. For example, it



might b e dicult to interactively place one blo ckata37:5 angle to another,

but it's trivial to sp ecify when you can typ e that angle in.

4.3 Other Mo delers

There are other ways to build mo dels, for example by digitizing existing 3D

structures, or by analyzing photographs. We will return to these techniques

near the end of this pap er.

5 How are mo dels used?

There are many uses for 3D mo dels. While there is an obvious desire to exp eri-

ence an ob ject visually { hence computer graphics { there are other imp ortant

motivations that form a larger and broader context for studying ob ject mo dels.

Some of these uses with examples for 3D mo dels are listed b elow. Note that

each one tends to emphasize either the visual or simulation asp ect of the mo del

as discussed earlier.

 To visualize designs: How do es a pro duct lo ok b efore it is manufactured?

What is the b est combination of shap e, color, layout, etc.?

 To assess app earance: How do es some existing environmentlookifchanges

are made to it? Do es it need more or less lighting? Are the vistas appro-

priate?

 To observe part relationships: How do things t together? What do es

an explo ded view lo ok like? Do parts touch or collide that should be

separated?

 To check feasibility of manufacture: Do es the ob ject meet the design

sp eci cations? Can it satisfy constraints on stress, loading, heat transfer,

etc.? Can it b e e ectively machined, cast, or sculpted? 5

 To determine cost, volume, area, machining time, etc.: Howmuch material

is needed? Howmuch material must b e removed by machining? What is

the cross-sectional shap e of various internal structures in a complicated

assembly?

 To determine faithfulness to physical phenomena: How do es the surface of

the ob ject interact with light? How do the surface prop erties smo othness,

roughness, waves, etc. dep end on the geometry of the ob ject? How close

in app earance to \reality" can we get?

 To exercise display algorithms: What limits mightwehave on the com-

putations over the ob ject mo dels? What determines graphical algorithm

complexity? What display algorithms are needed to create images of a

particular kind of mo del?

 To express artistic goals: What juxtap osition of the real and imaginary

ob jects will protray an artists' visual message and mo o d? Howmuch can

the imagination b e stretched to visualize arti cial worlds?

6 The ma jor issues

The ma jor issues involved in ob ject mo deling include the computational cost of

the mo del, its e ectiveness in mo deling the desired phenomena, its implementa-

tion complexity, and the metho ds used to acquire or create data that describ e

the ob ject geometry.

The computational cost of a mo del may be gauged in terms of computer

storage space, ob ject construction time, display time, or in application use. For

example, the storage space of a mo del may b e based on the space required to

store each primitive and the numb er of primitives needed to represent it. Thus

a is a relatively simple primitive; collections of grow linearly

with the numb er of spheres in the mo del. Polygon mo dels may require variable

length storage for an arbitrary sided p olygon, plus additional link structures

to organize a set of p olygons into a closed surface.

In ob ject construction time, the costs may based on where the data is and

how the data is captured. Clearly more automated data capture can favor one

ob ject mo del over another that requires considerable manual e ort. Once the

data de ning the mo del is available, variations from the original input should

b e p ossible to clean up noise intro duced by automated metho ds, vary shap e pa-

rameters obtaining similar but individual memb ers of an ob ject class, or simply

correct designer input errors.

Computer graphics has frequently fo cused on the algorithmic side of the

display task. There are costs asso ciated with the display algorithms used to

visualize eachtyp e of ob ject mo del. cost can be as lowas that

of simple linear traversal and wireframe display of p olyhedral ob jects, or as 6

costly and complex as ray-traced shaded renderings of algebraic surfaces. The

fundamental observation is that display cost is dep endent on the ob ject mo del;

computer graphics history is, in a large part, the study of pro cedures to displaya

particular class of ob ject mo dels. As in many other computer science algorithms,

one pays in time for increasing generality of function. Thus the cost of ray

tracing also entails the p ower to display a wide variety of ob ject mo del typ es;

at the other end of the sp ectrum, a simple depth bu er algorithm is highly

e ective for real-time display provided one is restricted to p olyhedral mo dels.

Finally, the display cost is also dep endent on image quality issues; for example,

high resolution or animated images will require b etter mo dels and usually more

detailed mo dels, visualization studies might require particular ob ject surface

prop erties for advanced lighting mo dels, etc.

Mo dels are used for other purp oses b esides display,however, and the relative

costs and complexity of these used must also be considered when selecting a

mo del typ e. Two common uses are the transformation of an ob ject in p osition,

size, or shap e, and the measurement of ob ject geometric prop erties such as

volume. These uses have costs asso ciated with the geometric algorithms but

the standard complexity measures must b e weighed against the exp ected use.

For example, the more ecient computational algorithm in the general case

mayhave constants which make it less satisfactory in the exp ected ma jorityof

cases: a mo del consisting of arbitrary p olygons will have less scan conversion

eciency than one comp osed entirely of triangles. Also, a frequently rep eated

algorithm should b e made more ecient than one used once. Thus a simpler

but theoretically costlier algorithm may be more ecient when multiplied by

exp ected use. When programmer time is factored in, the costs of a graphical

algorithm b ecome a complex mix of sp ecial case considerations, overall eciency,

and programmer eciency.

Certainly one imp ortant issue in ob ject mo deling is e ectiveness: whether

the mo del actually represents the desired phenomena and provides computa-

tional analogs of the appropriate visual or physical prop erties. Poor visual

quality may be though is not identical to poor mo deling. Thus the visual

e ectiveness of a stick gure of a human is compromised by the zero thickness

mo del of body segments. On the other hand, a fractal mo del of a mountain

may not tell us anything ab out the formation pro cess of real mountains, but

the visual e ect and the statistical prop erties of the resulting surface maybe

quite convincing.

The complexity of a mo del may be judged b etter as a trade-o between

the numb er of primitives and the inherent complexity without b eing circular

in reasoning of the individual primitives. Thus at one end of the scale are

ob jects which can be characterized as a multiplicity of simple forms; at the

other end are ob jects which seem inherently complex. For example, machine

parts, buildings, and other man-made ob jects seem to b e mostly a multiplicityof

simple forms, while biological and other natural structures mountains, textures

are inherently complex. 7

Often ob ject data will b e available naturally in one form yet needed in an-

other. This requires conversion from one form to another. The input maybe

formatted by an available input device digitizer, laser scanner, tomographic

images, manual drawing input, etc., but the requirements of the application

may dictate conversion to another form for more convenient display or com-

putation. For example, surface p oint data maybe approximated by p olygons

or curved surfaces to p ermit visual surface rendering in workstation hardware;

constructive mo dels might be converted to for volume

computation.

7 Mo dels and Rendering

It is imp ortant to understand the di erence between mo dels and rendering.

Mo dels describ e the ob ject and its attributes such as shap e or geometry, color,

re ectivity, transmittance, surface smo othness, and texture. Shade trees maybe

used to ascrib e di erent visualization algorithms to di erent parts of a mo del.

But it is the rendering algorithm itself which transforms the mo del to a screen-

based view from a given camera p osition, pro jects the 3D data into display

co ordinates, determines the visible p ortions of the scene, and converts the ob ject

prop erties into pixel values in the context of light sources, atmospheric e ects,

anti-aliasing, image comp ositing, and color mo dels.

8 Op erations on mo dels

We will ignore most of the rendering issues as they are discussed elsewhere in this

Tutorial. We pro ceed to discuss the op erations appropriate to ob ject mo dels.

These include transformations, change of detail, measurement, combination,

deformation, and display.

Transformations form the basis of most mo deling systems. These include the

well-known geometric transformations of translation, rotation, dilation scaling,

and re ection.

Change of detail is the pro cess of adding or removing information to pro-

duce a ner grained representation for b etter visual e ect or simplify other

op erations for computational eciency. Usually some interp olation metho d

is used to augment detail: for example, tting curved surface patches to p oint

data to pro duce smo oth continuous approximations to the exp ected original

partly-sampled data. On the other hand, averaging or subsampling of the

data maybe used to reduce detail. Often mo dels are group ed into hierarchic

structures to simplify their organization: a mo del consists of sub-mo dels, each

of which consists of sub-mo dels, etc., down to the level of one or more primitive

typ es. An alternative hierarchic structure may b e formed by de ning the sub-

mo dels to be the same ob ject as the parent ob ject, only at a lesser degree of 8

detail. During mo del rendering, the appropriately detailed mo del is selected for

display based on the pro jected size of the entire mo del on the display surface.

During , as the size changes, the mo dels from two detail levels may

b e visually blended with each other.

A number of measurements may be made on ob ject mo dels. The top ol-

ogy may be computed to determine whether the mo del is totally connected

or consists of separate comp onents. The presence of top ological holes can be

determined. The overall consistency of the ob ject may be tested; for exam-

ple, in surface-based mo dels it is desirable to utilize top ologically well-de ned

Euler op erators to insure the validity of the ob ject mo dels b eing interactively

designed.

Other useful or common op erations include p oint-to-p oint distance mea-

surement, computation of surface area or volume, and determination of surface

tangents or normals for the rendering pro cess.

Ob ject mo dels may often b e combined to form new and more complex ob-

jects. The constructive solid geometry system is in fact based on Bo olean

combination as the fundamental op eration. The combination op erations are

union everything that is in either ob ject, intersection everything that is in

b oth ob jects, di erence everything that is in one ob ject but not the other,

and symmetric di erence everything that is in either ob ject but not in b oth.

Other combination op erations are the cut or slice which exp oses the interior to

view, and the cover op eration which de nes the relationship of one ob ject to

another in the nished image. The covering is an image prop erty which do es

not necessarily stem from a real 3D mo del motivation.

There are a numberofways in which an ob ject may b e deformed. Deforma-

tion enriches the selection of ob ject mo dels without resorting to generation of

totally new data sets. Deformation op erations include skew, stretch, fold, and

p erturb e.g. randomly, sto chastically, or fractally.

The display op eration is the most visible op eration on an ob ject mo del.

There are many rendering algorithms, many of which are discussed elsewhere

in this Tutorial: wire-frame, visible line, visible surface, ray casting, and ray

tracing.

9 Representation structures

As we remarked earlier, the representation structures used for an ob ject mo del

may be either declarative or pro cedural. In a declarative representation, the

mo del is explicitly emb edded in a standard computational data structure. In a

pro cedural scheme, the mo del is emb edded into any convenient computational

pro cedure, such as a formula, implicit equation, or arbitrary co de. In the former,

data is retrieved by search, indexing, or p ointer chasing; in the latter, data is

obtained byinvoking a pro cedure with passed parameters or sending a message

to an ob ject which then executes a resp onse. 9

10 Mo del classi cation

The ma jor concern of the rest of this discussion is a taxonomy of mo dels. We

classify mo dels into two broad categories: b oundary schemes and volumetric

schemes. In a b oundary representation the surface of the ob ject is approxi-

mated by or partitioned into non-overlapping 0-, 1-, or 2-dimensional primi-

tives. We will examine in turn representations consisting of primitives formed by

p oints, implicit surfaces or algebraic equations, p olygons, fractals and graftals,

and curved surface patches. In avolumetric representation the 3D volume of

the ob ject is decomp osed into p ossibly overlapping primitive volumes. Un-

der volumetric schemes we discuss voxels, o ctrees, constructive solid geometry,

sp ecialized single primitive systems, p otential functions, and particle systems.

10.1 Surface and b oundary mo dels

The simplest surface mo del is just a collection of 3D p oints. They may be

organized in a simple list, or may b e more highly structured as contours, slices,

or sections. Surfaces represented by p oints require a fairly dense distribution of

p oints for accurate mo deling.

10.2 Implicit surfaces / Algebraic equations

These surfaces are de ned as the solutions to algebraic formulas. One familiar

class of such surfaces are the quadrics. In general, the surface is the solution

to an equation such as F x; y ; z  = 0 and numerical techniques or search are

required if F is not analytic.

10.3 Polygons

Polygonal p olyhedral mo dels are one of the most commonly encountered repre-

sentations in computer graphics. The mo dels are de ned as networks of p olygons

forming 3D p olyhedra. Each p olygon primitive consists of some connected ver-

tex, edge, and face structure. There are a variety of data structures p ossible.

Groups of p olygons are stored in lists, tables, or linked structures to facili-

tate traversal of connected faces, the edge network, etc. The p olygons are sized,

shap ed, and p ositioned so that they completely tile the required surface at some

resolution. Polygon mo dels are relatively simple to de ne, manipulate, and dis-

play. They are the commonest mo del pro cessed byworkstation hardware and

commercial graphics software. In general p olygons are b est at mo deling ob jects

meant to have at surfaces, though with a large enough number of p olygons

quite intricate and complex ob jects can be represented. \Large enough\ may

mean hundreds of thousands of p olygons! 10

10.4 Fractals and Graftals

A limitation of the surface p oint and p olyhedral mo dels is the necessity usu-

ally of explicitly storing all the requisite data. If the ob jects to be mo deled

are highly irregular or complex, such as mountains or clouds, their statistical

shap e prop erties may b e used to b etter advantage. Fractals and graftals create

surfaces via an implicit mo del that pro duces data when requested. The sur-

faces are frequently based on p oint or p olygonal mo dels that are decomp osed

into ner and ner detail as the requirements of the display dictate. Fractals

use sp ecial \random" pro cesses to achieve a naturally motivated statistical ir-

regularity such as demonstrated in ro cks, mountains, clouds, coastlines, etc.

Graftals use deterministic pro cesses to mo del more rep etitive patterns suchas

trees, leaves, snow akes, etc. True fractals have a self-similarity prop erty, where

the frequency distribution of shap e is supp osed to b e the same no matter what

scale is chosen for examining the ob ject. In practice, there are several variants

on the true fractal de nition.

10.5 Curved surfaces

Since p olygons are good at representing at surfaces, considerable e ort has

b een exp ended determining mathematical formulations for true curved surfaces.

Although implicit surfaces may exhibit true and continuous curvature, the need

to solve equations is costly and usually undesirable. Most curved surface ob-

ject mo dels are formed by one or more parametric functions of two variables

bivariate functions. Each curved surface is called a patch; patches may be

joined along their b oundary edges into more complex surfaces. Usually patches

are de ned by low order p olynomials typically cubics giving the patch eas-

ily computed mathematical prop erties suchaswell-de ned surface normals and

tangents, and computable continuity conditions b etween edge-adjacent patches.

The shap e of a patch is derived from control p oints or tangentvectors; there are

b oth approximating and interp olating typ es. The former take the approximate

shap e of the control vertices; the latter must pass through them. There are

numerous formulations of curved surfaces, including: Bezier, Hermite, bicubic,

B-spline, Beta-spline, p olynomial, rational p olynomial, cardinal splines, com-

p osite splines, etc.

10.6 Volume and CSG mo dels

The rst volumetric mo del we examine is the mo del. Here space is com-

pletely lled by a tesselation of cub es or parallelopip eds called voxels volume

elements. Usually there is a density or other numerical value asso ciated with

eachvoxel. Storing a high resolution tesselation is exp ensive in space but simple

in data structure just a large 3D arrayofvalues. Usually some storage opti-

mization schemes are required for detailed work 1K x 1K x 1K spaces. Sp ecial 11

techniques are needed to compute surface normals and to suppress the

boxiness of the rawvoxel primitive. Voxel data is commonly obtained in the

medical domain; it is highly regarded for diagnostic purp oses as the 3D mo del

do es not sp eculate on additional data sayby surface tting nor suppress any

of the original data however convoluted.

10.7 Octrees

Octrees are one of the data structures used for volumetric mo dels that tesselate

a given 3D space. The original volume, say a cub e, is partitioned into 8 cub es

if it is non-empty. Recursively, each sub-cub e is partitioned whenever non-

empty,until some minimum size element is reached. Since empty cub es are not

sub-divided, the storage space eciency is increased. The ma jor use of o ctrees

app ears to b e an indexing scheme for access eciency in a large 3D array.

10.8 Constructive solid geometry

One of the most ecient and p owerful mo deling techniques is constructive solid

geometry. Unlike the voxel and o ctree schemes, there is no requirement to

regularly tesselate the entire space. Moreover, the primitive ob jects are not

limited to uniform cub es; rather there are anynumb er of simple primitives such

as cub e, sphere, cylinder, cone, half-space, etc. Each primitive is transformed or

deformed and p ositioned in space. Combinations of primitives or of previously

combined ob jects are created by the Bo olean op erations. An ob ject therefore

exists as a tree structure which is \evaluated" during rendering or measurement.

10.9 Sp ecialized single primitive systems

The generality of the constructive solid geometry metho d { with its multiplic-

ity of primitive ob jects and exp ensive and slow ray-tracing display metho d {

is frequently reduced to gain eciency in mo del construction, avoid Bo olean

combinations other than union, and increase display sp eed. The idea is to re-

strict primitives to one typ e then design manipulation and display algorithms

to take advantage of the uniformity of the representation. Voxels might b e con-

sidered such a sp ecial case, where the primitives are all co ordinate axis aligned

and integrally p ositioned cub es. Other schemes are p ossible, for example, using

ellipsoids, cylinders, sup erquadrics, or spheres.

Ellipsoids have b een used to mo del carto on-like gures. They are go o d for

elongated, symmetric, rounded ob jects. Unfortunately, the display algorithm

is nearly the same as the general ray-tracing pro cess. One unusual application

of overlapping ellipsoids is to mo del terrain, clouds, shrubb ery, and trees. In

these cases, the convincing visual e ect of semi-solidityisachieved by statistical

transparency which has a low rendering cost. 12

Cylinders have also b een used to mo del elongated, symmetric ob jects. An

application that uses cylinders plus spheres with a sp ecial-purp ose display al-

gorithm is ball and stick molecular mo deling.

Sup erquadrics are a mathematical generalization of spheres which include

an interesting class of shap es within a single framework: spheres, ellipsoids, and

ob jects which arbitrarily closely lo ok like prisms, cylinders, and stars. Simple

parameters control the shap e so that deformations through memb ers of the class

are simple and natural. Sup erquadrics are used to mo del man-made ob jects,

but when overlapp ed can give the app earance of faces and gures.

Spheres as a single primitive form an intriguing class. They are the only

mo deling primitive that is isotropic: that is, identical in app earance from any

view. Moreover, spheres have a simplicity of geometry that rivals that of simple

p oints: just add a radius. There are two metho ds of rendering spheres. They

can be drawn as fully 3D ob jects in which case some scan conversion tricks

can b e used to simplify the generation of successive ob ject p oints basically a

generalization of incremental circle drawing algorithms. An alternative display

metho d treats the spheres as if they were \scales" on the mo deled ob ject; in

this case a sphere is rendered as a at shaded disk. With sucient densityof

overlapping spheres, the result is a smo othly shaded solid which mo dels curved

volumes rather well. A naturalistic human gure may b e done this way.

10.10 Potential functions

An interesting generalization of the sphere mo del is to consider the volume as

a p otential function with a center and a eld function that decreases mono-

tonically by an exp onential or p olynomial function from the center outward.

There is no \radius" or size of the p otential function; rather, the size or surface

is determined by setting a threshold value for the eld. What makes this more

interesting is that p otential functions act like energy sources: adjacent p otential

functions haveoverlapping elds and the resultantvalue at a p oint in space is

in fact the sum of the elds active at that p oint. Thus adjacent elds blend

smo othly, unlike the \creases" that are obtained with xed radius spheres. Re-

cently, directional dep endence and selective eld summation across mo dels have

b een added to create \soft" mo dels that blend with themselves but not with

other mo deled ob jects in the environment. Potential functions were originally

used to mo del molecules, since atoms exhibit exactly this form of eld b ehav-

ior. Other uses for p otential functions are real and imaginary organic forms

including human and animal gures.

10.11 Particle systems

Generalizing spheres in a di erent direction, particle systems reduce the sphere

to a zero radius. Avolume is therefore characterized by a set of usually moving

particles which indirectly de ne the space. Each particle has its own color, 13

path, history, and lifetime. Their motion is typically controlled by probabilistic

algorithms. Particle systems have b een used to mo del re, gases, explosions,

reworks, and grassy elds.

11 Where do mo dels come from?

There are numerous metho ds for generating 3D surface or volume mo dels. We

brie y examine manual , semi-direct data acquisition, and algorith-

mic metho ds.

Manual digitization is the construction of a mo del from 3D co ordinate data

measured and typ ed in or directly traced from plans, mo dels, or the real thing.

Several forms of digitizers exist to aid this task. Often data from two or more

views is used so that 2D data may be extrap olated into 3D. If two views are

taken with prop erly p ositioned and calibrated cameras, manual selection of cor-

resp onding p oints on the two views can b e input to a formula.

This is the basic op eration in .

If manual input is to o tedius, or the mo del to o complex, semi-automated data

acquisition metho ds may b e used. Principals among such metho ds are direct 3D

co ordinate input via 3D digitizers, laser scanning to obtain gridded range hence

depth information, voxel reconstruction from multiple planar tomographic

images, and direct video image analysis. The last metho d is still in relative

infancy, but computer vision techniques can b e used to intelligently reconstruct

various simple geometric mo dels based on p olyhedra, curved surfaces, spheres,

cylinders, and sup erquadrics.

Algorithmic and interactive design metho ds form a large class of mo del build-

ing techniques. Typically an interactive graphical editor is used to build a mo del

within the particular mo deling system representation. For example, p olyhedral

mo dels are pre-eminent in computer-aided design applications, with curved sur-

faces and constructive solid geometry mo dels b ecoming widely available. Other

interactive mo del editors have b een constructed for the other mo del typ es. Of-

ten, an algorithmic metho d can assist the design pro cess by enforcing constraints

on the mo del primitives. For example, using Euler op erators will insure that a

p olyhedral mo del is top ologically well-de ned though it may still b e o dd in a

geometric sense. Actual constraint op erators may insure that features within

a mo del are parallel, tangent, horizontal, vertical, non-intersecting, etc. Fi-

nally, some algorithmic metho ds can be used to interp olate or generate data

from forms more easily input; for example, by creating reconstructed surfaces

between parallel contour slices of surface p oints, by tting curved surfaces to

control vertices or tangency constraints, or by using force or energy metho ds to

cause mo del pieces to self-assemble. 14

A Glossary for Mo deling and Animation

 y

Norman I. Badler Andrew S. Glassner

Adaptive sampling Evaluating an image coarsely at rst, and then more

nely in regions with detail. Causes for taking more samples include

complex shap es, textures, and shadows. See sup er-sampling.

Aliasing Artifacts in an image generated when we only use a nite number

of equally-spaced samples, such as at pixel centers. The artifacts include

banding, Moir e e ects, jaggies on p olygon edges, and regular patterns that

don't b elong.

Algebraic Surface A surface de ned by an equation. The surface contains all

p oints whichevaluate to a particular value of the equation, usually zero.

Algebraic surfaces are a class of implicit surfaces.

Ambient The amount of illumination in a scene which is assumed to come

from any direction and is thus indep endent of the presence of ob jects, the

viewer p osition, or actual light sources in the scene.

Animation The pro cess of creating and recording images which change over

time. Though often interpreted as implying only two-dimensional image

changes, it may be applied in general to any mo del or scene changes in

three dimensions as well.

Anti-aliasing The pro cess of reducing, removing, or avoiding aliasing artifacts.

See aliasing.

Articulation The ability of one part of an ob ject to move with resp ect to

another, such as a hinge or sliding joint.

Background A xed image whichisinterpreted as existing in nitely far from

the observer. It is displayed when no ob ject surface falls into an image

sample.

Bend Deforming a shap e along a line.



Computer and Information Science Department, UniversityofPennsylvania, Philadelphia,

PA 19104 USA

y

Microsoft Research, One Microsoft Way, Redmond, WA 98052 1

Binary Space Partitioning BSP A metho d for dividing up a 3D space

with a set of planes. For any observer and plane, each ob ject in the

environment either straddles the plane, is on the same side as the observer,

or on the other side. Ob jects on the same side of and in front of  the

observer will blo ck visibility of ob jects on the other side.

Bivariate patch Avector-valued function of twovariables, typically called u

and v . These parameters generate some lo cally two-dimensional surface

in space. Often the parameters are assumed to lie in the range [0,1]. See

patch.

Blob An . Blobs are usually radially symmetric Gaussian func-

tions.

Bo olean op eration An algebraic combination union, intersection, or di er-

ence of two geometric solids.

B-Rep See Boundary representation.

Boundary representation The geometry of an ob ject as describ ed by its sur-

face. The surface of the ob ject is approximated by or partitioned into

non-overlapping 0-, 1-, or 2-dimensional primitives p oints, curves, and

surfaces.

BSP See Binary Space Partitioning.

B-Spline Atyp e of spline, where the curve is in uenced by the control p oints,

but generally do es not pass through them. See Splines.

Bump mapping A technique for faking ne-level geometry on a surface, such

as the bumps on an orange rind. Rather than actually create many little

pieces of surface to mo del the bumps, a texture map is placed on the

surface which describ es how the surface normal would vary if the shap e

really had bumps. By shading with these imaginary normals, the surface

app ears to be bumpy. Drawbacks to the technique are related to the

fact that only small bumps can b e faked this way: the silhouette is not

changed, bumps don't o cclude other bumps, and usually the bumps don't

cast shadows.

CAD Computer-Aided Design. The pro cess of manually creating geometric

ob ject mo dels which meet desired design criteria.

Catmull-Rom Spline Atyp e of spline, where the curve is in uenced by the

control p oints, but generally do es not pass through them. See Splines.

Cel animation Animation pro duced by stacking multiple 2D drawings called

cels, each containing a fragment of a scene or character on a transparent

background. Inaphysical environment the cels are lit and photographed 2

to create one frame of animation. Cels are basically a lab or-saving device.

If a character is standing still and talking, then a cel of the character

without a mouth might be placed over a background. Then for each

frame a cel containing the appropriate mouth image is placed on top of

the stack, avoiding the necessity to re-draw the entire character for every

frame. Often there are several indep endent planes of images whichmay

b e sup erimp osed in a so-called "two and a half-dimensional" animation.

Clipping planes Boundary planes in the world co ordinate space which delimit

the p ortion of the geometric mo del which will b e rendered. Typically top,

b ottom, and side clipping planes are based on the window and camera

p osition. The front and back or hither and yon clipping planes are used

to select the ob ject depth limits to remove undesired foreground closer

or background further ob jects or slice the ob ject p erp endicular to the

view to exp ose inner detail.

Comp ositing The pro cess of creating an image by combining multiple inde-

p endent images. A matte describ es howmuch each p ointof each image

contributes to the nal picture. To animate a spaceship, for example, one

might render the spaceship, and then comp osite it over a background of

stars. The ship would completely replace the star eld, but some of the

stars might b e visible through the exhaust. In animation, the background

and stationary ob jects are rendered once, while changing or moving ob-

jects are rendered on a p er frame basis and combined with the static part

of the image.

Constraints Values, relationships or conditions which are to maintained while

other changes are b eing made. For example, a constraint can hold a line

horizontal, keep two ob jects a constant distance from one another as they

moving, or can cause one ob ject to b e attracted to another.

Constructive Solid Geometry CSG A mo del representation based on a

set of primitive geometric shap es whichmay b e transformed spatially and

combined in a tree-structured fashion by Bo olean op erations. The result-

ing mo del is a tree with the primitives as the leaves, Bo olean op erations

as the non-leaf no des, and edges as transformations.

Contour Typically a curve in space. Common contours are those used as the

cross-section for swept surfaces, and the silhouette of some ob ject from a

particular p oint of view.

Control One of the p oints that in uences the shap e of a spline or patch.

See splines, patches.

Concave See Convex. 3

Continuity When two patches share an edge, that edge may b e more or less

noticeable. The continuity of the edge across the patches is a mathemati-

cal measure of how smo oth the edge is. If the edge has 0-degree continuity,

then there are simply no holes, but there may b e a crease. If the edge has

rst-degree continuity, then the rst derivative of the surface is continuous

across the edge. This derivative may be measured either parametrical ly

or geometrical ly; the former is derived from the natural mathematical de-

scription of the patch, and the latter comes from the apparent or visible

nature of the patches. Higher degrees of continuity refer to ever-smo other

blends of the surface across the edge.

Convex A prop erty of a shap e in any dimension. A shap e is convex if you

can pickanytwo p oints in the shap e, and connect them with a straight

line that never go es out of the shap e. In 3D, a sphere is convex, but a

wineglass is not pick a p oint in the b owl and a p oint on the base; the line

between them is not entirely within the wineglass. A shap e that is not

convex is concave.

Convex Hull The smallest p olyhedron that encloses a given ob ject. The con-

vex hull for a p olygon can b e created in 2D by drawing the p olygon on a

wo o den b oard, and then driving in a nail at eachvertex. Stretch a rubb er

band so it encloses all the nails, and then release it; the shap e formed by

the rubb er band is the convex hull.

CSG See Constructive Solid Geometry.

Database ampli cation The notion that simple sets of parameters stored in

a data structure or database may expand into quite complex ob jects by

the application of suitable pro cedural pro cesses. Examples are fractal and

graftal shap es which require only a few numb ers or syntactic rules to enable

the generation of intricate and detailed mo dels.

Data structure A computerized metho d of storing information such as a list,

array, graph, network, etc.

Decomp osition Breaking an ob ject into smaller or simpler comp onents, typi-

cally to facilitate the algorithmic pro cessing of the original ob ject by more

general pro cedures.

Depth cueing The pro cess of reducing the apparent brightness of an ob ject

the further away from the viewer it is p ositioned. This often enhances the

p erception of depth. The idea is that one is viewing the scene under foggy

conditions, where the contrast diminishes with distance. If the background

is black, this diminished contrast is equivalent to reduced brightness; if

the background is gray, it is reduced saturation of the color. 4

Di erence A Bo olean op eration over two ob jects where the resulting ob ject is

the set of p oints in the rst ob ject that are not contained in the second

ob ject. Di erence is also called subtraction. This is commonly used to

drill holes in a part by subtracting a cylinder from the part. See symmetric

di erence.

Di use Light which is re ected equally in all directions from a p oint on the

surface of an ob ject. The brightness of the surface do es not, therefore,

dep end on the observer's p osition relative to the surface p oint.

Digitization The pro cess of building a geometric mo del from existing draw-

ings, physical ob jects, or mo dels of ob jects. The three-dimensional co or-

dinates are sensed, lo cated, typ ed, or otherwise obtained from the source.

Dilation A scaling geometric transformation. Scaling of a p oint co ordinate

multiplication by a constant can o ccur indep endently in each dimension.

Dithering The pro cess of trading spatial resolution for enhanced intensityor

color resolution by distributing fewer shades over a region larger than

a single pixel. The eye p erforms the spatial integration to pro duce the

additional shades or intensities. Care must b e taken to avoid pro ducing

distracting spatial patterns.

Dynamics Animation by the sp eci cation of forces and torques applied to

masses, rather than their p ositions, velo cities, and accelerations.

Easing A reduction in the acceleration or deceleration of a motion to present

a smo other, more continuous movement. Also used to blend two motions

together.

Environment Map A picture of the environment surrounding a mo del. It is

usually used to approximate re ections o the mo del.

Field of view The solid angle across the viewing pyramid at the ap ex center

of pro jection where the camera is lo cated.

Fractal A geometric structure having the prop erty that its frequency distribu-

tion is the same no matter what magni cation scaling factor is applied

to it. Examples typically cited are coastlines and clouds. In practice

the term is also applied to any curve or surface obtained by the sto chas-

tic random p erturbation of p oints on or in the surface as the shap e is

sub divided to sub-pixel size for rendering. Technically, a fractal is a

mathematical construction that is in nite; any computer mo dels based on

these ideas are just approximations of true fractals.

Geometric editor An interactive program which p ermits the creation and

mo di cation of shap es by distinct op erations on the geometric data struc-

ture representing an ob ject, for example, instancing a primitive shap e,

transforming it, combining it with other shap es, etc. 5

Goniometric diagram This is a diagram that gives the intensity and color of

the energy leaving a p oint light source for every direction in which light

can leave the source. The diagram may b e used with approximations for

light sources with nite size.

Graftal Any curve, shap e, or surface obtained by the deterministic or syntactic

p erturbation of p oints on or in some starting primitive as the shap e is

sub divided to sub-pixel size for rendering. Often graftals are generated

byashapegrammar.

Hierarchy A tree in which no des typically represent ob jects and edges repre-

sent relationships. For example, a human b o dy could b e represented bya

with the torso at the top or root, and vechildren representing

the arms, legs, and head. Each arm could b e a smaller hierarchy of upp er

arm, lower arm, and hand; the hand is a hierarchyof ve ngers, and so

on.

Hither Clipping Plane See clipping planes.

Implicit surface A surface describ ed by an equation. The surface contains all

p oints whichevaluate to a given numb er when plugged into the equation;

usually this value is zero. Often the solutions must b e found bynumerical

search techniques.

In-b etweening See interp olation.

Interp olation The pro cess of lling in information from a set of values. Inter-

p olation can b e used to generate plausible surface p oints for sparse data or

for curves or surfaces de ned with a small set of control p oints. It is also a

way to generate p ositions for ob jects b etween key frames in an animation.

Intersection A Bo olean op eration over two ob jects where the resulting ob ject

is the set of p oints which lie in b oth ob jects simultaneously.

Key frames Cel animation images drawn by the which are interp o-

lated algorithmically by the computer to generate inbetween images at the

desired frame rate.

Key parameters Values of motion or other attribute parameters which are

sp eci ed by the animator. Inbetween parameter values are typically gen-

erated by spline curves.

Kinematics Motion sp eci cation by p osition, velo city, and acceleration, rather

than by forces. Usually applied to the manipulation of mechanisms involv-

ing articulated parts and various joints and constraints b etween the parts.

Level surface All solutions to the implicit equation F x=k for some con-

stant k and multidimensional vector x. 6

Light source The collo quial name for a luminaire.

Luminaire An ob ject which emits light on its own, even if no other light is

striking it from elsewhere.

Lo cal co ordinate system A reference frame p ositioned within or on an ob-

ject to facilitate its de nition, manipulation, and placement in a scene.

The lo cal co ordinate system moves along with the ob ject.

Matte Atwo-dimensional region not necessarily connected of an image which

indicates where one image is to b e comp osited with another.

Mip-Map A pre-pro cessed form of a texture which can increase rendering

sp eed. \Mip" stands for multum in parvo, Latin for \many things in

a small place". Similar to the sum table.

Octree A data structure for a spatial partition which divides space into eight

equal cub es octants. Each cub e is recursively sub divided as needed to

the level of detail of the mo del or the pixel size.

Orthogonal A synonym for perpendicular.

Orthogonal pro jection The view created by placing the camera at an in nite

distance from the scene. The view direction creates a viewing parallelop-

ip ed whose cross-section is determined by the window. Ob jects of the

same size at di erent depths from the camera app ear the same size in the

image.

Particle system A representation which consists of large sets of individual

p oints under algorithmic or sto chastic control. The p oints have color, a

tra jectory, and a history. They may b e created, destroyed, or split. The

history may b e used in a single image to create a curvilinear shap e, or in

an animation to create a moving p oint.

Patch Almost any 3D curved surface may b e thought of as a patch. Typically

they are small bits of surface that are created by a mesh of control points,

which in uence the patch in the same way that they in uence a spline.

Patches are usually connected to preserve di erenttyp es of continuity. See

control p oints, continuity.

Paths The value of a parametric function over time. Typically used to describ e

the spatial p osition of an ob ject, but also applicable to its orientation, or

even attribute values.

Persp ective pro jection The view created by placing the camera at a nite

p osition the center of pro jection within the scene. The camera forms

the ap ex of a viewing pyramid whose cross-section is determined by the

view direction and the window or eld of view. Ob jects of the same size 7

at di erent depths from the camera app ear in di erent sizes in the image:

the further ob jects b eing foreshortened and hence app earing smaller.

Polygon A closed and connected sequence of vertices and edges. Usually con-

sidered planar and simple non-intersecting. Polygons may also have

internal edge lo ops creating holes or multiple comp onents.

Polyhedron A 3D solid whose b oundary is made of p olygons.

Potential function Typically an exp onential function with a center p oint and

avalue which decreases as a function of radius from the center. A level

surface of a p otential function is a sphere of some radius. By analogy

to electric elds, adjacent p otential functions may b e summed so that the

level surface of a set of p otential functions is a surface of constant\charge"

and therefore represents a smo othed combination rather than hard-edge

sphere intersections. See algebraic surface and blob.

Primitives The simplest unit of geometric ob ject represented in a data struc-

ture. The geometric, measurement, and rendering algorithms op erate over

primitives such that the results can b e combined to apply to more complex

ob jects consisting of admissible combinations of primitives.

Pro cedural representation The geometric mo del is emb edded into any con-

venient computational pro cedure, such as a formula, implicit equation, or

arbitrary co de. The pro cedure may generate data structures e.g. a pro ce-

dure to create a cylinder of given length and numb er of sides as p olygons,

provide data values e.g. from the evaluation of a function describing a

surface, or return parameter values e.g. awave mo del where the outputs

are control p oints for curved surfaces representing p ortions of the wave.

Very complex mo dels such as mountains, and very regular mo dels suchas

a b o okshelf of b o oks, are usually go o d candidates for a pro cedural mo del.

Quadratic surface A surface de ned by algebraic equations with variables

raised at most to the p ower 2.

Quadric surface See Quadratic surface.

Quadtree A partition of the plane into four quadrants, each of whichmaybe

recursively sub divided into quadrants to the desired level of ob ject detail

or pixel size.

Radiosity A shading pro cess in which the visibilityofany p ortion of a surface

of an ob ject is assessed relative to every other surface. Because all the

illumination is pre-computed once, the database can b e stored as colored

primitives that represent their illumination, and real-time hardware may

b e used to simply display the primitives. 8

Ray casting The pro cess of determining which ob ject in a scene is rst en-

countered byaray emanating from the camera view lo cation and passing

through a pixel on the display screen. From the list of ray-ob ject inter-

sections the rst visible intersection is chosen. The surface normal at this

p oint is used to determine the shading value.

Ray tracing The pro cess of determining the shade of a pixel in a scene consist-

ing of arbitrary ob jects, various surface attributes, and complex lighting

mo dels. The pro cess starts like ray-casting, but each ray is followed as

it passes through translucent ob jects, is b ounced by re ective ob jects,

intersects ob jects on its way to each light source to create shadows, etc.

Re ection A scaling geometric transformation where one or more of the co-

ordinate multipliers are negative. Also the e ect of light b ouncing o an

ob ject. See re ectivity.

Re ectivity A surface attribute of an ob ject which causes incoming lightto

be re ected only at the angle opp osite to the incidence angle ab out the

surface normal.

Rendering The pro cess of taking a geometric mo del, a lighting mo del, a cam-

era view, and other image generation parameters and computing an image.

The choice of rendering algorithm is dep endent on the mo del represen-

tation and the degree of realism interpretation of ob ject and lighting

attributes desired.

Rotation A geometric transformation which causes p oints to b e rotated ab out

some axis through the origin by a given angle.

Sampling The pro cess of selecting a nite numb er of places to prob e or sample

a continuous function or scene mo del in order to pro duce a dense enough

set of values to pro duce a reasonable discrete approximation.

Scan-line algorithm A rendering technique which computes the image one

scan line at a time taking advantage of the minimal changes from one scan-

line to the next in an image. The algorithm reduces a three-dimensional

visibility problem to a two-dimensional problem p er scan-line.

Scripts Time dep endent statements of events or action. The actions are motion

parameters applied to ob jects. Often a script resembles a programming

language but the timing of events may also b e visualized in a graphical

form.

Shade tree A custom shading pro cedure for a particular ob ject. This pro ce-

dure may use all sorts of information from the ob ject and the environment

to create complex surface descriptions, including simulated re ections and

shadows. A shap e tree may also b e used to describ e the output of a lumi-

naire. See luminaire and goniometric diagram. 9

Shading mo del The algorithm used to determine the color of light leaving

a surface given a description of the light incident up on it. The shading

mo del usually incorp orates the surface normal information, the surface

re ectance attributes, any texture or bump mapping, the lighting mo del,

and even some comp ositing information.

Skew A geometric transformation which causes p oints to b e translated in one

or more dimensions while remaining xed in another. The amount of

translation is a multiple of the value of the xed co ordinate.

Slice The pro cess of dividing a mo del by a plane so that one p ortion may

be removed to view the interior structure. It is also sometimes used to

describ e the contour of the ob ject obtained in the cutting plane itself.

Solid Texture A texture which is de ned at every p oint in space. An ob ject

textured this way app ears to b e \carved out" of a volume of material with

this texture. Common examples include wo o d and marble.

Spline A curve, usually de ned by a series of p oints called control p oints. In

shipbuilding a spline is a long thin piece of wo o d susp ended on two sup-

p orts. At di erent places along the b oard weights are placed to create

gentle curves; heavier weights exert more of an in uence. Mathematical

splines were originally develop ed to simulate this physical construction.

Thus one sp eaks of the weight asso ciated with a control p oint.

Sp ecular The comp onent of illumination seen at a surface p oint of an ob ject

which is pro duced by re ection ab out the surface normal. It dep ends on

the observer p osition, whereas the di use comp onent do es not. Often this

app ears as a "highlight."

Sto chastic sampling A technique for anti-aliasing. The basic idea is to replace

the regular sampling grid such as one sample in the center of each pixel

with a more random, or sto chastic, set of sample lo cations. The result is

that regular aliasing artifacts such as jaggies are replaced by fuzzy, noisy

edges. When enough samples are used the noise smo oths out and none of

the regular aliasing artifacts app ear. The advantage of this technique is

that it can eliminate the regular aliasing artifacts created byevery regular

grid.

Stretch A geometric transformation which deforms a ob ject lo cally. It is usu-

ally applied to the control parameters of a curved surface.

Sum Table A pre-pro cessed form of a texture which can increase rendering

sp eed. Similar to the Mip-map.

Sup er-sampling The pro cess of sampling a scene at a higher frequency than

the pixel spacing. The resulting excess samples are averaged or ltered to 10

determine the actual pixel value. In contrast to adaptive sampling, sup er-

sampling refers to taking many samples everywhere in the image, rather

than just where they are needed.

Surface normal The vector which is p erp endicular to the ob ject surface and

outward facing. Surface normals are one of the principal determiners of

surface shading.

Surface tangent The plane which is tangent to the ob ject surface. The tan-

gent is primarily used when discussing the continuity of curved surface

patches across patch b oundaries.

Surface of Revolution A 3D shap e created by a 2D curve that is rotated

around an axis. Such shap es may b e created on a lathe. Examples include

candlesticks and wine glasses.

Swept Surface A 3D shap e created by a 2D curve called the contour that

is swept along some 3D curve called the path. The contour may be

scaled or otherwise transformed as it moves along the path. For example,

a circular contour maybeswept along an S-shap ed path to make a snake.

Symmetric di erence A Bo olean op eration over two ob jects where the re-

sulting ob ject is the set of p oints in the rst ob ject that are not contained

in the second ob ject and the set of p oints in the second ob ject that are

not contained in the rst. See di erence.

Texture A two- or three-dimensional pattern which is applied to the ob ject

surface during the shading computation. Textures may determine color,

re ectivity, transparency, material, or any other factor that controls how

a shap e lo oks. A displacement texture can even mildly distort a surface.

The advantage to texture is that the complexity of app earance do es not

have to b e explicitly mo deled in the ob ject geometry.

Tesselation A partition of the plane or space into one or more non-overlapping

primitives. The primitives are usually regular in size and shap e. Common

examples in 2D are squares and hexagons. In 3D, cub es are convenient.

Tile Tocover a p ossibly non-planar surface with planar p olygons. Also, a tile

sometimes refers to a texture pattern over a square p olygon.

Top ology The mathematical notions that describ e the underlying structure

of an ob ject without reference to its particular shap e. Two meshes of

rectangles of equal size have the same top ology, regardless of the lo cations

of their vertices. Top ologists are fond of noting that there is no di erence

between a donut and a co ee cup; a exible mo del of either one can b e

deformed into the other by stretching and pulling, without any ripping or

cutting. 11

Transmittance A prop erty of a surface describing the fraction of light that

will pass completely through it. Thus a transmittance of 0 is opaque, 1 is

invisible, and values inbetween o er various degrees of translucency.

Translation A geometric transformation which causes p oints to b e moved by

constant displacements in each co ordinate.

Union A Bo olean op eration over two ob jects where the resulting ob ject is the

set of p oints which lie in either ob ject.

View direction The direction in which the camera is p ointing. It is the p er-

p endicular to the viewing plane on which the image is formed.

View up direction The world direction which when viewed by the camera

will app ear to b e vertical up in the image.

Viewp ort The sub-area of the screen or image formation device into whicha

graphical rendering or other drawing is placed.

Visible surface That part of an ob ject which is visible from a given p ointof

view.

Visible line The pro cess of rendering or drawing only linear features lines

to show at least only those edges or contour lines of surfaces which are in

fact visible to the camera.

Voxel A three-dimensional volume element, usually a cub e or box. It has a

value or density and six sides and represents a nite sized p oint in a

regular decomp osition of space.

Window A rectangular subregion of the viewing plane which de nes the top,

b ottom, and side clipping planes relative to the camera p osition.

Wire-frame The drawing of a mo del by tracing linear features such as edges

or contour lines without attempting to removeinvisible or hidden parts.

World co ordinates The arbitrary co ordinate reference frame in which ob ject

mo dels are p ositioned to create a scene.

World pro jection A sp ecial background image built from the ob jects in the

scene itself which is used to create convincing re ections on ob jects.

Yon Clipping Plane See clipping planes.

Z-bu er A rendering technique in which ob jects are scan-converted to pixel

data and depth values and then inserted into a pixel array and a depth

array. Where the ob ject's pixel depth is less than that of the currently

stored pixel/depth pair, the new data is written in, replacing the old.

Advantages of the Z-bu er are that the ob jects need not b e pro cessed in 12

any sp ecial order, the image can b e incrementally up dated with additional

ob jects at any time, and the scene can contain an unlimited number of

ob jects. 13