8
Introduction The science of computer character animation addresses the problem of building models from some captured data and some physical knowledge of the character. Three stages are involved: static model design, deformation scheme and motion prescription. The static model may be entirely captured (from a range scan, for example) or entirely user specified (using a commercial model building package, for example). Deformation of the model requires at least some degree of physical knowledge. If an animator wants the deformations of his character to be smooth then in effect he is approximating the physical process of skin stretching by a smooth surface. On the other extreme animators may want a more physically realistic model that computes the deformations of every muscle and skin movement. Motion laws too may be painstakingly applied by an animator moving a stick man skeleton or may come directly from motion capture data. The problem for the animator then is, given some captured data, how to best use his knowledge of physical movement? The methods for character animation are various and dependent on the application and the amount and kind of captured data. The trade-off involved are essentially realism, speed and compactness. Computer games require models that can be rendered very quickly and may need some form of collision detection: a notoriously CPU hungry practice. As a result realism must often take a back seat. At the other extreme, film animators require a high degree of believability and perhaps realism but their models do not need to be rendered in real time. Applications for animation are discussed in the next section. The application usually determines the type of data capture needed and hence the representation used. In Section 3 we discuss the model building approach which requires no data capture and the scanning approach where models are copies of real objects. In Section 4 we outline the representations; polygons, parametric surfaces and implicit surfaces. An important concept that unifies most animation schemes is the layered approach. This is a very natural approach since bodies are layered in the sense that they have a skeleton, a muscle layer, a fat layer and a skin layer. Each layer is controlled only by the previous one. While some animation systems exactly mirror this anatomical organisation (see later) it is more normal to have a hierarchy that goes something like: skeleton, low resolution layer, high resolution layer. As with the anatomically accurate model, moving a skeleton, in turn moves the higher layers. Unlike the human body, it is the skeleton that moves the muscles since it is easy for animators to move a point on a skeleton. The purpose of a layered approach is to go from a complicated model of a character to a simple skeleton that can be easily animated. As an example, the layered animation scheme in [1][2] is shown in Figure 1. focus software 44 Volume 2, Issue 2 Summer 2001 focus review Models for character animation Gordon Collins Centre for Vision, Speech and Signal Processing, University of Surrey, Guildford, GU2 5XH, UK [email protected] http://www.ee.surrey.ac.uk/Research /VSSP/3DVision GORDON COLLINS and ADRIAN HILTON present a review of methods for the construction and deformation of character models. They consider both state of the art research and common practice. In particular they review applications, data capture methods, manual model construction, polygonal, parametric and implicit surface representations, basic geometric deformations, free form deformations, subdivision surfaces, displacement map schemes and physical deformation. Copyright © 2001 John Wiley & Sons, Ltd. The problem for the animator then is, given some captured data, how to best use his knowledge of physical movement? Keywords: character animation; data capture; deformation; physics based animation; displacement maps

Models for character animation

Embed Size (px)

Citation preview

Page 1: Models for character animation

IntroductionThe science of computer characteranimation addresses the problem ofbuilding models from some captured dataand some physical knowledge of thecharacter. Three stages are involved: staticmodel design, deformation scheme andmotion prescription. The static model maybe entirely captured (from a range scan,for example) or entirely user specified(using a commercial model buildingpackage, for example). Deformation of themodel requires at least some degree ofphysical knowledge. If an animator wantsthe deformations of his character to besmooth then in effect he is approximatingthe physical process of skin stretching by asmooth surface. On the other extremeanimators may want a more physicallyrealistic model that computes thedeformations of every muscle and skinmovement. Motion laws too may bepainstakingly applied by an animatormoving a stick man skeleton or may comedirectly from motion capture data. Theproblem for the animator then is, givensome captured data, how to best use hisknowledge of physical movement?

The methods for character animation arevarious and dependent on the applicationand the amount and kind of captureddata. The trade-off involved are essentiallyrealism, speed and compactness.Computer games require models that canbe rendered very quickly and may needsome form of collision detection: anotoriously CPU hungry practice. As aresult realism must often take a back seat.At the other extreme, film animatorsrequire a high degree of believability andperhaps realism but their models do notneed to be rendered in real time.

Applications for animation are discussedin the next section.

The application usually determines thetype of data capture needed and hence therepresentation used. In Section 3 wediscuss the model building approachwhich requires no data capture and thescanning approach where models arecopies of real objects. In Section 4 weoutline the representations; polygons,parametric surfaces and implicit surfaces.

An important concept that unifies mostanimation schemes is the layeredapproach. This is a very natural approachsince bodies are layered in the sense thatthey have a skeleton, a muscle layer, a fatlayer and a skin layer. Each layer iscontrolled only by the previous one. Whilesome animation systems exactly mirrorthis anatomical organisation (see later) it is

more normal to have a hierarchy that goessomething like: skeleton, low resolutionlayer, high resolution layer. As with theanatomically accurate model, moving askeleton, in turn moves the higher layers.Unlike the human body, it is the skeletonthat moves the muscles since it is easy foranimators to move a point on a skeleton.The purpose of a layered approach is togo from a complicated model of acharacter to a simple skeleton that can beeasily animated. As an example, thelayered animation scheme in [1][2] isshown in Figure 1.

focussoftware44 Volume 2, Issue 2

Summer 2001focusreview

Models forcharacter animation

Gordon CollinsCentre for Vision, Speech and SignalProcessing, University of Surrey,Guildford, GU2 5XH, [email protected]://www.ee.surrey.ac.uk/Research/VSSP/3DVision

GORDON COLLINS and

ADRIAN HILTON present a review

of methods for the construction

and deformation of character

models. They consider both state

of the art research and common

practice. In particular they review

applications, data capture

methods, manual model

construction, polygonal, parametric

and implicit surface

representations, basic geometric

deformations, free form

deformations, subdivision surfaces,

displacement map schemes and

physical deformation.

Copyright © 2001 John Wiley & Sons, Ltd.

The problem for the animator thenis, given some captured data, how

to best use his knowledge ofphysical movement?

Keywords: character animation; data capture; deformation; physics based animation;displacement maps

swf2.2_v2 8/8/01 6:54 am Page 44

