Spring 1999 CS302 Assignment #5

by Dan Garcia (ddgarcia@cs.berkeley.edu)

In Taxonomy of Educational Objectives, Handbook I: Cognitive Domain (McKay Publishing, 1956), B. S. Bloom proposes the following hierarchy of categories of questions or exercises. Design five homework exercises in each category. Try to spread them throughout your course, e.g. by having one exercise from each category in each two-week period. (It's OK to base some of them on your case study)

Recall (lowest level)

  1. List three people and films who made significant contributions to computer animation.
  2. Illustrate all steps of the keyframe-based animation process.
  3. List three reasons one would use computer animation.
  4. What are fractals and what are they used for in computer animation?
  5. Explain three research areas of computer graphics and animation.

Comprehension, translation, interpretation

  1. Take the Infini-D tutorial and teach yourself how to use this simple animation tool.
  2. For each of the following options, think of a situation where that method is the clearly the winner. What does Infini-D allow us to do? When the program allows us to "duplicate" an object or subtree, is that making a copy or adding another pointer to the same object?
  3. If you've ever seen the cartoon the Roadrunner you'll recall what happens whenever Wile E. Coyote notices he's run off the cliff. He doesn't fall until he looks down. When he does begin to fall, first his feet fall, then his legs, then his body, then his head, as if they're connected by springs. Think how you might implement this into a hierarchy. Would you want a realistic physical model of a spring and damper? Would you want the control to change the laws of physics to suit you in interesting ways? Would you want to have to manually change every component or would you want some parts of the system be secondary animation, like the way clothes move?
  4. Explain the difference between forward- and inverse-kinematics, and one way to solve the inverse problem.
  5. What is "easing out" and describe a function y = f(x) that would implement it.

Application to concrete situations

  1. Design an articulated figure on paper. Project it to the three walls: top, front and side. Use the provided robot example as a model.
  2. Using the software program Morph 1.5, morph yourself into your classmate and put the resulting movie on the web. We will concatenate these to form one continuous morph movie.
  3. Animate your articulated figure. Show off the aspects of your model, e.g., if you've created arms with four linkages, make sure to move them in interesting ways.
  4. Create a sound track for your animation using any of the sounds from the sound effect CDROM or sounds you create yourself, and create one coherent sound track on which to base the timing of your final animation.
  5. Light and determine the camera paths for your final animation. This will involve choosing which lights to use, and what the pose (position and orientation) of your camera and lights will be over time.

Analysis via recognizing relationships, discriminating elements, or picking out forms and patterns

  1. Contrast computer animation with traditional animation (e.g. what is hard in each, when would you use one over the other).
  2. Watch the movie Tron and discuss three places where the level of the animation seemed to be limited by the technology available at the time. How would these scenes be created today?
  3. Indicate three components of the animation process where pre-computation is more efficient than rendering everything on the fly and explain why.
  4. Discuss the evolution of facial animation in the first four Pixar short films. Why did they choose to model the faces the way they did? Was their decisions driven by technology, creativity, time or some other factor?
  5. Consider the entire process of creating your final animation. What was the most tedious? What could be automated by a computer? What could be completed in parallel?

Synthesis that brings together elements of the material in new relationships or combinations

  1. Using your understanding of squash, stretch and exaggeration, and of the importance of a good story, create a stick figure flip-book animation using Post-Ittm note pads.
  2. Using your understanding of squash, stretch and exaggeration, and of the importance of a good story, create a stick figure animation using the drawing tools explained in lab section. Afterwards, contrast the differences between the process of creating that animation and the hand-drawn Post-It animation. How much did the technology affect or limit your creativity? Which tools did you use in the computer drawing program that you wish were available in real life? If you were commisioned to create another small stick figure animation, would you do it by hand or on the computer, and why?
  3. Using your understanding of hierarchies and transformations, create a simple spreadsheet describing the transformations involved in implementing the hierarchies of your articulated figure. Use the provided robot example as a model.
  4. Using your understanding of the elements in a good story, create your own story for your final animation. Supplement it with a storyboard to explain the blocking of the characters at key scenes.
  5. Explain how you would model the following objects: snow, clouds, fire and hair.


Evaluation is inherent in the group critique which occurs every Monday. Students are to pretend they are high-paid directors for a large animation project and must oversee every step in the process. Just as in a photography or art class, students learn how to evaluate each others' work, and provide and listen to constructive criticism. There is some component of the final grade which is based on their participation in these crit sessions.

  1. Group critique your classmates' flip-book animations.
  2. Group critique your classmates' stick figure animations.
  3. Group critique your classmates' articulated model.
  4. Group critique your classmates' final animation story ideas.
  5. Group critique your classmates' final animation near-final draft.

WWW Maven: Dan Garcia (ddgarcia@cs.berkeley.edu) Send me feedback

Teaching cs302