Computer Animation: Algorithms and Techniques / Edition 2

Hardcover (Print)
Used and New from Other Sellers
Used and New from Other Sellers
from $3.98
Usually ships in 1-2 business days
(Save 95%)
Other sellers (Hardcover)
  • All (10) from $3.98   
  • New (2) from $105.00   
  • Used (8) from $3.98   
Sort by
Page 1 of 1
Showing All
Note: Marketplace items are not eligible for any coupons and promotions
Seller since 2015

Feedback rating:



New — never opened or used in original packaging.

Like New — packaging may have been opened. A "Like New" item is suitable to give as a gift.

Very Good — may have minor signs of wear on packaging but item works perfectly and has no damage.

Good — item is in good condition but packaging may have signs of shelf wear/aging or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Acceptable — item is in working order but may show signs of wear such as scratches or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Used — An item that has been opened and may show signs of wear. All specific defects should be noted in the Comments section associated with each item.

Refurbished — A used item that has been renewed or updated and verified to be in proper working condition. Not necessarily completed by the original manufacturer.

Brand new.

Ships from: acton, MA

Usually ships in 1-2 business days

  • Standard, 48 States
  • Standard (AK, HI)
Seller since 2015

Feedback rating:


Condition: New
Brand new.

Ships from: acton, MA

Usually ships in 1-2 business days

  • Standard, 48 States
  • Standard (AK, HI)
Page 1 of 1
Showing All
Sort by


Whether you're a programmer developing new animation functionality or an animator trying to get the most out of your current animation software, Computer Animation: Algorithms and Techniques will help work more efficiently and achieve better results. For programmers, this book provides a solid theoretical orientation and extensive practical instruction-information you can put to work in any development or customization project. For animators, it provides crystal-clear guidance on determining which of your concepts can be realized using commercially available products, which demand custom programming, and what development strategies are likely to bring you the greatest success.

• Expert instruction from a pace-setting computer graphics researcher.
• Provides in-depth coverage of established and emerging animation algorithms.
• For readers who lack a strong scientific background, introduces the necessary concepts from mathematics and physics.
• Illustrates advanced programming techniques with highly detailed working examples.
• Via the companion Web site, provides lecture notes from the author's course for professors, example animations based on the programs covered in the book, Java applets, and links to relevant Web sites.
• Special contributions from Dave S. Ebert on Natural Phenomena in Chapter 5
• Special contributions from Scott King, Meg Geroch, Doug Roble, and Matt Lewis on Articulated Figures in Chapter 6.

Audience: Computer science students and computer programmers interested in programming techniques used to produce computer animation. Titles include: Technical directors, modelers, graphics programmers, animators, and computer graphics researchers, students, and hobbyists.

Read More Show Less

Editorial Reviews

From Barnes & Noble
For years, Rick Parent's Computer Animation has been praised as an exceptionally accessible introduction to the technical, mathematical, and scientific foundations of 3D digital animation. Fully reflecting major advances in the field, Parent's Second Edition covers an enormous amount of new material -- but it still offers the clarity and detail that made the original so popular. If you really want to understand what's going on underneath the hood of your animation software -- and if you want to accomplish things that can't be done with out-of-the-box tools -- this is the place to start.

Parent starts with a quick survey of the background material you need to be effective, from the basics of animation production to the rendering pipeline. Next, he turns to the technique much of CG is built upon: interpolation. Thoroughly understanding how to interpolate values gives you a foundation for the core techniques he covers next, including deformation and morphing.

Computer Animation then introduces kinematics (including forward and reverse kinematics, as well as forward dynamics). There's a full chapter on motion capture, showing how markers can be processed and how the resulting data can be modified.

After you walk through physics-based animation and fluid modeling, Parent carefully introduces techniques for animating living creatures: constructing and clothing figures, creating realistic facial expressions, lip-syncing, crowd behavior, even building "predator-prey" models. In the final chapter, he introduces three important "special models": implicit surfaces, subdivision surfaces, and L-systems for creating highly realistic animated plants and trees.

As you move through the book, the algorithms move to higher levels and greater sophistication. Parent illuminates many of them with code examples. Sometimes, he uses working C code; other times, where it's clearer, C-like pseudocode. The code is just one of the ways Parent demystifies one of today's most complex disciplines. Bill Camarda, from the December 2007 Read Only