Page 2: Models for character animation

Summer 2001 focus review

The problem then lies in how to translateskeleton movement into rendered surfacemovement. Here, again, a variable degreeof physical realism is used. In a latersection we discuss methods that areconcerned with modelling muscles andskin with springs and solving the resultingphysics-based differential equations. Sucha practice is clearly time consuming.Where physical realism is neither requirednor practical, some other, believable, lawof deformation is needed. This law isalmost always that deformations must besmooth. Two ways of achieving this, freeform deformations and subdivision surfacesare also discussed in a later section.

In this paper we present a review ofliterature on the model building anddeformation of characters, we do notconcentrate on the actual laws for motion ofan object. These come form a variety ofsources, whether they be motion capturetechniques (common in the computergames industry) or if they are in somedegree autonomous (AVATAR technology).

ApplicationsThe current applications for characteranimation are roughly, Web-basedanimation, computer games and films.Each application has differentrequirements, which are:

• Web-based animation — compressionand CPU efficiency.

• Computer games — CPU efficiency.

• Films — realism.

Web-based animations must betransmitted quickly and so compression isimportant here. It is, also, desirable totransmit the animation in a coarse formfirst and then successively finer forms. Forthis, Web-based animation makes use oflevel of detail (LOD) algorithms andprogressive transmission [3].

Computer game characters need to beanimated quickly and rendered in real-time. Often the details of a character areless important than their motion and theirinteraction with other characters andobjects. Because of this, computer gamecharacters are nearly always constructedwhile the captured data comes in the formof motion capture.

In contrast, film characters are required tobe believable and perhaps also realistic.Characters do not have to be rendered inreal time and so may be very complicated.The task for the researcher is to automatesome of the painstaking work that ananimator has to put in. A common

technique is to build characters from scansof clay sculptured characters. Motion isusually dictated by an animator ratherthan by applying captured motion.Deformations must be believable and thisis done, as we will see later, either byapplying physical laws or by ensuringsmooth deformations.

Data captureCharacter models require differentdegrees of 3D or 4D data capture andhence different levels of manual input.

This ranges from a full scan of a charactertogether with motion capture foranimation rules, to a manually constructedmodel which is animated by manuallymoving control vertices.

Model construction3D model construction has become agrown up industry with several glossymagazines (digit, 3D world) and Web sites[4][5] concerned with the art andtechnology of constructing models. Thereare numerous CAD packages for modelbuilding with 3D Studio MAX, Maya3Dand Lightwave being the standards (seeFigures 2 and 3). However, working on a2D computer screen to create 3Dcharacters is not an easily mastered taskand this is often discouraging for artists.Despite the maturity of 3D software toolsthe process of manual shape constructioncan be highly time consuming to achievevisual realism for detailed characters suchas those used in film animation.

Interactivity is the key here and Turnerand Gobbetti [6] have addressed thisproblem by augmenting the desktop witha head tracking sensor and special glasses.Another, well studied, solution is haptics[7]. A haptic device is a handle with severaldegrees of freedom. The handle can receiveforce feedback when a virtual intersectionoccurs so that the user can easily navigatewith it around a virtual enviroment which isconstrained by the objects in it. Hapticdevices provide a more natural interface tosculpt the surface shape of a 3D computermodel or character.

Range dataAn easier and more natural way for anartist to work in 3D is to sculpt a characterout of clay. The surface shape can then becaptured using either a touch probe oroptical range sensor to measure the 3Dlocation of points on the surface. Rangesensors have the advantage of requiring nosurface contact and allowing rapidmeasurement of thousands of points onthe surface. The sensor projects astructured light pattern onto the objectsurface and captures a camera image ofthe projected pattern. Optical

focussoftware 45Volume 2, Issue 2Copyright © 2001 John Wiley & Sons, Ltd.

Figure 1 System overview

Figure 2 Characters created by RobertKuczera in Maya and 3d Studio Max,reproduced with permission

Figure 3 Characters created by Taron in Lightwave,reproduced with permission

An important concept that unifies most animation schemes

is the layered approach.

swf2.2_v2 8/8/01 6:54 am Page 45

Page 3: Models for character animation

Summer 2001 focus review

triangulation between the projector andcamera is used to reconstruct the distanceof points on the surface from the cameraas a 2.5D ‘range image’. A number ofestablished technologies exist for rangemeasurement including a single laserstripe that is swept across the surface, greycode image sequences of binary stripepatterns and random binary dot patterns.In recent years highly accurate scannershave become commercially available andare the norm for range data capture.

Passive techniques for shape capturereconstruct the surface shape from a set ofmultiple view images. Shape-from-silhouettes [8][9] has become anestablished technique for recovering theapproximate surface shape of an object byimaging against a known background,such as a blue-screen. Images frommultiple views are combined to determinethe spatial volume occupied by the objectand reconstruct a surface model. Thisapproach can be used to produce highlyrealistic object models by texturemapping. However, in isolation thesilhouette based approach can notreconstruct surface concavities. Close-range photogrammetric approaches havebeen developed which reconstruct 3Dshape from matches between images [10].Matches of image features between images

are obtained either manually orautomatically to recover models of surfaceshape. Extensive research in computervision community has addressed the issueof automatic matching between images forstructure recovery [11][12]. Photogrammetric approaches result inaccurate structure recovery but sparsefeature data due to the requirement forvisually distinct features on the objectsurface. Reconstruction of surface modelsfrom such data remains an open-problem.Dence matching techniques have also beenused to recover dence 3D surfacemeasurements [11][13]. However, becauseof the problems of automatic matchingthese are relatively inaccurate comparedwith active sensors. Recently model-basedapproaches for recovering 3D shape from

passive multiple view images have beenintroduced where domain specificknowledge is used to constrain thereconstruction. Model-based approacheshave been developed to recover visuallyrealistic models of architecture [14], faces[15] and people [16]. This use of model-based approaches together withphotogrammetric techniques forrecovering structure from video imagesequences offers a promising technologyfor future highly realistic model building.

