CSC2529 Character Animation Short
hoop dreams
by Martin de Lasa

mpg (11.4MB)
avi (18.3MB) [ requires DivX5.2.1 ]


Produce a 15-30 sec. animation involving two interacting characters. Maya should be used to learn the workings of a commercial animation system. Everything must be done from scratch, including modeling, rigging, animating, etc. Consider using MEL scripts or writing plugins to simplify workflow. Try and be as creative and artistic as you can.


What happens at the playground when all the kids go home? This animation explores this idea, showing that toys can have fun even when kids aren't around. In this short, a basketball comes to life and wants to shoot some hoops. Once he confirms the coast is clear, he calls on his friend the soccer ball to put the playground equipment to good use.

The animation's storyboard is shown below:

One of my goals in creating this animation was to see how much I could convey, using a minimalist set, characters, shading, etc. During one of my many early web searches for Maya tutorials, I stumbled across Ben & Mary at DigiZen. Though just over a minute in length, I was impressed by the animator's ability to convey so much through the characters' body language.


The models for the characters in this animation are quite straigthforward. The basketball was modeled using a NURBS sphere and the soccer ball used an OBJ model of a bucky-ball I had from a previous project. To make the basketball more interesting, I texture mapped it using a downloaded texture map.

Using Maya's FFD lattices, simple NURBS surfaces were deformed to create faces for the characters. The reference face, consisting of eyes, a nose, a mouth, and eye brows, was again deformed using FFD lattices to create a few facial expressions for the character. These expressions were then added as attributes to the character and combined using "Blend Shape". From my story board, I concluded that I would need to convey happiness and suspicion. To make the suspcious expression a little more rich, I added two sub-types of suspicion (ie. suspicious/looking right and suspicious/looking left ). I also used the blend-shape to create eye blinking. The blend shapes for the basketball are shown below.

Blend Shapes

Though we discussed blend shapes and adding attributes in class, I found this tutorial to be a good refresher, particularly to get the attribute addition correct.

After experimenting with Maya's IK and Smooth Skin binding, I decided that adding a simple skeleton to the ball would provide an intuitive way of controling its motion and of acheiving the "squash", "stretch" we talked about in class when discussing the fundamental laws of animation. The below figure shows the skeleton for the basket ball.



Once the set had been modeled and the character rigged, the scene was animated. To get a convincing motion for the passive ball bouncing into the scene, Maya's rigid body dynamics solver was used to simulate a ball. I iterated a few times on the simulation initial conditions until the ball ended up in approximately the desired spot. Once simulated, the motion was " baked " and applied to the basketball character.

The remainder of the scene was animated using a combination of key-framing and curve editing (ie. using the graph editor). The graph editor was particularly useful to get the squash/stretch and support/flight timing correct in the ball's bouncing gait. This tool also made it easy to quickly reapply the same gait to a character. Each character was given a slightly different boucing gait to add richness to the animation.

Lastly, a particle emitter was attached to the basketball, to create a smoke rail behind the basketball as it flies through the air towards the hoop. I found an old Alias Taste of Maya tutorial that got me going, though many enhancements in the more recent version of Maya I was using, simplified this task.


Once I was satisfied with each character's motion, the camera was key framed. I decided to have the camera follow the basketball through the hoop, to further empasizing the dynamic nature of the animation.


Once animated, the scene needed to be rendered. Once again, I aimed for a minimalist color scheme that didn't detract from the scenes' protagonists. Though I had originally texture mapped the teeter-totter with a wood texture and various parts of the basketball hoop with a rusted metallic texture, I decided to simplify the scene. An anisotropic shader was used for the set, to create a muted background. Various blinn shaders were created for shiny/reflective scene objects.

Post Production

Adobe Premiere 6.0 was used to put the finishing touches on the animation. This included synchronization of the animation to music and special effects, as well as addition of transitions and title/end slides. I did a little gaffing using the built in Windows sound recorder to create the pseudo-conversation between the characters. To get that "Alvin and the Chipmunks" vibe, I sped up most of the recorded sounds. Here are a few samples [ ok | hmmm | uhuh | yahoo ]. The animations soundtrack is a fun little tune I found while surfing for sound clips.


This assignment was a fun exercise in developing a short animation from beginning to end. A good deal of this task's effort was learning Maya's "nuances" and becoming accustomed to the tool's workflow. I must admit that I significantly underestimated the effort required to model and rig a character. The up-front cost of creating new characters is quite steep, further emphasizing the importance of a good storyboard. This exercise would be worth repeating now that I am more familiar with Maya.

Modeling Mr. Potato Head

Shortly after this assignment was announced, we bought our son a Mr. Potato head doll and he would not part with it. I had an idea for a short involving Mr. Potato head and spent a good deal of time modeling the doll. Some Maya screen shots of the generated models are shown below.

Potato Heads

The skit was going to involve Mr. Potato head adding and removing limbs, and ultimately pulling off Mrs. Potato head's arm. I started to rig the character, but soon realized I would likely need multiple skeletons for the character with different numbers of limbs. It also proved quite challenging to animate a walk for a character without knees!! Since I still needed to animate, render, and post-produce the animation, I decided to simplify things a little, opting instead for the above described short. In retrospect this was a good move, since it helped me focus on the important elements of the task, rather than being burdened with excessive complexity.

Valid XHTML 1.0!