Cloud Computing
Issue: Volume: 32 Issue: 10 (Oct. 2009)

Cloud Computing

When Pixar Animation Studios’ Peter Sohn conceived a story about a stork delivering babies made by clouds, he thought the clouds would be a cool challenge for the technical staff.

“John responded to it, as well,” Sohn says, referring to Disney/Pixar creative director John Lasseter. “And then John said, ‘OK, now pitch it to the technical folks.’ So I went into a room with 12 technical think-tank guys and presented the story. They all crossed their arms.”

Usually, CG clouds are effects, amorphous volumes of digital light and water droplets. They don’t shake their heads, wave their arms, blink their eyes, and show emotion.

“[The guys] said, ‘This is interesting,’” Sohn continues. “And then they started talking in technical jargon I didn’t understand, and I heard, ‘Nope. We can’t do that in a year.”

Fortunately, two people at Pixar thought the idea and the schedule might be possible. “Dave Batte and Mike Fu started helping out with the technical aspects,” Sohn says. Batte became the effects lead; Fu, the shot supervisor.

“We weren’t sure what we could promise,” Fu says. “We usually do volumetric things only for key shots, so we knew at the onset it would be a big challenge from a computational point of view. Except for the birds and the babies, the entire show was pretty much an effect. It took a lot of exploration.”

The bedraggled stork Peck salutes his cloudy friend Gus after another harrowing delivery.
Bad Babies
Sohn’s film opens at sunrise. We see a flock of storks with soft bundles dangling from their beaks fly past pink and yellow clouds. One bird delivers a baby to a woman leaning out a window, another deposits two kittens at a cat door, a third delivers puppies. Then, they return to the sky, flying through a pink vapor to land, each in turn, on a cloudy platform. Sitting on the puffy platforms are chubby clouds already creating their next deliveries. One jolly character pats a tiny puff between soft hands and a kitten pops out. Another shapes a gurgling baby. And then the camera drops down to a lone gray cloud sitting below all the others. Gus. He’s happy, too—even when the baby crocodile he creates snaps off a finger. Gus creates the dangerous babies. And his friend Peck, the stork, is stuck with their delivery. Literally stuck, in fact, when Gus pops out a porcupine baby. Poor Peck: Each baby is worse than the last. When Peck, battered, bitten, and beaten, sees Gus shaping a shark, he quickly disappears. The abandoned cloud throws a thunderstorm and rains. But, that isn’t how the film ends. Peck will return.

Sohn spent several months refining the story. “I must have done 10,000 drawings,” he says, “over and over and over. I pitched a different ending and held onto that idea for a while, going in circles, trying to make the story fit the ending I really wanted. But the characters kept saying, ‘It’s about being loyal. About how hard friendships can get. But, you stick through it.’ Bob Peterson [Up writer and co-director] helped me let it go and become what it needed to be.”

Flying Clouds
During production, animators used traditional rigs to perform the cloud characters, all of whom looked like Gus. “Once we put the cloud suit on Gus, we had to exaggerate the model to make the smile and the eyelids bigger,” Sohn says. “It was like putting a down jacket on the guy. But the rigging was pretty traditional.”

Inside the soft, puffy cloud resting in Gus’s hand is a baby porcupine. Pixar’s effects artists applied three-fourths of the 200,000 particles that make Gus fluffy to his hands and face.
Gus’s performance and that of the other clouds relied on typical keyframe techniques, but the animators broke some rules to have the characters ride on their platforms with a cloud-like floating motion.

“We learn not to make animation too floaty, to not move from one pose to the next too evenly,” Sohn says. “But for Gus, we had to go back to evenness and floating. Any time we did rubber-banding in squash and stretch, we saw the magic trick of a character in a suit of fluff.”

Animators Matt Stangio and Dylan Brown developed the clouds’ drifty style. “When Gus moved quickly, he kept drifting into the area he moved toward,” Sohn says. “If he moved back, his kinetic energy kept moving him. And then the animators added a layer of cloud movement on top. I had so much fun with this world. I had clouds moving over the cities and delivering babies in weather systems, until the story became so plot heavy I had to stop and ask what my priorities were—the world or the characters.”

Head in the Clouds

Batte started on “Partly Cloudy” in March 2008, shortly after he finished working on Wall-e and before Sohn had approved character designs. Knowing that Gus, the star of Sohn’s film, would be rotund, Batte repurposed the 3D model of the plump captain on the Axiom, the spaceship in Wall-e.

“He looked like a Michelin Man wearing a cotton-ball suit,” Sohn says.

To create the puffy characters’ look, Batte had first tried using sprites, but soon realized the sprites made it hard to add details for the characters’ faces and hands. “They would have required large render times, too,” he says. “So, they didn’t give us anything. And, in my gut, I felt we’d probably use particles. I knew [Pixar’s] Atmos was a good solution for doing gases.”