For example, a hand-held range sensorsystem, 3DScanners’ ModelMaker [17],was used by Hilton et al. to buildanimation models [2][18][19]. The sensoris a laser stripe-based range sensor with asix degree-of-freedom position sensor.The user may move freely around anobject to capture the data and use hisknowledge of the object to position thesensor effectively (an advantage overautomatic sensors). The result is a densetriangular mesh that is structured in such away that no two points are connected ifthey are not within a certain thresholddistance of each other. Thus the topologyis recreated (see Figure 4). A similarsystem was recently used by FrameStore tocapture the models for a recent BBC seriesWalking with Dinosaurs (http://www.bbc.co.uk/dinosaurs).

Whichever capture technique is used theproblems involved are integratingdifferent overlapping views (for exampledifferent sweeps of the laser scanner) intoone surface, dealing with missing data anddealing with outlying data points. Thisproblem is subdivided into a problemwhere the connectivity of measured pointsis known (the structured problem) andwhere it is not known (the unstructuredproblem). The structured problem hasbeen well studied [20][21][22][23][24].The single surface may be reconstructedby fusing layers that coincide in a specifiedvolume constructed from the surface[20][25]. The general problem of surfacereconstruction of unknown objects fromunstructured 3D point remains an openproblem [26][27][28][29][30]. A recent

focussoftware46 Volume 2, Issue 2 Copyright © 2001 John Wiley & Sons, Ltd.

Figure 4 Model reconstruction from hand-held sensor data; (a) ModelMaker system; (b) Raw data;(c) Mesh patches (partial); (d) Fused model.

A number of establishedtechnologies exist for range

measurement including a singlelaser stripe that is swept across the surface, grey code image

sequences of binary stripe patternsand random binary dot patterns.

paper [31] deals effectively with outlyingor missing data by a hybrid method whichaugments scanned data with a hierarchy ofuser-specified models.

RepresentationThe method of model building usuallydictates the representation of a model.Constructed models are usually representedby parametric surfaces whereas captureddata usually comes in the form of a pointcloud, which lends itself to polygonalisation.The pros and cons of both representationsand a third representation, metaballs, arediscussed here and are well documented inWatt and Watt [32].

PolygonsA polygonised surface is usually acollection of vertices which are connectedinto triangles or quadrilaterals. Besl [33]gives a good overview of the advantages ofpolygonal representations for variousapplications and analyses. The mostnotable advantages are due to the fact thatpolygons are a very simple building block.Because of this, a wide range of topologiescan be approximated by polygons. Alsorendering polygons is very simple andefficient as it is supported directly bycurrent graphics hardware. Thedisadvantage is that many vertices may beneeded to approximate a smooth surface.Also polygonal surfaces cannot bedeformed in an arbitrary way. Forexample, if a triangular surface is twistedtoo much then eventually two edges willcross so that the connectivity is violated.

Parametric surfacesParametric surfaces can be roughlycharacterised as curves with apredetermined smoothness, which fit somegiven control points automatically. Theyare simple to use as the modeller mayspecify just a few control points in order tospecify a large surface. Parametric surfacesare widely used by animators since theycan be smoothly deformed simply bymoving a single control point. Parametricsurface models are usually built by fittingtogether different patches of parametriccurves. The difficulties occur in the

swf2.2_v2 8/8/01 6:54 am Page 46

Page 4: Models for character animation

Summer 2001 focus review

manual task of trimming and fittingtogether these patches so as to maintainsmoothness over the join. A furtherdifficulty is that parametric surfacescannot be directly rendered but must firstbe discretised (into a polygonisation forexample) to be rendered.

There are many parametric surfaces [34];Bezier Surfaces, B-Splines, fl-Splines,NURBS which all differ in terms of ease ofrendering, how locally they are affected bycontrol points and how smooth they are.B-Splines are popular as control pointshave a very local influence and they areeasily patched together. NURBS, Non-Uniform Rational B-Splines, are ageneralisation of B-Spline and havebecome the computer graphics standard.

Subdivision surfacesThe traditional distinction between splinesand polygons has been muddied in recentyears with the arrival of robust subdivisionsurface techniques which are apolygonisation but also a smooth surface.Subdivision surfaces appear to be the bestof both worlds and have been usedextensively in a modern paradigm ofcharacter animation, ‘Geri’s Game’ [35] by

Pixar animation studios. The use ofsubdivision in animation is described inmore detail later.

Implicit surfacesAn entirely different approach is used byThalmann et al. [36][37] and Desbrun andGascuel [38]. They construct implicitsurfaces which are mathematical fieldfunctions, f(r) = constant, giving thedistance of a surface from a point r. Atypical choice of the field function is 1/(r-c)2.Thalmann et al. attach an ellipsoidalvolumetric primitives, ‘metaballs’, to thejoints of a skeleton and then blend themtogether using B-splines (see Figure 5) Asthe skeleton moves, the metaballs deformaccordingly, making this an excellentapproach to muscle modelling. Very fewprimitives are needed to construct a model,however rendering and model constructionis far from straightforward.

DeformationOnce a static model is built, specifying howregions deform requires some extra input.For most animators the manipulations aredone in a straightforward geometric way,such as directly manipulating the model,

interpolating between known poses orusing a simple skeleton model. Moresophisticated models use smoothdeformation methods such as free formdeformations (FFDs) or subdivisionsurfaces. Physically realistic models areusually too computationally expensive fortoday’s computers but are a very activearea of research. These methods are alldiscussed here in order of complexity.

Direct methodsAll the representations mentioned earliercan, to a certain extent, be directly animatedby moving control points or vertices. In thecase of parametric curves a single controlpoint can be moved to locally effect the shapeof a whole region. For polygonisationsdirect animation of individual vertices is apainstaking but common practice.Furthermore, polygonal vertices may onlybe moved with regard to their connectivityor else edge crossing may occur.

One step up from direct methods are theglobal deformations of Barr [39]. Hegeneralises the standard matrixtransformations (translation, rotation etc.)so that the matrices may changedepending on where they are applied. Inthis way a wider range of shapes anddeformations is possible than with thestandard deformations. Chang andRockwood [40] generalise further byallowing the axes on which thetransformations act to change, for examplethe transformations may act on an axiswhich is a B-spline. Although a wide rangeof deformations is possible in this way,these methods cannot perform all thedeformations that animators may require.

focussoftware 47Volume 2, Issue 2Copyright © 2001 John Wiley & Sons, Ltd.

Figure 5 (a) Spherical implicit surfaces; (b) surface blended together

Figure 6 Skeleton-based animation sequence for an avatar model, reproduced with permission

swf2.2_v2 8/8/01 6:55 am Page 47

Page 5: Models for character animation

Summer 2001 focus review

Basic skeleton methodsThe problem of moving many polygonalvertices or parametric control points maybe solved by imposing a simpler layerwithin the model and animating that.Maestri [41] gives a review of the technicaldetails of this process as well as some ofthe packages available for it. A basic formof this layered approach is widely used andinvolves fitting a simple ‘stick-man’ typeskeleton inside the model. Figure 6 showsa generic avatar model animation sequencewhich is deformed using a skeleton.

The standard H-anim format [42] foranimating virtual humans has a jointhierarchy which is reviewed in [43].Similarly MPEG-4 is a standard format forfaces which uses a similar parametricdeformation method [44].

The problem is one of how to attachsurface vertices or control points to askeletal surface. A poor attachment may

lead to surface collapses, bulging and thewrong segment being mapped after theskeleton is animated. For example, if askeletal segment influences all its nearestvertices, then, when it is animated, parts ofone leg may move as the other leg.Researchers [45][21] have looked into thisproblem and produced automaticattachment which counter all theseproblems for simple one-chain joints.Complicated joints such as the pelvis andespecially the shoulder are open problemsthat are currently tackled with physicallymodelled constraints [46].

Shape interpolationShape interpolation is a common methodfor animating faces, which is closelyrelated to the technique of morphing.Essentially a library of expressions is builtand an animator may move betweenexpressions in the library by interpolating.The method is clearly limited by the sizeof the library and also by the exact methodof interpolation. Maestri [41] gives thetechnical details of this method, somepractical tips and presents the packagesthat perform it. Lewis et al. [47] present astate of the art method of shapeinterpolation and also unify this withskeletal deformations. They show that

where skeletaldeformations break down,the face and shoulder forexample, shapedeformation may take overand give a realisticdeformation.

Free formdeformationsFree Form Deformation (FFD) is a class ofmethods that are independent ofrepresentation. They were first developedby Sederberg and Parry [48] for deformingsoft objects. Sederberg uses the analogy ofembedding the object in deformableplastic. When the plastic is deformed, theobject, which is also to be considered asflexible, is deformed accordingly. Anobject is enclosed within a fourdimensional parametric curve, forexample a Bezier hyperpatch, which is avolume (usually a cube). The controlpoints of the hyperpatch are deformedand, since the hyperpatch is a smoothfunction, the object is deformed in asmooth way (see Figure 7) If thehyperpatch were simply a volume, insteadof a parametric curve, then thedeformation would be equivalent to simplymoving control points on the object.

Recent developments in the method haveconcentrated on fitting FFDs to objects[49][50][51][52]. The Extended Free FormDeformation method of Coquillart [53][54]welds together standard FFD blocks tocreate a toolkit of new primitives that canbe better fitted to an arbitrary topology.MacCracken and Joy [55] subdivide anFFD lattice into a sequence of latticeswhich converge to the shape of the object.

Comprehensive animation systems withheavy use of FFDs are described byFaloutsos et al. [56]. Chadwick [57] presentsa system in which a skeleton moves thecontrol points of FFDs to deform musclesand physical spring laws move controlpoints on fatty areas such as cheeks. Otherwork is concerned with maintainingphysical properties through FFDs such asvolume preserving methods [58][59].

SubdivisionA growth area in computer graphics of

recent years has been subdivision surfaces.Subdivision surfaces are a way of obtaininga smooth surface with a polygonalrepresentation. Starting with a coursepolygonal mesh, new vertices are addedand, in some schemes, old vertices aremoved. The resulting refined mesh is asmooth surface in the sense that, if thisprocess is repeated ad infinitum, the ‘limitsurface’ would be a spline surface. Figure 8

shows a head model after two, three andsix subdivisions of the whole mesh.

The methods to perform subdivision arecategorised into interpolating andapproximating schemes. Approximatingschemes insert new vertices and moveexisting ones. The new points aregenerally inserted in a geometricallysimple manner (in the centre of a triangleor splitting the side of a triangle).Smoothness is achieved by ‘relaxing’ theold points by repositioning them at anaverage of the surrounding points.Interpolating schemes have the desirableproperty that their original control pointsare not moved. In order to ensuresmoothness, the template of control pointsneeded to compute the position of the newvertex must be larger.

Charles Loop [60] described thearchetypal approximating scheme fortriangular meshes. In his scheme eachedge of a triangle is split in half and theresulting three points are connected toform four triangles. The old vertices arethen relaxed (see Figure 9). Dyn et al. [61]proposed the interpolating Butterflyscheme which was extended to arbitrarymeshes by Zorin et al. [62]. Other seminalschemes are Catmull-Clark [63] and Doo-Sabin [64] for quadrilateral meshes. Alsoworthy of note is the v3-subdivisionscheme of Kobbelt [65] in which a vertex isplaced in the middle of a triangle andthen connected to each vertex, creatingthree triangles. The edges of the originaltriangle are then swapped to connect eachnew vertex, in this way undesirable thin

triangles are avoided (see Figure 10). Theadvantage of this novel scheme is that,unlike many schemes, refinement may belocalised and therefore it is a useful toolfor adaptivity.

DeRose et al. [14] make extensive use ofCatmull-Clark type subdivision surfacesfor a sophisticated commercial animatedcartoon. They favour subdivision surfaces

focussoftware48 Volume 2, Issue 2 Copyright © 2001 John Wiley & Sons, Ltd.

Physically realistic models areusually too computationally

expensive for today’s computers butare a very active area

of research.

A growth area in computer graphics of recent years

has been subdivision surfaces.

Figure 7 Free form deformation applied to a teapot

swf2.2_v2 8/8/01 6:55 am Page 48

Page 6: Models for character animation

Summer 2001 focus review

over parametric surfaces because of the‘considerable manual effort’ involved infitting these to each other and in keepingthem fitted without visible seamsappearing. They also use a variant ofsubdivision surfaces due to Hoppe et al.[66] which allows sharp edges to bepresent in the surface.

Subdivision surfaces provide an easilyimplemented representation which iscompatible with polygonal meshes. Theyshare all the advantages of parametricrepresentations (smoothness, few controlpoints) but are easily rendered and do nothave to be patched together. Adaptivemethods are needed to counter theproblem of overly dense meshes.

Displacement mapsIn order to display detail on a model (suchas detailed scanned data) an extra layer inthe hierarchy is needed. This may berepresented by a displacement map. Adisplacement map is generated from adetailed point pd by computing a normaln, a distance d and a point of intersectionon the control layer pc such that

pd=pc+dn.

The detailed layer can then bereconstructed by subdividing the controlmesh and rendering the model at thecorresponding displaced point. Thenormals used must be continuous on thecontrol model to ensure all detail pointscan be mapped and that the detailed layer

varies smoothly as the low resolution meshis deformed.

Krishnamurthy and Levoy [67] ensured acontinuous normal by calculatingdisplacements off a B-Spline surface.Hilton et al. [1][2] reconstruct a captureddetailed surface from a coarse controlmodel by computing a displacement mapfor each detailed point along a normal tothe coarse mesh (see Figure 11). Once themesh is deformed the detailed layer can bereconstructed by subdividing andremapping. The map is calculated in sucha way as to preclude detailed layerintersections and seams. A similarapproach is followed by Lee et al. [68]. Thedifference here is that the displacementmap is calculated on a subdivision surfacegenerated from the control mesh.

Displacement maps allow multiple level ofdetail representations simply by specifyinghow many times the control model shouldbe subdivided. This is a very useful tool forWeb-based animation since it allowsprogressive transmission of levels of detailand effective compression of the model.

Physically based animationPhysical animation methods are as diverseas their applications. Researchers havetackled problems in everything fromfinger nails and clothes to breasts andbuttocks. In fact, modeling muscle andskin layers is now a mature subject. Usuallysome spring model is set up connectingmuscles, skin and skeleton. Newton’s lawsof motion and Hook’s law of springs can be

used to derive differential equations for theskin and muscle motion. A simple modelfor a particle, r with mass M, dampingcoefficient γ, gravitational constant vector gand coefficient of elasticity k might bestated as,

d2 dM—r(t) = k(r(t) – r(0)) – Mg – γ—r(t).

dt2 dt

The terms on the right hand side are dueto elastic, gravitational and dampingforces respectively. Often elastic propertiesbetween particles are considered and then

a connectivity matrix of forces is added tothe model. A further sophistication is thenonlinear effect of allowing the coefficientof elasticity k to vary with its extension.This leads to a system of ordinarydifferential equations which are solvednumerically. The problem is constrainedby collisions between skin and skin andbetween skin and object.

An example of a fully integrated physicalsystem is that of Grobbetti and Turner [6].They present an interactive system calledLEMAN. The model has skeleton, bone

focussoftware 49Volume 2, Issue 2Copyright © 2001 John Wiley & Sons, Ltd.

Displacement maps allow multiplelevel of detail representations

simply by specifying how manytimes the control model should

be subdivided.

Figure 8 Reconstructed subdivision headmodel at three levels of detail

Figure 11 Head model mapped onto a cube

Figure 9 Representation of Loop subdivision:(a) original mesh; (b) new vertices inserted; (c) vertices relaxed

Figure 10 Representation of v3 subdivision:(a) new vertices inserted; (b) edges swapped;(c) vertices relaxed

swf2.2_v2 8/8/01 6:55 am Page 49

Page 7: Models for character animation

Summer 2001 focus review

and muscle, fat and skin layers. Theskeleton layer is a stick figure that can bemoved and in turn deforms a bone andmuscle layer. Fat is modelled simply as alayer of constant thickness with connectivetissue in between the skin and muscle. Theskin is then deformed by consideringforces from the muscles via connectivetissue as well as elastic, damping andgravitational forces. This requires solving asystem of differential equations using afinite difference numerical technique.Figure 12 depicts a similar framework.

Among the earlier physically realisticlayered models were Komatsu [69] whoadjusted parametric surface control pointsaccording to joint angles on a skeleton.Forsey [70] follows this approach but addsa hierarchy of control for detailedmovements. Chadwick et al. [57] are alsopioneers in this field (see earlier) as isGascuel [71] who used a simplified andcomputationally faster method. Sheattaches one end of a spring to a muscleand the other to the control points of a B-Spline skin layer. This also allows springsto affect nearby springs. Terzopoulos [72]invented dynamic NURBS wherebydifferential equations for Lagrangiandynamics are solved with a finite elementmethod to move the control points of astandard NURBS.

Thalmann et al. [16][73] use metaballs in alayered physical approach to muscledeformations They use a realistic skeletonand use designers to model eachindividual muscle. Wilhelms and VanGelder [74] also propose a workinganatomical model which with a minimunof computation. Physical modeling hasbeen strongly focused on facial animationby Lee et al. [75], Magnenat-Thalmann et al. [76] and Koch et al. [77][78]

An alternative to the mass spring model, isto consider the skin as an elastic surfacewhose shape is dictated by minimising itselastic energy. Koch et al. [77][78] write thetotal energy as,

E = α Stretching + β Bending dΩ. ∫Ω

if we consider a surface w(u, v) and noexternal forces, then

α Stretching = α1w2u + α2w2

v + α3wuwv

and

β Bending = β1w2uu + β2w2

uv + β3w2uv.

focussoftware50 Volume 2, Issue 2 Copyright © 2001 John Wiley & Sons, Ltd.

Figure 12 Layered model with springs

AcknowledgementsWe thank Robert Kruczera(www.3dcharacters.de) and Taron(www.taron.de) for their character art inFigures 2 and 3, and Jonathon Starck forFigure 5. We also thank the support of theEPSRC (grant number GR/L89518).Finally we would like to acknowledge thehelp of the Siggraph’s graphbib [90].

The energy is minimised over the surfacedΩ which gives the shape of the surface.The minimisation is usually done usingthe Finite Element Method (FEM),whereby piecewise polynomial functionsare defined on a triangulated surface suchthat the functions fit together at theirboundaries and this constructed surfaceminimises the energy function above.James and Pai [79] present the subject welland use a novel solver for theminimisation. Gourret et al. [80] use thismodel for grasping.

In most systems, physically realistic detailis patched on to an existing model.Examples of this kind of modeling arenumerous. Magnenat-Thalmann et al. haveresearched clothes [81][82][83], hair[84][85] and wrinkles [86]. Fingernails andclothes are also discussed in DeRose et al.[14]. Baraff and Witkin [87] study thenumerical stability problem for a mass-spring model of clothes.

Research in this area also overlaps withmedical applications [77][88][89].Interactive systems that use soft tissuemodels and collision detection arerequired by both applications. Mostphysically based modelling mentionedearlier requires so much computation thatit is suitable only for non-realtimeapplications. The three major problemspersist: solving large systems ofdifferential equations quickly, maintainingstability in the solving of these equationsand detecting collisions.

ConclusionCharacter animation is still a youngsubject and much work remains indeveloping new technologies, as well as inunderstanding old ones better. The drivesin computer animation research wouldseem to be towards greater interactivity,realism and more robust representations(such as fully adaptive polygonalrepresentations). It seems likely that withgreater computing power and newrendering hardware the goals of all thesefields will be met.

References[1] Sun W, Hilton A, Smith R & Illingworth J. Buildinglayered animation models from captured data.Eurographics Workshop on Computer Animation,September 1999: 145–154.

[2] Sun W, Hilton A, Smith R & Illingworth J. Layeredanimation of captured data. Visual Computer:International Journal of Computer Graphics 2001: toappear.

[3] Hoppe H. Progressive meshes. Proceedings ofSIGGRAPH ‘96, New Orleans, Louisiana, August 1996:99–108. ISBN 0-201-94800-1.

[4] 3dark. www.3dark.com.

[5] 3dtotal. www.3dtotal.com.

[6] Turner R & Gobbetti E. Interactive construction andanimation of layered elastically deformable characters.Computer Graphics Forum 1998; 17(2):135–152. ISSN1067-7055.

[7] Klosowski JT, Held M, Mitchell JSB, Sowizral H &Zikan K. Efficient collision detection using boundingvolume hierarchies of k-dops. IEEE Transactions onVisualization and Computer Graphics 1998; 4(1):21–36. ISSN 1077-2626.

[8] Niem W & Wingebermuhle J. Automaticreconstruction of 3D objects using a mobile monoscopiccamera. Proc. IEEE International Conferences on RecentAdvances in 3D Digital Imaging and Modeling, Ottawa,Canada, pages 173–180, 1997.

[9] Fitzgibbon AW, Cross G & Zisserman A. Automatic 3Dmodel construction for turn-table sequences. Structurefrom Multiple Images of Large-Scale Environments (KochR, & Van Gool L (eds)), LNCS 1506, pages 155–170.Springer-Verlag, June 1998.

[10] Atkinson KB. Close Range Photogrammetry andMachine Vision. Whittles Publishing, 1996.

[11] Faugeras O. Three-Dimensional Computer Vision ñ AGeometric Viewpoint. MIT Press, 1993.

[12] Hartley R & Zisserman A. Multiple View Geometry inComputer Vision. Cambridge University Press, 2000.

[13] Kanade T & Rander P. Virtualized reality:Constructing virtual worlds from real scenes. IEEEMultiMedia, 4(2): 34–47, 1997.

[14] Debevec PE, Taylor CJ & Malik J. Modeling andrendering architecture from photographs. In Proc.ACMSIGGRAPH, 1996.

[15] Fua P & Miccio C. Animated Heads from OrdinaryImages: A Least Squares Approach. Computer Vision andImage Understanding, (to appear), 2000.

[16] Hilton A, Beresford D, Gentils T, Smith R, Sun W &Illingworth J. Whole-body modelling of people from multi-view images to populate virtual worlds. Visual Computer:International Journal of Computer Graphics, 16(7):411–436, 2000.

[17] 3dScanners. www.3dscanners.com.

[18] Hilton A & Illingworth J. Geometric fusion for ahand-held 3D sensor. Machine Vision Applications 2000;12(1): 44–51.

[19] Hilton A, Smith R & Sun W. Layered animationusing displacement maps. In: IEEE InternationalConference on Computer Animation, May 2000:146–154.

[20] Curless B & Levoy M. A volumetric method forbuilding complex models from range images. In: ACMComputer Graphics Proceedings, SIGGRAPH, NewOrleans, USA, 1996: 303–312.

swf2.2_v2 8/8/01 6:55 am Page 50

Page 8: Models for character animation

Copyright © 2001 John Wiley & Sons, Ltd.

Summer 2001 focus review

[21] Hilton A, Stoddart AJ, Illingworth J & Windeatt T.Reliable surface reconstruction from multiple rangeimages. In: 4th European Conference on ComputerVision, Springer, 1996: 117–126.

[22] Rutishauser M, Stricker M & Trobina M. Mergingrange images of arbitrarily shaped objects. In:Proceedings of IEEE Conference on Computer Vision andPattern Recognition, 1994: 573–580.

[23] Turk G & Levoy M. Zippered polygon meshes fromrange images. In: ACM Computer Graphics Proceedings,SIGGRAPH, Orlando, Florida, 1994: 311–318.

[24] Soucy M & Laurendeau D. A general surfaceapproach to the integration of a set of range views. IEEETrans. Pattern Analysis and Machine Intelligence 1995;14(4): 344–358.

[25] Hilton A, Stoddart AJ, Illingworth J & Windeatt T.Implicit surface based geometric fusion. InternationalJournal of Computer Vision and Image Understanding,Special Issue on CAD Based Vision 1998; 69(3):273–291.

[26] Bittar E, Tsingos N & Gascuel M-P. Automaticreconstruction of unstructured 3D data: Combining amedial axis and implicit surface. Computer GraphicsForum 1995; 14(3): 458–468.

[27] Edelsbrunner H & Mucke E. Weighted alpha shapes.ACM Transactions on Graphics 1994; 13(1): 43–72.

[28] Hoppe H, DeRose T, Duchamp T, McDonald J &Stuetzle W. Surface reconstruction from unorganisedpoints. Computer Graphics 1992; 26(2): 71–77.

[29] Mencl R. A graph-based approach to surfacereconstruction. In EUROGRAPHICS 1995; 14(3):446–456.

[30] Mencl R & Muller H. Graph-based surfacereconstruction using structures in scattered point sets.Computer Graphics International, 1998: 298–311.

[31] Ramamoorthi R & Arvo J. Creating generative modelsfrom range images. Proceedings of SIGGRAPH ‘99, LosAngeles, California, August 1999: 195–204. ISBN 0-20148-560-5.

[32] Watt A & Watt M. Advanced Animation andRendering Techniques. ACM Press, 1999.

[33] Besl P. Triangles as a primary representation. ObjectRepresentation in Computer Vision ( Hebert M, Ponce J,Boult T & Gross A (eds)), Lecture Notes in ComputerScience 1994. Springer, 1994: 191–206.

[34] Farin G. Curves and Surfaces for Computer AidedGeometric Design: A Practical Guide (2nd edn).Academic Press, 1994.

[35] DeRose T, Kass M & Truong T. Subdivision surfacesin character animation. Proceedings of SIGGRAPH ‘98,Orlando, Florida, July 1998: 85-94. ISBN 0-89791-999-8.

[36] Shen J & Thalmann D. Interactive shape designusing metaballs and splines. Implicit Surfaces ‘95, April1995.

[37] Babski C & Thalmann D. A seamless shape forhanim compliant bodies. VRML 99: Fourth Symposiumon the Virtual Reality Modeling Language, Paderborn,Germany, February 1999: 21–28. ISBN 1-58113-079-1.

[38] Desbrun M & Gascuel M-P. Animating softsubstances with implicit surfaces. Proceedings ofSIGGRAPH ‘95, Los Angeles, California, August 1995:287–290. ISBN 0-201-84776-0.

[39] Barr AH. Global and local deformations of solidprimitives. Proceedings of SIGGRAPH ‘84, 1984.

[40] Chang Y-K & Rockwood AP. A generalized deCasteljau approach to 3D free-form deformation.Proceedings of SIGGRAPH ‘94, Orlando, Florida, July1994: 257–260. ISBN 0-89791-667-0.

[41] Maestri G. Digital Character Animation. New RidersPublishing, 1996.

[42] Roehl B. Draft Specification for a Standard VRMLHumanoid, Version 1.0. http://ece.uwaterloo.ca/h-anim/,1997.

[43] Babski C & Thalmann D. 3D graphics define virtualhumans on the web. Software Focus, 1(1), 2000.

[44] Ostermann J. Animation of synthetic faces in mpeg-4. Computer Animation ‘98, June 1998. Held inPhiladelphia, Pennsylvania, USA.

[45] Magnenat-Thalmann N & Thalmann D. Human bodydeformations using joint-dependent local operators and

focussoftware 51Volume 2, Issue 2

finite-element theory. Making Them Move: Mechanics,Control, and Animation of Articulated Figures. 1991:243–262.

[46] Maurel W & Thalmann D. Human shouldermodeling including scapulo-thoracic constraint and jointsinus cones. Computers & Graphics 2000; 24(2):203–218. ISSN 0097-8493.

[47] Lewis JP, Cordner M & Fong N. Pose spacedeformations: A unified approach to shape interpolationand skeleton-driven deformation. Proceedings ofSIGGRAPH 2000, July 2000: 165–172. ISBN 1-58113-208-5.

[48] Sederberg TW & Parry SR. Free-form deformation ofsolid geometric models. Computer Graphics (Proceedingsof SIGGRAPH ‘86), Dallas, Texas, August 1986; 20(4):151–160.

[49] Bechmann D, Bertrand Y & Thery S. Continuous freeform deformations. Proceedings Compugraphics ‘96,1996.

[50] Hagenlocker M & Fujimura K. Cffd: a tool fordesigning flexible shapes. The Visual Computer 1998;14(5-6): 271–287. ISSN 0178-2789.

[51] Moccozet L & Thalmann NM. Dirichlet free-formdeformations and their application to hand simulation.Computer Animation ‘97, Geneva, Switzerland, June1997.

[52] Raffin R, Neveu M & Jaar F. Curvilineardisplacement of free-form-based deformation. The VisualComputer 2000; 16(1): 38–46. ISSN 0178-2789.

[53] Coquillart S. Extended free-form deformation: Asculpturing tool for 3D geometric modeling. ComputerGraphics (Proceedings of SIGGRAPH ‘90), Dallas, Texas,August 1990; 24(4): 187–196. ISBN 0-201-50933-4.

[54] Coquillart S & Jancéne P. Animated free-formdeformation: An interactive animation technique.Computer Graphics (Proceedings of SIGGRAPH ‘91), LasVegas, Nevada, July 1991; 25(4): 23–26. ISBN 0-201-56291-X.

[55] MacCracken R & Joy KI. Free-form deformationswith lattices of arbitrary topology. Proceedings ofSIGGRAPH ‘96, New Orleans, Louisiana, August 1996:181–188. ISBN 0-201-94800-1.

[56] Faloutsos P, van de Panne M & Terzopoulos D.Dynamic free-form deformations for animation synthesis.IEEE Transactions on Visualization and ComputerGraphics 1997; 3(3): 201–214. ISSN 1077-2626.

[57] Chadwick JE, Haumann DR & Parent RE. Layeredconstruction for deformable animated characters.Computer Graphics (Proceedings of SIGGRAPH ‘89),Boston, Massachusetts, July 1989; 23(3): 243–252.

[58] Hirota G, Maheshwari R & Lin MC. Fast volume-preserving free-form deformation using multi-leveloptimization. Computer-Aided Design 2000; 32(8-9):499–512. ISSN 0010-4485.

[59] Rappaport A, Sheffer A & Bercovier M. Volume-preserving free-form solids. IEEE Transactions onVisualization and Computer Graphics 1996; 2(1):19–27. ISSN 1077-2626.

[60] Loop C. Smooth subdivision surfaces based ontriangles. Master’s Thesis, Utah University, 1987.

[61] Dyn N, Levin D & Gregory JA. A butterfly subdivisionscheme for surface interpolation with tension control. ACMTransactions on Graphics 1990; 9(2): 160–169. ISSN0730-0301.

[62] Zorin D, Schröder P & Sweldens W. Interpolatingsubdivision for meshes with arbitrary topology.Proceedings of SIGGRAPH ‘96, New Orleans, Louisiana,August 1996: 189–192. ISBN 0-201-94800-1.

[63] Catmull E & Clark J. Recursively generated B-splinesurfaces on arbitrary topological meshes. Computer-AidedDesign 1978; 10: 350–355.

[64] Doo D & Sabin M. Behaviour of recursive divisionsurfaces near extraordinary points. Computer-AidedDesign 1978; 10: 356–360.

[65] Kobbelt L. v3 subdivision. Proceedings ofSIGGRAPH 2000, July 2000: 103–112. ISBN 1-58113-208-5.

[66] Hoppe H, DeRose T, Duchamp T, Halstead M, JinH, McDonald J, Schweitzer J & Stuetzle W. Piecewisesmooth surface reconstruction. Proceedings ofSIGGRAPH ‘94, Orlando, Florida, July 1994: 295–302.ISBN 0-89791-667-0.

[67] Krishnamurthy V & Levoy M. Fitting smooth surfaces

to dense polygon meshes. Proceedings of SIGGRAPH‘96, New Orleans, Louisiana, August 1996: 313–324.ISBN 0-201-94800-1.

[68] Lee A, Moreton H & Hoppe H. Displaced subdivisionsurfaces. Proceedings of SIGGRAPH 2000, July 2000:85–94. ISBN 1-58113-208-5.

[69] Komatsu K. Human skin model capable of naturalshape variation. NHK Lab. Note (Japan) 1986; 329:1,3–12.

[70] Forsey DR. A surface model for skeleton-basedcharacter animation. Eurographics, 1991.

[71] Gascuel M-P, Verroust A & Puech C. Animation andcollisions between complex deformable bodies. GraphicsInterface ‘91, June 1991: 263–270.

[72] Terzopoulos D & Qin H. Dynamic nurbs withgeometric constraints for interactive sculpting. ACMTransactions on Graphics 1994; 13(2): 103–136. ISSN0730-0301.

[73] Nedel LP & Thalmann D. Anatomic modeling ofdeformable human bodies. The Visual Computer 2000;16(6): 306–321. ISSN 0178-2789.

[74] Wilhelms J & Van Gelder A. Anatomically basedmodeling. Proceedings of SIGGRAPH ‘97, Los Angeles,California, August 1997: 173–180. ISBN 0-89791-896-7.

[75] Lee Y, Terzopoulos D & Waters K. Realistic modelingfor facial animation. Proceedings of SIGGRAPH ‘95, LosAngeles, California, August 1995: 55–62. ISBN 0-201-84776-0.

[76] Escher M, Pandzic I & Magnenat-Thalmann N.Facial deformations for mpeg-4. Computer Animation‘98, Philadelphia, Pennsylvania, USA, June 1998.

[77] Koch RM, Gross MH, Carls FR, von Büren DF,Fankhauser G & Parish Y. Simulating facial surgery usingfinite element methods. Proceedings of SIGGRAPH ‘96,New Orleans, Louisiana, August 1996: 421–428. ISBN0-201-94800-1.

[78] Koch RM, Gross MH & Bosshard A. Emotion editingusing finite elements. Computer Graphics Forum 1998;17(3): 295–302. ISSN 1067-7055.

[79] James DL & Pai DK. Artdefo - accurate real timedeformable objects. Proceedings of SIGGRAPH ‘99, LosAngeles, California, August 1999: 65–72. ISBN 0-20148-560-5.

[80] Gourret J-P, Magnenat-Thalmann N & Thalmann D.Simulation of object and human skin deformations in agrasping task. Computer Graphics (Proceedings ofSIGGRAPH ‘89), Boston, Massachusetts, July 1989;23(3): 21–30.

[81] Thalmann NM, Carion S, Courchesne S, Volino P &Wu Y. Virtual clothes, hair and skin for beautiful topmodels. Computer Graphics International 1996, 1996.

[82] Hadap S, Bangarter E, Volino P & Magnenat-Thalmann N. Animating wrinkles on clothes. IEEEVisualization ‘99, San Francisco, California, October1999: 175–182. ISBN 0-7803-5897-X.

[83] Volino P & Magnenat-Thalmann N. Real-timesimulation of clothes. Computer Graphics International2000, Geneva, Switzerland, June 2000.

[84] Daldegan A, Magnenat-Thalmann N, Kurihara T &Thalmann D. An integrated system for modeling,animating and rendering hair. Computer Graphics Forum(Eurographics ‘93), Oxford, UK, 1993; 12(3): 211–221.

[85] Hadap S & Magnenat-Thalmann N. Interactive hairstyler based on fluid flow. Computer Animation andSimulation 2000, August 2000: 87–99. ISBN 3-211-83392-7.

[86] Wu Y, Kalra P, Moccozet L & Magnenat-ThalmannN. Simulating wrinkles and skin aging. The VisualComputer 1999; 15(4): 183–198. ISSN 0178-2789.

[87] Baraff D & Witkin A. Large steps in cloth simulation.Proceedings of SIGGRAPH ‘98, Orlando, Florida, July1998: 43–54. ISBN 0-89791-999-8.

[88] Bro-Nielsen M & Cotin S. Real-time volumetricdeformable models for surgery simulation using finiteelements and condensation. Computer Graphics Forum1996; 15(3): 57–66. ISSN 1067-7055.

[89] Meseure P & Chaillou C. A deformable body modelfor surgical simulation. The Journal of Visualization andComputer Animation 2000; 11(4): 197–208. ISSN1049-8907.

[90] Graphbib.http://www.siggraph.org/publications/bibliography/.

swf2.2_v2 8/8/01 6:55 am Page 51