From The Critics
Written for graphics programmers and animators, this textbook and guide covers techniques at various levels of complexity and includes background information on the underlying mathematics and physics concepts. It outlines the history of animation, and introduces key concepts like rendering, transformation, and orientation representation. Advanced techniques are illustrated with detailed working examples. Parent teaches computer graphics and animation at Ohio State University. Annotation c. Book News, Inc., Portland, OR (
From the Publisher
"This is hands-down my recommendation on computer animation techniques." —Larry Gritz, Exluna/Nvidia
Read More Show Less

Product Details

  • ISBN-13: 9780125320009
  • Publisher: Elsevier Science
  • Publication date: 9/27/2007
  • Series: Morgan Kaufmann Series in Computer Graphics Series
  • Edition description: Older Edition
  • Edition number: 2
  • Pages: 624
  • Product dimensions: 7.40 (w) x 9.30 (h) x 1.20 (d)

Meet the Author

Rick Parent is an Associate Professor at Ohio State University, where he teaches computer graphics and computer animation. His research in computer animation focuses on its relation to modeling and animating the human figure, with special emphasis on geometric modeling and implicit surfaces. Rick earned a Ph.D. in computer science from Ohio State University and a Bachelor's degree in computer science from the University of Dayton. In 1977, he was awarded "Outstanding Ph.D. Thesis Award" (one of four given nationally) by the NCC. He has served on numerous SIGGRAPH committees, in addition to the Computer Graphics International 2000 Program Committee and the Computer Animation '99 Program Committee and is on the editorial board of the Visual Computer Journal.

Read More Show Less

Read an Excerpt

Chapter 4

Advanced Algorithms

Animators are often more concerned with the general quality of the motion than with precisely controlling the position and orientation of each object in each frame. Such is the case with physical simulations; when dealing with a large number of objects; when animating objects whose motion is constrained in one way or another; or when dealing with objects in the background whose precise motion is not of great importance to the animation. This chapter is concerned with the algorithms that employ some kind of structured model approach to producing motion. The structure of the model automatically enforces certain qualities or constraints on the motion to be generated. The use of a model eliminates the need for the animator to be constantly concerned with specifying details of the motion. Instead, those details are filled in by the model. Of course, by using these models, the animator typically loses some fine control over the motion of the objects. The model can take various forms, such as enforcing relative placement of geometric elements, enforcing nonpenetration constraints, calculating reaction to gravity and other forces, enforcing volume preservation, or following rules of behavior.

Motion is produced by the combination of the constraints and rules of the model with additional control information from the user.

This chapter discusses both kinematic and dynamic models. Kinematic control ` refers to the movement of objects irrespective of the forces involved in producing the movement. For example, the interpolation techniques covered in the previous chapter are concerned with kinematic control. Several of the algorithms given here are also kinematic in nature, such as those having to do with the control of linked armatures. Dynamic control is concerned with computing the underlying forces that are then used to produce movement. Among the dynamic control algorithms are those that are physically based.

In the discussion that follows, kinematic models are covered first, then hierarchical models and the associated use of forward and inverse kinematic control. Rigid body dynamics and the use of constraints, which are primarily concerned with dynamic control, are then discussed, followed by techniques to control groups of objects. The chapter concludes with a discussion of animating implicit surfaces.

4.1 Automatic Camera Control

One simple example of using a procedure or algorithm for control is the specification of the position and orientation of the camera. Various guidelines are employed in the art of filmmaking for positioning the camera so as to capture conversation, follow action, and emphasize spatial qualities such as vastness or intimacy [6]. These guidelines primarily address aesthetic concerns; the discussion here focuses on basic computational models for calculating camera motion based on the geometric configuration of the elements in the scene.

Often, the animator is more concerned with effectively showing an action taking place than with getting a particular camera angle. When using high-level algorithms to control the motion of objects, the animator may not be able to anticipate the exact, or even general, position of objects during the animation sequence. As a consequence, it is difficult for the animator to know exactly how to position and orient the camera so that the important action will be captured in the image. In such cases, it is often useful to have the camera position and center-ofinterest location automatically generated for each frame of the animation. There are several ways to automatically set up camera control; the choice depends on the effect desired in the animation.

A common way to automatically control the camera is to place the camera position and/or center of interest relative to the positions of one or more objects in the animation. (A simplifying assumption, which will be used for now, is that the camera will maintain a head-up orientation during the motion.) A static camera can be used to track an object by attaching the center of interest to the object's center point. If a group of objects move together, then the average of their locations can be used as the cameras center of interest. This works as long as other moving objects do not get in the way and the object (or group of objects) of interest does not move too far away.

The camera can closely follow a widely roaming object by locating the position of the camera relative to the moving object. For example, a constant global offset vector can be used to position the camera relative to the center of interest; the offset vector can also be relative to the tracked object's local coordinate system. Sometimes it is useful to constrain the cameras position to a predefined plane or along a line segment or curve. The closest point on the constraining element to the center of interest can be calculated and used as the camera location. For example, in some situations it might make sense to keep the camera at a specified altitude (constrained to be located on a plane parallel with the ground plane) so that it can capture the action below. Other constraints can also be used, such as distance between the camera position and the center of interest and/or the angle made by the view vector with the ground plane.

Such precise calculations of a camera location can sometimes result in movements that are too jerky if the objects of interest change position too rapidly. If the camera motion can be precomputed (the animation is not being generated interactively or in real time), then smoothing the curve by averaging each point with some number of adjacent points will smooth out the curve. Attaching the camera or center of interest with a spring and damper, instead of rigidly, can help to smooth out the motion. For example, to track a flock of birds, the center of interest can be attached to the center of the flock and the camera can be attached by a spring-damper combination (see Section 4.3 for a discussion of modeling dynamics and Appendix B for the basic equations of motion) to a location that is to the back and side of this position.

It is useful during animation development to define cameras whose only purpose is to inspect the motion of other objects. A camera can be attached to the front or "over the shoulder" of an object moving in an environment, or it can be attached to a point directly above an object of interest with the center of interest coinciding with the object. To check facial expressions and eye movements, a camera can be positioned directly in front of an object with the center of interest positioned on the figure's face.

Although automatic control of the camera is a useful tool, as with most automated techniques, the animator trades off control for ease of use. Efficient use of automatic control requires experience so that the quality of the results can be anticipated beforehand.

Read More Show Less

Table of Contents

Ch. 1 Introduction 1
Ch. 2 Technical Background 31
2.1 Spaces and Transformations 31
2.2 Orientation Representation 51
Ch. 3 Interpolation and Basic Techniques 63
3.1 Interpolation 63
3.2 Controlling the Motion Along a Curve 68
3.3 Interpolation of Rotations Represented by Quaternions 97
3.4 Path Following 102
3.5 Key-Frame Systems 116
3.6 Animation Languages 120
3.7 Deforming Objects 124
3.8 Morphing (2D) 143
3.9 3D Shape Interpolation 153
Ch. 4 Advanced Algorithms 173
4.1 Automatic Camera Control 174
4.2 Hierarchical Kinematic Modeling 175
4.3 Rigid Body Simulation 203
4.4 Enforcing Soft and Hard Constraints 231
4.5 Controlling Groups of Objects 241
4.6 Implicit Surfaces 261
Ch. 5 Natural Phenomena 271
5.1 Plants 272
5.2 Water 283
5.3 Gaseous Phenomena 296
Ch. 6 Modeling and Animating Articulated Figures 317
6.1 Reaching and Grasping 318
6.2 Walking 327
6.3 Facial Animation 339
6.4 Overview of Virtual Human Representation 353
6.5 Layered Approach to Human Figure Modeling 358
6.6 Cloth and Clothing 361
6.7 Motion Capture 369
App. A Rendering Issues 385
App. B: Background Information and Techniques 409
Index 509
About the Author 529
Read More Show Less


From its novel and experimental beginnings over thirty years ago, computer animation has grown to become a mainstream artistic tool in the hugely active industries of motion films, television and advertising. The area has attracted many computer scientists, artists, animators, designers, and production people.

The past decade has been a particularly exciting period in computer animation both for those engaged in the field and for the audiences of the many films that have used the technology. It has been exciting to see animation that could not have been done any other way, as well as films with special effects that blend animation and live action so well as to make them indistinguishable. Underlying this enormous activity is the set of algorithms that comprise the actual software engine of computer animation, defining the powers of expression that are available to the animator. With the industry's maturity has come the need for a textbook that captures the art and mathematics behind the technology and that can serve as both an archival record and a teaching manual. With Computer Animation: Algorithms and Techniques, Rick Parent has done a terrific job of meeting this need. He has worked in the area of computer animation since its early days in the seventies, first as a student and now as a professor on the faculty at Ohio State University as well as a consultant and entrepreneur.

Just as we at the National Research Council of Canada were fortunate to work with artists and animators in the early days of developing computer animation techniques, so was Rick Parent at Ohio State University. Whereas we worked under the leadership of Nestor Burtnyk primarily in 2D layered cel animation, Rick embarked on applying 3D graphics methods that have become the basis of most commercial computer animation today. Because of this experience, Rick's book is both academically rigorous and eminently practical, presenting a thorough and up-to-date treatment of the algorithms used in computer animation.

Marceli Wein
Kingston, Ontario

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Terms of Use.
  • - Barnes & reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)