So, he decided to grow particles on the 3D mesh and have the mesh be a goal to keep the particles from flying away as the body moved. Attached to Gus’s body were a series of spheres to organize the particles, and particle expressions that served as a starting point for tweaking how the particles attached to the underlying mesh. The simulation system was semi-automated.

“We could hit ‘Go’ and see what came out of the simulation, and then adjust the places that didn’t work,” Fu says. The method was a variation of the system developed by technical director Alexis Angelidis and used for the clouds in Up (see “The Shape of Animation,” June 2009). “In early tests, we had Gus emit new spheres, but that felt weird, like he was evaporating,” Fu says. “So we had a fixed number of spheres that stayed close.”

With the camera focusing on Gus as he created his hazardous babies and on his interactions with Peck, it soon became clear that the cloud needed internal motion to avoid looking like cotton balls. “John [Lasseter] said we needed more movement,” Sohn says, “that Gus didn’t look alive.”

Layers of noise inside produced the billowing effect Sohn wanted. “We did many iterations with different layers and ended up with a slow, rolling movement that’s difficult to describe,” Batte says. “You barely notice it. It’s there so the clouds feel like vapor roughly held together by some unknown force, but it doesn’t take your eye off the face or hands.”

Gus’s face and hands, in fact, were a particular challenge. The large particles that had given Gus’s body a soft, billowy appearance didn’t provide enough detail for facial expressions.

“In the first tests, he was soft and his eyelids were so thin we could see his eyeballs,” Sohn says. “They looked like stickers slapped onto pool balls floating in gaseous space. It was terrifying. We needed a voluminous, fluffy guy, but we needed more structure inside to read his smiles and his nose. Dave [Batte] really brought the particles together to make a readable, clear, believable, appealing character.” He did this by adding thousands more particles to shape Gus’s face and hands. All told, Gus has more than 200,000 particles.

“Three-fourths of the particles that make up Gus are in his hands and face,” Batte says. “I had very, very tiny particles to tighten areas like the eyelids and the creases in the corner of the mouth, very thin films. The face also had more density than the billowy body parts, so the light gave us nice shaping. Not a lot denser, just a little denser.”

To control the particle size, Batte used texture maps, which also described how the particles moved, how quickly they faded, and how sticky they were—that is, how close they stayed to the underlying mesh.

Director Peter Sohn, a storyboard artist for Up, Wall-e, and Ratatouille, created thousands of drawings for “Partly Cloudy.” At top, an opening scene from the film; at bottom, the original art for the final frame that opens this article.
Shine a Light
Once the texture maps put the particles in place, the technical directors generated a shadow map to describe the volume, and then a volumetric shader marched rays through the volume and the shadow map. The noise patterns provided complexity within the volumes that the shadows enhanced. “If there were no shadows, the light would be flat,” Fu says.

Volume shaders are expensive, though; they require enormous amounts of compute time, so the crew developed methods for keeping the rendering as simple as possible without losing the cloudy feeling.

“We didn’t have enough time to develop new technology,” Batte says, “so I did a few things to make the clouds more renderable. [Gus and the other clouds] have particles extending into the core of their bodies. We made the particles on the outside soft and translucent, and the particles inside more dense. That helped stop the ray marching. A ray marches along until it accumulates enough density and then quits; they march along the first layer and then stop.”

Because the clouds are characters and not effects, though, the layers of light needed to respond predictably. Using the shader’s option of combining multiple volumetric objects into a smooth, singular render, the crew decided to give lighters the ability to use multiple sets of lights. For example, they could light Gus’s body differently from his base in much the same way that they might light a column standing on a disk, but the shader would blend the two looks seamlessly.

Animators used traditional rigs for the clouds’ performance, and developed new methods to have the clouds drift believably. Technical artists added subtle internal movement to bring the clouds alive.
“The lighters could suck light out of one area and add it to another, and have different lighting rigs for different parts of Gus’s body,” Batte says. “We could have nice rim lights on his hands.”

Thus, the lighters developed an illuminated look for Gus using the shader that Batte devised, by dialing in particular settings for how much light moved through the cloud, how much reflected, and how much shadowing we’d see inside.
“If we wanted the character to read more, we dialed down some of the opacity, but not in the traditional sense,” Fu says. “We dialed down how quickly the cloud would accumulate density.”

As they worked, the crew could see the spheres moving in Autodesk’s Maya, but Sohn couldn’t tell what the characters actually looked like until after rendering, which, even with Batte’s optimization, often took overnight.

“The funny thing about clouds is when you look at them from the ground up, they look like large, soft things, but light determines their shape and form,” Sohn says. “I come from a world of 2D animation where effects are thumbnailed and planned out and drawn. This was a wild ride for me.”

The wild ride, however, produced unique characters that few people would suspect represent one of the most elaborate examples of art-directed simulation in computer graphics. “The animators were working blind,” Fu says. “They put a lot of trust in us. It was exciting to work with the animation department to come up with a process. I’m glad it turned out so well.”