A DAY IN THE LIFE…
…THREE SLICES OF LIFE FROM THE FRONT LINES OF GAME DEVELOPMENT…
PROGRAMMER
8.45am
I arrive at work and head to my office. At High Moon Studios, most programmers don’t usually work in their offices. We work in open space areas, sitting next to designers, artists and animators. My office is where I drop my stuff, check my email, and make phone calls. I share a large office with five other people, but only spend about 30 minutes a day in there so we are rarely there at the same time.
9.00am
I have my morning oatmeal, and I am now loading up the nightly build to examine the state of the game. The nightly build is automatically deployed to my development console so it’s ready to go in the morning. I notice a couple of animation pops in the AI motion and make a note to ask the team about it later. Today’s build looks good, no fires to fight yet.
9.30am
Time to start programming. At High Moon, we pair program the majority of our tasks. Today I’ll be working with Robert, one of our junior programmers. Our pair programming stations have a PC with dual monitors, two keyboards and two mice. Robert and I sit side-by-side and take turns programming throughout the day.
This may sound strange to some people, but working with another person all day long has some incredible advantages. We are more productive, our code quality is higher, and the code is owned by the team, not an individual. In addition, pair programming helps bring new hires up to speed quickly and allows us to teach them our preferred methods, preventing them from developing bad habits. During my first programming job out of college, I had no idea what most of the code did, let alone where to look for it. Today Robert and I are going to implement location-specific hit reaction animations on the AI when they are shot. We will be creating new AI logic, playing animations, special effects, and audio.
10.45am
Time for my first scrum of the day. The daily scrum is where people discuss what they worked on yesterday, what they are going to be working on today, and any impediments to their progress. In addition to being lead programmer, I’m also a scrum master. I’m responsible for the vision of one complete aspect of our game. My scrum team consists of programmers, designers, artists and animators.
This meeting lasts only 15 minutes and is done standing up. One of the artists mentions that he is having problems with his graphics card. The associate producer makes a note to follow up with IT after the meeting.
11.00am
Scrum of scrums. All of the scrum masters attend this meeting and discuss cross-team dependencies and impediments. Today there are no impediments for my scrum.
12.00pm
Lunch! Our “studio mom” Samantha makes free catered lunches on Tuesdays and Thursdays, and breakfast and lunch to order the rest of the week. We also have a lot of lunchtime activities at High Moon, such as basketball, surfing, mountain biking, ultimate Frisbee, gaming or going to the gym next door. My activity today is eating Samantha’s carne asada burritos!
2.15pm
Some designers in the area are discussing a problem they are having with the AI. Thanks to the open space area, we can all hear about it. The designers ultimately ask us to jump into the conversation. Together we figure out a solution. Since this is a high priority issue for our team, Robert and I start working on it immediately.
I’ve noticed that when people can see each other, they are more likely to ask questions. If they have to get out of their chairs, they probably won’t bother. The open space area facilitates communication between disciplines, and having the team sitting in one area has dramatically improved our productivity. We constantly talk as a team without having to set up meetings or compose long email chains.
2.37pm
I smell smoke, and where there’s smoke, there’s fire. The animators are having problems importing animations onto a specific character. I talk over the problem with our technical director Sean, and we think we know the cause of it. Sean is busy fighting a fire of his own, so I move over to a free programming station and start debugging the offending code. I try to handle problems that fall outside of a specific team myself, allowing the rest of the team to continue uninterrupted. Before I get started, Robert and I have a quick discussion about what he will work on whilst I’m helping the animators, and then we both get back to work.
3.15pm
The bug is fixed! Since I didn’t pair with anybody while coding the solution, Sean comes over and reviews my code changes. He approves my solution. I check the code in, which automatically kicks off a new build of the game. Now I move back over to my previous tasks, and I find that Robert has made good progress on the AI.
3.30pm
Build failure! We used continuous integration here at the studio, each time we commit code changes, a fresh build of the game is created. If one of our tests fails, the build is flagged as a failure and the team is alerted. I open up the build report to see what failed and who made the recent changes. When the build fails, nobody else can commit code until the build is fixed, so it’s important to fix the build as soon as possible. Looks like programmers from another scrum team caused the failure. I walk over and discuss the failure with them, and they start working on the fix.
3.50pm
Build fixed. The rest of the teams may resume code commits.
4.45pm
Robert and I are working on our AI changes, and we found a way to optimize an expensive section of the AI logic. We talk it over with the other programmers on our team that sit next to us and estimate a significant savings in CPU time. This type of discovery happens often, and we want to keep track of new tasks so they are handled by the next available pair. We write up a description of the work to be done and pass it along to our producer for bookkeeping.
6.15pm
Time to go home. As a lead programmer I find myself spending more time programming and less time in meetings. I’m constantly being presented with new challenges, and I enjoy coming up with solutions. I get to work with a diverse group of people from around the world developing video games- life is good.
--- Andrew Zaferakis---
Andrew Zaferakis is a lead programmer at High Moon Studios. When not programming, you can find Andrew shooting hoops on a basketball court in Southern California.
ARTIST
7.30am
I roll out of bed and get my daughter some breakfast: pancakes and “serpup” (she’s two). After the morning ritual, I hop in the car and head to work around 8.30. I have a great commute. It’s really short- about 10 minutes. The nicest thing about it is that I can run home for lunch or for a quick errand if I need to. I know not everyone gets to do this so I count it as a privilege.
8.45am
Parking has gotten to be a pain lately as a large data processing company has been taking over our building. It’s crazy. They’re like locusts. Well, their cars are, anyway I’m sure the people are very nice.
Once I’m at my desk, I usually spend some time reading emails and getting caught up with the day’s news. I might look over a resume or two that’s come in. if I’m smart, I’ll sit down with my notebook and review all the things I need to do that day. With multiple projects and lots of other miscellaneous things going on, it can be tricky to keep track of things like what meetings I’m supposed to go to, who is waiting for my feedback, or what artwork I have on my plate. The majority of the company gets in around 10.00, so the first hour of the day is usually when I have the most time to myself.
10.00am
By now, I’ve met with a level designer and talked over a couple of bugs and assets that are due for the next milestone. Many times, I’ll call an artist into the conversation to help sort out what’s going on or to help decide the best course of action.
It might be a problem with an animation or a how much texture memory we have left, but many issues end up involving multiple departments—so the more our artists can work with level designers and programmers, the better.
For an artist, getting artwork created is just the first step. Getting it into the game and making sure it works properly takes an entirely different set of skills. This is where I see most artists, especially junior artists, have room to grow. I’ll often end up sitting down with them and going over the assets in question. Artists can get valuable experience through a process like this, so I try to encourage them to learn how to troubleshoot their work and learn from other artists as much as possible.
11.35am
The current project on the hot seat is our PSP action-adventure game DEAD HEAD FRED. Right now we’re three weeks out from gold and Q/A is busy poking holes in the UI work I’ve done. I have a TRC bugs on my plate I can squash. They don’t take long, so while I’m messing around with UI, I’ll take the opportunity to fix a few issues I noticed earlier. A font change here, a color change there, and now I’m late for lunch.
12.15pm
Lunch is a good chance to take a break from what’s going on. I usually try to make the most of it. If it’s a build day or if there’s an emergency, I may not get a lunch at all, but I generally make sure I take full hour to recharge for the afternoon. If I’m going to be staying late, I might try to get home to see my wife and daughter for a few minutes since I’ll probably miss bedtime. If not, then I might go to the gym for a quick workout ( the first New Year’s resolution I’ve ever kept past January 2) after which I’ll stop off at Subway instead of eating the lunch I brought to work and then left sitting in the freezer.
1.40pm
The other game I am working on is very quickly cruising toward beta, so time is of the essence. If things aren’t moving smoothly, those wasted hours will add up to some monster overtime, and it’s in my best interest (as well as that of the other members of the team) to not let that occur. My most recent efforts for this project have all been focused on getting our non-player characters into the game and working. To do this, I’ve been working with a couple of artists.
One artist is modelling the characters and doing some texture work on them. We go back and forth a bit on poly counts, texture sizes, and making sure each character matches stylistically with the game. The milestones are always looming so if something’s not right we’ll work out a plan for fixing it while still keeping us on schedule.
Another artist is modelling and texturing a set of unlockable items for the NPCs. The final step for him has been getting the items in the game and bug-free, so he’s been working more closely with the character artist that with me. They’re a good team and work with the level designers to get everything into the game. They’ve both had to learn more about the editor we use for our games, but that’s a good thing.
3.55pm
A quick check of my own personal task list shows that there are some cinematic bugs for FRED that have been sitting around for too long. I pass them along to an animator, but taking a look at the open bugs reminds me that I really need to update my bug list. Most cinematic bugs are a quick fix, but some require a little bit of character work. We might need to create a new morph target for a speaking character or tweak the physique on another to get rid of some pinching. The majority of bugs show up after the animation has been done in 3ds Max and it gets put into the game. Again, close collaboration with the level designers gets the kinks worked out, and things are back on track.
Checking the more than 125 cinematics in DEAD HEAD FRED for bugs is a bit of a chore, but I need to get a sense of how much progress we’re making. It feels a bit like shovelling the driveway while it’s still snowing, but I really like working on cinematics. FRED’s turning out to be a fun game to play, so I don’t mind it. Like most things I do, I just wish I had more time to devote to it, but I am a very busy guy.
6.30pm
If FRED weren’t three weeks from gold, I’d probably be going home right now, but it is and I’m not. We still have work to do. For me it’s a good opportunity to double check a few more bugs and review some contract work. It’s also a good time to check the schedules I’ve made, and assess my team’s overall progress. Since we’re doubling our efforts, it makes sense to be doubly sure those efforts are pointed in the right direction. Because we’re staying past 8.30 tonight, I get some dinner at my friend Subway’s house. (The guys at Subway know just how I like my chicken teriyaki sub—and yes, I did just eat Subway for lunch and dinner)
9.25pm
I spend the evening reviewing spreadsheets and checking bug lists. When I get the chance, I do a little more UI cleanup or do some general playtesting. There’s a good chance I forgot to get back to someone about something, but it will have to wait until tomorrow.
On the way out the door, I make fun of a few WORLD OF WARCRAFT-addicted artists I can’t seem to kick out of the place. They know I’m just joking--- or at least they do now.
--- Ben Lichius---
Ben Lichius is an art director at Vicious Cycle Software, Inc. He oversees the daily operation of the art department and interfaces with a wide range of contractors and outsource groups.
DESIGNER
6.15am
Chances are, I’m the only game designer out there who gets up this ludicrously early of his own accord. There couldn’t possibly be more than three of us. But I like my mornings, the quiet before everything happens. Between a good walk and my other morning rituals, I’m rarely on my way to work before 8.45. Today, I get a little distracted playing ROGUE GALAXY and am running a little later than that.
9.35am
Iron Lore Entertainment is situated in a lovely brick (former) textile mill building complex, which sports some really long hallways. I’m in the parking lot now, and it will be more than five minutes before I reach our office suite.
9.40am
The office is still pretty dark and quiet at this hour. We’re supposed to be in by 10.00, but not everyone is able to hit that mark. In fact, mornings tend to stay fairly quiet around Iron Lore, at least until after 11.00 or so, even after all of us have drifted in. I often take this time to do the focused writing or planning that can be difficult when the company is at full buzz. After checking my email, a few daily web comics, and other web sites, it’s down to business.
Today I’m writing dialogue. Knowing that it’s just a first draft, that design changes could scrap all of it, and that perfectionism is my enemy, I try hard to breeze through it, getting the gist right even if a few words are awkward. The enemy I cant’ avoid is research. I hit a detail about the mythos that I’m a bit hazy on and waste more than a quarter of an hour double-checking my memory against Wikipedia and a few other all-too-familiar web sites.
10.00am
After my first cup of coffee, I’m back to writing, even though by now my office-mate has showed up and I’ve got emails from programmers and designers to respond to.
11.15am
I’ve gotten some good writing done, but the distractions are starting to make it harder.
Normally I’d start looking for something to do that’s more multi-tasking friendly, but today, it came to me. Dave, the designer who implements all the content that I plan and write, drags me over to his cube. One of the quests that we had planned, which sounded great on paper, turns out to have some issues in practice. We sit in his cube, looking at the level in our world editor, discussing ways to solve the problems that have come up.
The solution we decide on involves some scripting changes and tweaks to the AI behavior of the enemies in the quest. Dave knows the gameplay database pretty well, but this time we go to one of the gameplay designers, Shawn, to change the units so they work the way we want them to. Dave will make the changes and get it working. Later on, I’ll test the quest and give him feedback on how it works.
11.45am
I update my schedule. What did I just spend the morning doing, again? Why is this part always so hard?
I look over my to-do list and a large planning spreadsheet for the quests and other such content in the project. Sometimes I feel like managing my workload is some kind of spiritual BUST-A-MOVE. What’s coming at me that I have to worry about first? What’s farther off that I have to remember not to forget to worry about later?
Of course these mental knots only happen at certain stages of development. When we’re closer to finished, everything boils down to testing, polishing, and tweaking. In the pre-production and early production stages, you might have a head full of design ideas you have to sort out, but that generally amounts to too many Word docs, or Post-it notes, or dry-erase board charts, depending on your process.
I end up spending the time before lunch updating the quest planning chart and talking briefly with our producer about impending localization deadlines.
12.05pm
Mondays, Wednesdays, and Fridays I’d be trundling off to the gym (conveniently around the corner and downstairs), but it’s Tuesday and the weather is gorgeous, so a couple of us go out to lunch.
1.05pm
At my desk again, I quickly read through the rest of the web comics that I’m addicted to. Back to work!
While playing schedule BUST-A-MOVE before lunch, I realized that I need to coordinate with our map guys and art team before they build a quest-sensitive part of the game. I walk down to the cube of the lead content designer, Tom, and start talking to him about how the area needs to work. This area features a large set-piece, which is built by our extremely talented art team. The two of us wander over to see Mike, the art director, and as we discuss what we need, he sketches examples with his markers on a sketchpad.
1.35pm
I confer with Dave about some other art I think we’ll need and make sure it’s properly described on the art schedule. Then I check with the artist who will be making it and edit our quest-planning documents to describe the use of this object properly. Finally, I skim back over the art schedule to make sure that there’s nothing else we’ve missed.
3.00pm
The Coffee Train. I brought this tradition to Iron Lore, which hails to my Stainless Steel Studios days. Every day at this time, a bunch of us walk to the café down the street. It’s a break that gets our blood circulating, lets us focus our eyes on real 3D objects, and most importantly, gives us time to joke, complain and process the tumultuous phenomenon of more than 30 people working hard to build a video game.
3.15pm
Second coffee in hand, I skim Slashdot, Gamespot(news and reviews only), and Gamasutra. A designer must stay informed!
Some feedback has come in from our publisher’s creative liaison. Much of it is on a quest and story content. I take my time reading over it carefully. I email my response to the design team. An email discussion thread develops where we go over the feedback. I work on the quest-planning spreadsheet while reading this email thread, which updates every couple of minutes. By 4.00, we’ve gone over everything, and I draft my part of an email response. We’ll compile responses per department and send them to the liaison.
4.05pm
I go back to writing dialogue. Although I’m not nearly as focused as this morning, it needs to get done. I plug away at it and make some progress.
5.30pm
My brain is a little frazzled at this point. Since I need to check in on Dave’s work, not to mention see how our map team has been coming on the areas where certain quests take place, I decide to do a little play testing. Of course, it’s still work- I keep my notepad by my keyboard and pause frequently to share bugs, ideas, and other feedback not just with Dave, but with the rest of the design team as appropriate. In my humble opinion, this sort of internal feedback can be as valuable (in its own way) as outside tester feedback. A good design team stays in excellent communication with itself.
I type up the feedback and email it to all designers.
6.50pm
We’re in mild crunch this month. Crunch is a fact of the game industry. Even in studios that try hard to avoid it, crunch still happens. It actually hits me before everyone else. Because voice-over editing takes a while, the dialogue needs to be thoroughly done before a lot of the other content. I worked much harder last month (mid-milestone). I’d be on my way home by now, but I know there’s a lot to do before our milestone deadline.
So it’s back to spreadsheets—every quest needs rewards. I’m adding a list of what rewards are needed where and writing notes in each cell so that one of our gameplay guys can pick appropriate rewards that won’t spoil the balance in game, which is what would happen if I chose them.
7.20pm
I wander back over to Dave’s cube and we spend more than half an hour talking about how to handle several high-level quest issues we see coming down the pipeline.
7.55pm
I find some responses to my earlier feedback in my inbox. I respond to each and shut down my applications. I toss my bag over my shoulder and tell Dave to go home already. He won’t. Then it’s back down the long, long hallway, to the parking lot, into my car, and the ride home.
--- Ben Schneider---
Ben Schneider is a writer and designer at Iron Lore Entertainment. He planned the quests and wrote most of the dialogue and game text for TITAN QUEST and its expansion, IMMORTAL THRONE.
Friday, June 6, 2008
MOST DELICIOUS- Barbara Robertson-COMPUTER GRAPHICS WORLD July 2007
MOST DELICIOUS
To cast a rat in a tactile Parisian restaurant, Pixar cooked up new tools and techniques that helped their artists create a savory of feature animation
The most unlikely ingredients often create the most delectable dishes, the unexpected flavors transforming food into a mind-altering, tongue-tingling sensation. Listen to food critic Hal Rubenstein waxing rhapsodic in New York Magazine: “… the unexpected ingredients… expand the boundaries of a cuisine and of our desires…. The briny sharpness of braised artichokes with mizuna leaves squares off against soothing goat cheese and roasted peppers, resolving into a delicious truce. Delicately-folded goat cheese tortelloni almost floating above the fork are enveloped in a wondrous coating of dried orange and rarely used wild-fennel pollen.”
Remarkably, Pixar has stirred that feeling into a CG animation with Walt Disney Pictures’ Ratatouille, the studios’ eighth feature film. But, creating food that teases a mouth-watering response was only one challenge for this film.
Ratatouille tells the unexpected yet deliciously hilarious story of a rat named Remy who has a highly developed sense of smell, a talent for combining flavors, and an appreciation of fine cuisine. When Remy slips into the kitchen of Gusteau’s famous restaurant in Paris, he secretly concocts gourmet dishes that astonish the chefs, patrons, and food critics—all of whom who would be horrified if they knew. Mon Dieu!
How could this work, you might ask. A rat cooking in a Parisian restaurant? CG food that looks realistic enough to tickle your taste buds?
Step into Pixar’s kitchen and meet the chefs who cooked up Ratatouille’s magical recipe.
“There’s a certain power that comes from aversion,” says director Brad Bird of the rat in the kitchen.
“We had to bend the canons of CG,” says Sharon Calahan, director of photography/lighting, who analyzed food photography to develop the film’s look. “I wanted everything to look juicy and succulent in its own way.”
STIRRING THE POT
The story almost didn’t work. A year and a half before the film’s release date, Pixar’s executive producer John Lasseter, president Ed Catmull, and then CEO Steve Jobs asked Bird, who had own an Oscar for The Incredibles and Annies for that film and The Iron Giant, to step into the production.
Everyone believed in the idea, but it hadn’t coalesced into a story,” Bird says. “I kept the premise and kept the characters, but I wrote a new script. I used only two shots from the previous version and two lines of dialog.” (One line is, “You are fired. F-I-R-E-D,” which Skinner, a chef in charge of Gusteau’s kitchen, shouts to Alfredo Linguini, a garbage boy.)
Even though Bird kept the characters, he made major changes to some. First, he turned the rats into rats. Until Bird became director, to soften the impact of seeing a disgusting rodent in a kitchen, all the rats had been cute and cartoony. “I felt that was a big mistake,” says Bird. “Putting a rat that wants to be a great chef in a kitchen is the height of absurdity. Remy aspires to be human, but in the early version, the rats were like tiny humans. The rats weren’t ratty.”
By making Remy and his family act like rats, when Remy chose to walk upright, that action emphasized a story point. An expensive story point. To put the rats on all fours, Pixar had to rebuild the entire rat cast using a different mesh and articulation. “The bipedal articulation didn’t work when the rats were on all fours,” says Mark Walsh, one of two supervising animators. “So after about a year of work, everything changed.”
Dylan Brown, the other supervising animator, adds, “A rat moves its shoulders from the inside out, but humans move from the outside in.” Moreover, even though Remy chooses to be bipedal when he’s interested in cooking, at other times, he continues to scamper on all fours. And like real rats, he and his family can squeeze through tiny holes, so the rigs needed to incorporate squash and stretch.
“It’s easy to build a quadruped, and it’s easy to build a biped, but we had to interpolate rigs,” says Brian Green, character supervisor. “It gave us much angst. Within a shot, Remy could walk on all fours, and then stand up, grab a spoon, and start cooking.”
Bird also gave Collette, the only female chef, a larger role, and he killed the owner of the restaurant, the five-star chef, Gusteau. “Brad [Bird] came to us one day and said, “Gusteau is dead,” Walsh recalls. “Everyone’s face went pale. Gusteau had been articulated and modeled. Then Brad said, “But, he’s Remy’s conscience, his inspiration. He’ll show up in the movie as this sprite guy.” People looked at Brad with their heads titled to one side and their eyes half-lidded. “Gusteau became the unexpected ingredient.
In Ratatouille, Remy never talks to the human chefs in the kitchen. He’s a rat; he talks only to his family. And, to Gusteau. Gusteau appears as a ghost, having committed suicide after food critic Anton Ego gave him only four stars, not give. It’s his cookbook, “Anyone Can Cook,” that inspires Remy—and also saves his life.
LE MILIEU
The film opens in the French countryside, with a voice-over of Remy telling his tale. It’s clear from the opening scene, a rustic cottage framed in autumn leaves, that Pixar has created something unique. The light. The colors. The textures. Ratatouille is not a film with brightly colored toys, fish, bugs or cars.
“We tried to make this film look different,” says Michael Fong, supervising technical director. “One of the big things was to break away from what standard CG looks like. We got rid of straight lines and did a lot of hand tweaking. We wanted it to feel handmade. The other part is lighting and shading.”
In the countryside, Remy introduces good taste to his brother Emile, who is happy eating garbage. Their father puts Remy’s nose to work, though, sniffing for poison before allowing the pack to eat the garbage they collected.
To animate the rat pack, which sometimes totaled a thousand rats, Pixar used Massive software for the first time. Animators created motion cycles, and a crowd team fed the cycles into Massive brains that moved bodies created with mix-and-match parts. In addition, Pixar developed tools to pull an individual rat out of the crowd simulation and move it into the studio’s proprietary animation software, Menv. Pixar also uses Autodesk’s Maya for modeling and its in-house software, Geppetto, for rigging.
When Remy explores Granny’s cottage, the house from the opening scene, he discovers Granny’s cookbook. But, Granny spots Remy and his family and opens fire with her shotgun. The rats run to their boats. The water sweeps them into a storm drain, and Remy rides out a raging flood by hanging onto the cookbook.
To create the flood, the technical directors used the same simulator that had created water for Finding Nemo, but changed the mesh surfaces- that is, changed the way they built meshes from the simulation data.
“Think of a big vat of Ping Pong balls,” Fong explains. “The simulator moves them in certain ways like big waves. We find the surface and make a mesh out of it. In Nemo, when we did that, the 3D mesh was temporally coherent, but we lost some of the detail. With Ratatouille, when we threw the sheet over the Ping Pong balls, we got more detail. We saw the resolution at a Ping-Pong level.” For Nemo, Pixar had used particle-level sets; for Ratatouille, they switched to more of an implicit solution using research from Chen Shen and others at the University of California at Berkeley.
Alone now, Remy pulls himself out of the water and onto a ledge under a storm grate. There, he rests and pages through the cookbook. When he reaches Gusteau’s page, the image of the great chef becomes animated. Gusteau rises from the page, and the now floating, semi-transparent spirit tells Remy to go up and look around. When Remy does, he discovers he’s in Paris, and it’s beautiful.
L’AMBIANCE
The early story idea for this film came from Jan Pinkava, who won an Oscar for his short film, “Geri’s Game,” and he created the early designs for Ratatouille’s world, as well.
“I hope it feels like it did for us when we were running around Paris in the fall,” says Calahan, “the softness of light, the trees turning color. There are a lot of neutral tones in the film, even on the streets of Paris with its limestone buildings and granite streets. I wanted to use color sparingly, to use a more limited palette, but at the same time, to get more color into our darks. And where we wanted color, I wanted it lush and rich.” To create this look, Calahan worked with effects supervisor Apurva Shah to develop a new illumination model. “The key aspect was that we separated saturation from luminance (contrast),” says Shah.
Shah explains that many people in computer graphics believe that the math of CG imagery should follow physics. But, even sophisticated CG imagery models only approximate how light bounces in a scene to calculate color. “You can’t get all the subtle softness,” Shah says.
Moreover, adding rich color to dark areas often increases contrast. “Typically, the renderer does its physics to calculate color, and then you apply a look-up curve; you use tonal mapping,” says Shah. “But, that influences contrast in the image. That’s why it is nice to separate contrast and saturation. If the only way to increase saturation in the darks is by pushing contrast, you get into a place that doesn’t look real.”
With that separation introduced into illumination model at a basic level, Calahan and the lighting leads created the balance they wanted and established key values. “We got rid of the icky grays,” Calahan says. “We could saturate colors in the darks and de-saturate color in the lights. It’s definitely a different way of thinking about lighting. CG purists think it’s the wrong way. And some people would argue that the right place to do this is in compositing, where they have more control. But I wanted things to be done in-camera.”
In addition to separating contrast and saturation in the illumination model, Shah and Calahan decided to work in non-linear color space. “From a tonal standpoint, people doing CG tend to use linear color space,” Shah explains. “We find in linear space that light falls off too hard or adds up in a slightly weird way, so we have a different space, a non-linear space. Broadly speaking, it’s more like how things happen in nature. Many people do this on a light-by-light basis, but with Ratatouille, we introduced that fundamentally into our illumination model. It automatically works with every prop in every sequence.” For example, Calahan explains, in the color space used before, when an artist added two lights together, it increased the brightness noticeably, but didn’t’ double it. The light added up. In the new color space, however, two lights made something doubly brighter.
“None of our tools worked the same way,” Calahan says. “Low-intensity lights that you think wouldn’t contribute much could affect the look of a scene. But we quickly adapted. To me, it felt more natural. It’s like when you change an f-stop, you expect it to halve or double the light.”
In addition, Pixar introduced depth-based tinting in the shaders. “If you look at a splash of wine on the side of the glass, it’s almost transparent,” says Shah. “The color builds.”
GOURMET KITCHEN
When Remy climbs from the storm drain onto the streets of Paris, he’s across the street from Gusteau’s restaurant. Atop the building, a giant rendition of Gusteau in neon becomes animated and encourages Remy to visit the kitchen.
At first, Remy only peeks inside the glorious, bustling kitchen filled with gleaming copper pots and pans- frying pans, crepe pans, saucepans, stockpots, fish poachers, a wok, casseroles, roasting pans. Chefs wearing stiff white coats and tall white hats chop vegetables, stir soups, knead bread dough, and sauté fish. A waiter rushes in from the dining room.
Much of the action in the rest of the film takes place in the kitchen; it had to feel believable. “The grout lines aren’t straight in the tiles,” says Fong. “The reflections are blurry.”
Yet, creating the soft reflections in the kitchen’s multiple burnished and dented surfaces, the stainless steel table, and the copper pots and pans became compute-intensive. “The problem with raytraced reflections is that uneven surfaces bounce the rays a lot,” says Shah. “And, when you want a soft reflection, you see the cone angle big, so you need a lot of rays.”
Using a reflection map would have been faster, but it wouldn’t have produced correct distortions. “So, we took the radiance of the world and baked that illumination into a [Renderman] brick map,” says Shah. Then, they bounced rays into that brick map. When the rays found an intersection in the baked-out map, rather than using a shade calculated at that point, they averaged the results from the collection of rays sent into the large area. “The result is that we could send out fewer rays and still have the correct distortion,” he adds. And that produced kitchen surfaces with a tactile patina.
For the wine, however, the artists used shaped reflections to give the liquid a proper sheen. And, to put textures on such liquids as soups and sauces, they developed new shaders.
LES INGREDIENTS
The combination of the new illumination model, new shaders, and such lighting techniques as subsurface scattering made the food look appetizing. But the food also needed to act like food, to move like food.
“The challenge for CG food is to not have it look like a play-set of plastic food,” says Walsh. “We wanted the audience to see it and say, ‘I’d like a bite of that.” The most banal things we take for granted—chopping carrots, slicing onions, sauté-ing, and flambéing—were huge projects for our effects team.”
Shah’s effects team filled the kitchen with simulations. Fluid simulations for liquids and fire, soft-body simulations for food on plates and vegetables in crates, gas simulations for steam, and rigid-body simulations for slicing and dicing.
For fluids, Pixar used the simulation engine developed for the water in Finding Nemo, Maya fluid simulations, and an open-source dynamics engine developed at Stanford. In addition, a new simulator handled thick sauces. “Brad Bird was really picky with small bodies of water,” says Fong. “Soups and sauces have a different viscosity than water.”
Soft-body simulation helped dress the sets—and the plates. “In CG, it’s easy to make things seem stacked up and linear, barely touching, like they’re sitting on eggshells,” says Fong. “We wanted to make sure the objects felt kind of squishy.”
For bread, they used an extension of soft-body dynamics. “Brad [Bird’s] brief was to think of the dough as a little version of Pompidou,” says Shah, referring to the plump chef who kneads the dough. “We did a lot of work on the internal structure of bread so that while it collides and gives with pressure, it also maintains volume.” To help shape the bread, they could drive the internal springs with target shapes.
When someone slices the bread, you see a cellular structure inside. “We couldn’t just do displacement,” says Fong. “We mathematically calculate bubble density and procedurally form the bubbles, then slice through that volumetrically.”
For the vegetables, the effects team developed a chopping system that utilizes rigid-body simulation. First, animators performed the motion—Collette chopping celery, for example. Then, the team analyzed the cutting plane (the direction the knife took through the celery), broke apart the geometry appropriately, and ran a rigid-body simulation on the resulting pieces. “We didn’t prejudice the animation,” says Shah. “We looked at how forceful the knife is and whether the cut is done with confidence or is clumsy.” That animation told the effects team how to set the forces in the rigid-body simulator, which then caused the vegetables to, perhaps, jump on the cutting board, roll off, or move slightly.
QUELLE HORREURI
When Remy looks into the kitchen, he sees garbage boy Alfredo Linguini toss some ingredients into the soup, as if he could cook. Appalled by Linguini’s choices, Remy sneaks into the kitchen and fixes the soup. When Skinner, the head chef, realizes that Linguini touched the soup, he fires him. “You’re F-I-R-E-D.” He doesn’t yet know about Remy’s contributions.
To simulate the chefs’ stiff clothes, Pixar used its own cloth simulator, based on a spring mesh model. “We had to make it more robust, though,” says Green. “When the animators did moves that were too crazy, we invented a new technology so we could pin cloth to a pose and construct to a pose.” To move Skinner’s clothes during a wild pirouette, the effects artists turned animation poses into a series of simulation targets. “We can bind the simulation to the target shapes, say to the top of an apron, and then let the bottom swing around more,” Green says.
Pixar also developed new hair-simulation techniques. “Colette has fairly long hair that we simulated for every shot,” says Green. “To maintain the thick volume, we did hair-to-hair collision. Without it, all the hair interpenetrated.”
Because the rats have short, stiff hair, simulating one rat’s fur was relatively easy by comparison. But, Remy’s pack created some interesting render times. “The crowds got pretty hairy,” says Green. “Each rat had 500,000 hairs, so that could be as many as 500 million hairs in a shot.”
Knowing that they might have as many as 900 to 1000 rats in a shot, Pixar formed a RenderSpeed team, and one problem that team tackled was rendering hair. “We knew that in Monsters, Inc., one shot of Sullivan took between six or seven hours to render,” says Fong. “The machines were slower then, but that was still a long time.”
Thus, the technical directors had the rat hair automatically grow wider and thicker as the rats moved away from the camera. “Because we made the fur bigger, we could reduce the amount,” Fong says. “We did test renders, and you couldn’t tell the difference.”
COOKING SCHOOL
After Skinner fires Linguini, two important plot points take place. The patrons love the soup everyone thinks Linguini created, and Skinner spots Remy in the kitchen. Everyone breaks out. A rat in the kitchen! Ordered to kill the rat, Linguini traps Remy in a glass jar. But, Linguini knows that Remy cooked the soup, and Linguini needs a job. They agree to partner. Two problems: Remy doesn’t talk, and he can’t be seen in the kitchen.
When Bird joined the project, animators were already working with the notion that Remy would puppeteer Linguini, essentially drive his arms and body, by sitting on top of his head and pulling his hair as though clumps of hair were joysticks.
“It only kind of worked,” says Bird. “The idea wasn’t bulletproof.” Bird made two changes to sell the idea. Rather than have Remy peek out from under Linguini’s tall chef hat, which took time and could happen only when no other chefs were looking, Bird made the hat transparent from inside out. From inside the hat, Remy could see out into the bright room, but unless a light shone through the hat just right, no one could see Remy inside.
Bird also added a wild practice session in Linguini’s apartment. Remy blindfolded the gangly Linguini and had him cook a meal by driving him with the hair-clump joysticks. After one hilarious mishap after another, Remy learns how to control this implausible system. By the time the blindfolded Linguini pours a glass of wine without spilling a drop, we’re convinced.
At Pixar, Dylan Brown demonstrates how the animators drove Remy. On Brown’s screen, a flat-shaded Remy grasps a blocky clump of Linguini’s hair in each little rat fist. Running down the right side on Brown’s screen is a list of approximately 20 “avars” (animation variables). In another window, a long, vertical curve lies underneath a frame count. “This is our palette of controls,” Brown says. He picks an avar labeled “Head FB” and Remy nods his head, forward and backward.
Then, Brown animates Remy by clicking handles on the curve to change its shape in each frame, that is, over time. “The smooth vertical curve becomes a rippled line. Walsh continues the explanation. “We use curves to slow in, slow out, and overshoot to control the movement between keyframes.”
Brown adds,”It’s about the transference of energy. Also, it informs motion blur, which is calculated on sub-frames.”
VOILA!
In addition to these standard controls, Pixar created new tools for the Ratatouille animators. When Brown pushes Linguini’s fist into his belly onscreen, the geometry of the fist doesn’t pass through the geometry of the belly, as is typical in 3D animation systems. Instead, Linguini’s belly sinks in and the belly’s surface geometry reforms around Linguini’s fist.
“Before, with our system, if we caricatured too much, like extended the mouth too far, things would either blow up or we would have to wait for simulation,” says Walsh. For Toy Story, Walsh explains, characters had a bladder balloon in their cheeks that stayed in the same spot. For Nemo, the cheeks followed the corner of the mouth. “We had a fake muscle system,” he says. “And for The Incredibles, we improved the muscle system. But for this film, we wanted characters to touch each other, interact with the environment, and squish against each other, and we wanted to see all that while we were animating. So, we designed the ‘collisions project’.”
Software engineer Gordon Cameron and animation character developer Robert Russ devised a system of collision objects that let animators push the geometry around in a way that looked like a volume-preservation simulation.
“These aren’t simulations, because we wanted to give animators direct control,” says Green. “The collision objects are all over the characters, and each collision object can have a different response.” A character might have collision objects in its fingers that react differently from the collision objects in its cheeks. A chest collides in a different way than a belly. When Gusteau touches his face, for example, it deforms appropriately. His eye sockets remain solid, but his cheeks squish, because in the geometry, points collide and move out of the way of each other. The geometry pushes in and bulges out.
When animators wanted characters to interact with vegetables and props, they simply attached collision primitives, spheres, triangles, and so forth, to the geometry. “If I wanted a character to sit in a chair, I’d design the chair to be a collision object so points on the chair could talk to the character,” says Walsh. “When we have objects that aren’t collision-ready—maybe a knife, a fork, or a piece of cheese—we’d attach a collision-primitive shape. It really helped the characters fit in the world and interact with it.”
And what a world. The complex ingredients in Pixar’s Ratatouille recipe have combined to expand, as did the food in the critic’s review, the boundaries of animated filmmaking; The ratty-acting rats. The unexpected, fantastical Gusteau. Cloth, hair, and crowd simulations. New lighting techniques that fill the blacks with rich colors and cast soft reflections on well-used copper pots and stainless steel counters. Fluid simulations that help digital chefs pour sauces and stir soups. Soft-body simulations to nestle tomatoes in crates. A vegetable chopping system. An environment that looks handcrafted. Characters with bodies that react to the environment. Talented animators and artists, and a genius of a director who knows how to tell a story.
“Of all the movies I’ve worked on, I’m most proud of this one,” says Calahan. “I think it’s the best movie we’ve done.”
Bon appetit!
Barbara Robertson is an award-winning writer and a contributing editor for Computer Graphics World.
Source: Computer Graphics World, July 2007
To cast a rat in a tactile Parisian restaurant, Pixar cooked up new tools and techniques that helped their artists create a savory of feature animation
The most unlikely ingredients often create the most delectable dishes, the unexpected flavors transforming food into a mind-altering, tongue-tingling sensation. Listen to food critic Hal Rubenstein waxing rhapsodic in New York Magazine: “… the unexpected ingredients… expand the boundaries of a cuisine and of our desires…. The briny sharpness of braised artichokes with mizuna leaves squares off against soothing goat cheese and roasted peppers, resolving into a delicious truce. Delicately-folded goat cheese tortelloni almost floating above the fork are enveloped in a wondrous coating of dried orange and rarely used wild-fennel pollen.”
Remarkably, Pixar has stirred that feeling into a CG animation with Walt Disney Pictures’ Ratatouille, the studios’ eighth feature film. But, creating food that teases a mouth-watering response was only one challenge for this film.
Ratatouille tells the unexpected yet deliciously hilarious story of a rat named Remy who has a highly developed sense of smell, a talent for combining flavors, and an appreciation of fine cuisine. When Remy slips into the kitchen of Gusteau’s famous restaurant in Paris, he secretly concocts gourmet dishes that astonish the chefs, patrons, and food critics—all of whom who would be horrified if they knew. Mon Dieu!
How could this work, you might ask. A rat cooking in a Parisian restaurant? CG food that looks realistic enough to tickle your taste buds?
Step into Pixar’s kitchen and meet the chefs who cooked up Ratatouille’s magical recipe.
“There’s a certain power that comes from aversion,” says director Brad Bird of the rat in the kitchen.
“We had to bend the canons of CG,” says Sharon Calahan, director of photography/lighting, who analyzed food photography to develop the film’s look. “I wanted everything to look juicy and succulent in its own way.”
STIRRING THE POT
The story almost didn’t work. A year and a half before the film’s release date, Pixar’s executive producer John Lasseter, president Ed Catmull, and then CEO Steve Jobs asked Bird, who had own an Oscar for The Incredibles and Annies for that film and The Iron Giant, to step into the production.
Everyone believed in the idea, but it hadn’t coalesced into a story,” Bird says. “I kept the premise and kept the characters, but I wrote a new script. I used only two shots from the previous version and two lines of dialog.” (One line is, “You are fired. F-I-R-E-D,” which Skinner, a chef in charge of Gusteau’s kitchen, shouts to Alfredo Linguini, a garbage boy.)
Even though Bird kept the characters, he made major changes to some. First, he turned the rats into rats. Until Bird became director, to soften the impact of seeing a disgusting rodent in a kitchen, all the rats had been cute and cartoony. “I felt that was a big mistake,” says Bird. “Putting a rat that wants to be a great chef in a kitchen is the height of absurdity. Remy aspires to be human, but in the early version, the rats were like tiny humans. The rats weren’t ratty.”
By making Remy and his family act like rats, when Remy chose to walk upright, that action emphasized a story point. An expensive story point. To put the rats on all fours, Pixar had to rebuild the entire rat cast using a different mesh and articulation. “The bipedal articulation didn’t work when the rats were on all fours,” says Mark Walsh, one of two supervising animators. “So after about a year of work, everything changed.”
Dylan Brown, the other supervising animator, adds, “A rat moves its shoulders from the inside out, but humans move from the outside in.” Moreover, even though Remy chooses to be bipedal when he’s interested in cooking, at other times, he continues to scamper on all fours. And like real rats, he and his family can squeeze through tiny holes, so the rigs needed to incorporate squash and stretch.
“It’s easy to build a quadruped, and it’s easy to build a biped, but we had to interpolate rigs,” says Brian Green, character supervisor. “It gave us much angst. Within a shot, Remy could walk on all fours, and then stand up, grab a spoon, and start cooking.”
Bird also gave Collette, the only female chef, a larger role, and he killed the owner of the restaurant, the five-star chef, Gusteau. “Brad [Bird] came to us one day and said, “Gusteau is dead,” Walsh recalls. “Everyone’s face went pale. Gusteau had been articulated and modeled. Then Brad said, “But, he’s Remy’s conscience, his inspiration. He’ll show up in the movie as this sprite guy.” People looked at Brad with their heads titled to one side and their eyes half-lidded. “Gusteau became the unexpected ingredient.
In Ratatouille, Remy never talks to the human chefs in the kitchen. He’s a rat; he talks only to his family. And, to Gusteau. Gusteau appears as a ghost, having committed suicide after food critic Anton Ego gave him only four stars, not give. It’s his cookbook, “Anyone Can Cook,” that inspires Remy—and also saves his life.
LE MILIEU
The film opens in the French countryside, with a voice-over of Remy telling his tale. It’s clear from the opening scene, a rustic cottage framed in autumn leaves, that Pixar has created something unique. The light. The colors. The textures. Ratatouille is not a film with brightly colored toys, fish, bugs or cars.
“We tried to make this film look different,” says Michael Fong, supervising technical director. “One of the big things was to break away from what standard CG looks like. We got rid of straight lines and did a lot of hand tweaking. We wanted it to feel handmade. The other part is lighting and shading.”
In the countryside, Remy introduces good taste to his brother Emile, who is happy eating garbage. Their father puts Remy’s nose to work, though, sniffing for poison before allowing the pack to eat the garbage they collected.
To animate the rat pack, which sometimes totaled a thousand rats, Pixar used Massive software for the first time. Animators created motion cycles, and a crowd team fed the cycles into Massive brains that moved bodies created with mix-and-match parts. In addition, Pixar developed tools to pull an individual rat out of the crowd simulation and move it into the studio’s proprietary animation software, Menv. Pixar also uses Autodesk’s Maya for modeling and its in-house software, Geppetto, for rigging.
When Remy explores Granny’s cottage, the house from the opening scene, he discovers Granny’s cookbook. But, Granny spots Remy and his family and opens fire with her shotgun. The rats run to their boats. The water sweeps them into a storm drain, and Remy rides out a raging flood by hanging onto the cookbook.
To create the flood, the technical directors used the same simulator that had created water for Finding Nemo, but changed the mesh surfaces- that is, changed the way they built meshes from the simulation data.
“Think of a big vat of Ping Pong balls,” Fong explains. “The simulator moves them in certain ways like big waves. We find the surface and make a mesh out of it. In Nemo, when we did that, the 3D mesh was temporally coherent, but we lost some of the detail. With Ratatouille, when we threw the sheet over the Ping Pong balls, we got more detail. We saw the resolution at a Ping-Pong level.” For Nemo, Pixar had used particle-level sets; for Ratatouille, they switched to more of an implicit solution using research from Chen Shen and others at the University of California at Berkeley.
Alone now, Remy pulls himself out of the water and onto a ledge under a storm grate. There, he rests and pages through the cookbook. When he reaches Gusteau’s page, the image of the great chef becomes animated. Gusteau rises from the page, and the now floating, semi-transparent spirit tells Remy to go up and look around. When Remy does, he discovers he’s in Paris, and it’s beautiful.
L’AMBIANCE
The early story idea for this film came from Jan Pinkava, who won an Oscar for his short film, “Geri’s Game,” and he created the early designs for Ratatouille’s world, as well.
“I hope it feels like it did for us when we were running around Paris in the fall,” says Calahan, “the softness of light, the trees turning color. There are a lot of neutral tones in the film, even on the streets of Paris with its limestone buildings and granite streets. I wanted to use color sparingly, to use a more limited palette, but at the same time, to get more color into our darks. And where we wanted color, I wanted it lush and rich.” To create this look, Calahan worked with effects supervisor Apurva Shah to develop a new illumination model. “The key aspect was that we separated saturation from luminance (contrast),” says Shah.
Shah explains that many people in computer graphics believe that the math of CG imagery should follow physics. But, even sophisticated CG imagery models only approximate how light bounces in a scene to calculate color. “You can’t get all the subtle softness,” Shah says.
Moreover, adding rich color to dark areas often increases contrast. “Typically, the renderer does its physics to calculate color, and then you apply a look-up curve; you use tonal mapping,” says Shah. “But, that influences contrast in the image. That’s why it is nice to separate contrast and saturation. If the only way to increase saturation in the darks is by pushing contrast, you get into a place that doesn’t look real.”
With that separation introduced into illumination model at a basic level, Calahan and the lighting leads created the balance they wanted and established key values. “We got rid of the icky grays,” Calahan says. “We could saturate colors in the darks and de-saturate color in the lights. It’s definitely a different way of thinking about lighting. CG purists think it’s the wrong way. And some people would argue that the right place to do this is in compositing, where they have more control. But I wanted things to be done in-camera.”
In addition to separating contrast and saturation in the illumination model, Shah and Calahan decided to work in non-linear color space. “From a tonal standpoint, people doing CG tend to use linear color space,” Shah explains. “We find in linear space that light falls off too hard or adds up in a slightly weird way, so we have a different space, a non-linear space. Broadly speaking, it’s more like how things happen in nature. Many people do this on a light-by-light basis, but with Ratatouille, we introduced that fundamentally into our illumination model. It automatically works with every prop in every sequence.” For example, Calahan explains, in the color space used before, when an artist added two lights together, it increased the brightness noticeably, but didn’t’ double it. The light added up. In the new color space, however, two lights made something doubly brighter.
“None of our tools worked the same way,” Calahan says. “Low-intensity lights that you think wouldn’t contribute much could affect the look of a scene. But we quickly adapted. To me, it felt more natural. It’s like when you change an f-stop, you expect it to halve or double the light.”
In addition, Pixar introduced depth-based tinting in the shaders. “If you look at a splash of wine on the side of the glass, it’s almost transparent,” says Shah. “The color builds.”
GOURMET KITCHEN
When Remy climbs from the storm drain onto the streets of Paris, he’s across the street from Gusteau’s restaurant. Atop the building, a giant rendition of Gusteau in neon becomes animated and encourages Remy to visit the kitchen.
At first, Remy only peeks inside the glorious, bustling kitchen filled with gleaming copper pots and pans- frying pans, crepe pans, saucepans, stockpots, fish poachers, a wok, casseroles, roasting pans. Chefs wearing stiff white coats and tall white hats chop vegetables, stir soups, knead bread dough, and sauté fish. A waiter rushes in from the dining room.
Much of the action in the rest of the film takes place in the kitchen; it had to feel believable. “The grout lines aren’t straight in the tiles,” says Fong. “The reflections are blurry.”
Yet, creating the soft reflections in the kitchen’s multiple burnished and dented surfaces, the stainless steel table, and the copper pots and pans became compute-intensive. “The problem with raytraced reflections is that uneven surfaces bounce the rays a lot,” says Shah. “And, when you want a soft reflection, you see the cone angle big, so you need a lot of rays.”
Using a reflection map would have been faster, but it wouldn’t have produced correct distortions. “So, we took the radiance of the world and baked that illumination into a [Renderman] brick map,” says Shah. Then, they bounced rays into that brick map. When the rays found an intersection in the baked-out map, rather than using a shade calculated at that point, they averaged the results from the collection of rays sent into the large area. “The result is that we could send out fewer rays and still have the correct distortion,” he adds. And that produced kitchen surfaces with a tactile patina.
For the wine, however, the artists used shaped reflections to give the liquid a proper sheen. And, to put textures on such liquids as soups and sauces, they developed new shaders.
LES INGREDIENTS
The combination of the new illumination model, new shaders, and such lighting techniques as subsurface scattering made the food look appetizing. But the food also needed to act like food, to move like food.
“The challenge for CG food is to not have it look like a play-set of plastic food,” says Walsh. “We wanted the audience to see it and say, ‘I’d like a bite of that.” The most banal things we take for granted—chopping carrots, slicing onions, sauté-ing, and flambéing—were huge projects for our effects team.”
Shah’s effects team filled the kitchen with simulations. Fluid simulations for liquids and fire, soft-body simulations for food on plates and vegetables in crates, gas simulations for steam, and rigid-body simulations for slicing and dicing.
For fluids, Pixar used the simulation engine developed for the water in Finding Nemo, Maya fluid simulations, and an open-source dynamics engine developed at Stanford. In addition, a new simulator handled thick sauces. “Brad Bird was really picky with small bodies of water,” says Fong. “Soups and sauces have a different viscosity than water.”
Soft-body simulation helped dress the sets—and the plates. “In CG, it’s easy to make things seem stacked up and linear, barely touching, like they’re sitting on eggshells,” says Fong. “We wanted to make sure the objects felt kind of squishy.”
For bread, they used an extension of soft-body dynamics. “Brad [Bird’s] brief was to think of the dough as a little version of Pompidou,” says Shah, referring to the plump chef who kneads the dough. “We did a lot of work on the internal structure of bread so that while it collides and gives with pressure, it also maintains volume.” To help shape the bread, they could drive the internal springs with target shapes.
When someone slices the bread, you see a cellular structure inside. “We couldn’t just do displacement,” says Fong. “We mathematically calculate bubble density and procedurally form the bubbles, then slice through that volumetrically.”
For the vegetables, the effects team developed a chopping system that utilizes rigid-body simulation. First, animators performed the motion—Collette chopping celery, for example. Then, the team analyzed the cutting plane (the direction the knife took through the celery), broke apart the geometry appropriately, and ran a rigid-body simulation on the resulting pieces. “We didn’t prejudice the animation,” says Shah. “We looked at how forceful the knife is and whether the cut is done with confidence or is clumsy.” That animation told the effects team how to set the forces in the rigid-body simulator, which then caused the vegetables to, perhaps, jump on the cutting board, roll off, or move slightly.
QUELLE HORREURI
When Remy looks into the kitchen, he sees garbage boy Alfredo Linguini toss some ingredients into the soup, as if he could cook. Appalled by Linguini’s choices, Remy sneaks into the kitchen and fixes the soup. When Skinner, the head chef, realizes that Linguini touched the soup, he fires him. “You’re F-I-R-E-D.” He doesn’t yet know about Remy’s contributions.
To simulate the chefs’ stiff clothes, Pixar used its own cloth simulator, based on a spring mesh model. “We had to make it more robust, though,” says Green. “When the animators did moves that were too crazy, we invented a new technology so we could pin cloth to a pose and construct to a pose.” To move Skinner’s clothes during a wild pirouette, the effects artists turned animation poses into a series of simulation targets. “We can bind the simulation to the target shapes, say to the top of an apron, and then let the bottom swing around more,” Green says.
Pixar also developed new hair-simulation techniques. “Colette has fairly long hair that we simulated for every shot,” says Green. “To maintain the thick volume, we did hair-to-hair collision. Without it, all the hair interpenetrated.”
Because the rats have short, stiff hair, simulating one rat’s fur was relatively easy by comparison. But, Remy’s pack created some interesting render times. “The crowds got pretty hairy,” says Green. “Each rat had 500,000 hairs, so that could be as many as 500 million hairs in a shot.”
Knowing that they might have as many as 900 to 1000 rats in a shot, Pixar formed a RenderSpeed team, and one problem that team tackled was rendering hair. “We knew that in Monsters, Inc., one shot of Sullivan took between six or seven hours to render,” says Fong. “The machines were slower then, but that was still a long time.”
Thus, the technical directors had the rat hair automatically grow wider and thicker as the rats moved away from the camera. “Because we made the fur bigger, we could reduce the amount,” Fong says. “We did test renders, and you couldn’t tell the difference.”
COOKING SCHOOL
After Skinner fires Linguini, two important plot points take place. The patrons love the soup everyone thinks Linguini created, and Skinner spots Remy in the kitchen. Everyone breaks out. A rat in the kitchen! Ordered to kill the rat, Linguini traps Remy in a glass jar. But, Linguini knows that Remy cooked the soup, and Linguini needs a job. They agree to partner. Two problems: Remy doesn’t talk, and he can’t be seen in the kitchen.
When Bird joined the project, animators were already working with the notion that Remy would puppeteer Linguini, essentially drive his arms and body, by sitting on top of his head and pulling his hair as though clumps of hair were joysticks.
“It only kind of worked,” says Bird. “The idea wasn’t bulletproof.” Bird made two changes to sell the idea. Rather than have Remy peek out from under Linguini’s tall chef hat, which took time and could happen only when no other chefs were looking, Bird made the hat transparent from inside out. From inside the hat, Remy could see out into the bright room, but unless a light shone through the hat just right, no one could see Remy inside.
Bird also added a wild practice session in Linguini’s apartment. Remy blindfolded the gangly Linguini and had him cook a meal by driving him with the hair-clump joysticks. After one hilarious mishap after another, Remy learns how to control this implausible system. By the time the blindfolded Linguini pours a glass of wine without spilling a drop, we’re convinced.
At Pixar, Dylan Brown demonstrates how the animators drove Remy. On Brown’s screen, a flat-shaded Remy grasps a blocky clump of Linguini’s hair in each little rat fist. Running down the right side on Brown’s screen is a list of approximately 20 “avars” (animation variables). In another window, a long, vertical curve lies underneath a frame count. “This is our palette of controls,” Brown says. He picks an avar labeled “Head FB” and Remy nods his head, forward and backward.
Then, Brown animates Remy by clicking handles on the curve to change its shape in each frame, that is, over time. “The smooth vertical curve becomes a rippled line. Walsh continues the explanation. “We use curves to slow in, slow out, and overshoot to control the movement between keyframes.”
Brown adds,”It’s about the transference of energy. Also, it informs motion blur, which is calculated on sub-frames.”
VOILA!
In addition to these standard controls, Pixar created new tools for the Ratatouille animators. When Brown pushes Linguini’s fist into his belly onscreen, the geometry of the fist doesn’t pass through the geometry of the belly, as is typical in 3D animation systems. Instead, Linguini’s belly sinks in and the belly’s surface geometry reforms around Linguini’s fist.
“Before, with our system, if we caricatured too much, like extended the mouth too far, things would either blow up or we would have to wait for simulation,” says Walsh. For Toy Story, Walsh explains, characters had a bladder balloon in their cheeks that stayed in the same spot. For Nemo, the cheeks followed the corner of the mouth. “We had a fake muscle system,” he says. “And for The Incredibles, we improved the muscle system. But for this film, we wanted characters to touch each other, interact with the environment, and squish against each other, and we wanted to see all that while we were animating. So, we designed the ‘collisions project’.”
Software engineer Gordon Cameron and animation character developer Robert Russ devised a system of collision objects that let animators push the geometry around in a way that looked like a volume-preservation simulation.
“These aren’t simulations, because we wanted to give animators direct control,” says Green. “The collision objects are all over the characters, and each collision object can have a different response.” A character might have collision objects in its fingers that react differently from the collision objects in its cheeks. A chest collides in a different way than a belly. When Gusteau touches his face, for example, it deforms appropriately. His eye sockets remain solid, but his cheeks squish, because in the geometry, points collide and move out of the way of each other. The geometry pushes in and bulges out.
When animators wanted characters to interact with vegetables and props, they simply attached collision primitives, spheres, triangles, and so forth, to the geometry. “If I wanted a character to sit in a chair, I’d design the chair to be a collision object so points on the chair could talk to the character,” says Walsh. “When we have objects that aren’t collision-ready—maybe a knife, a fork, or a piece of cheese—we’d attach a collision-primitive shape. It really helped the characters fit in the world and interact with it.”
And what a world. The complex ingredients in Pixar’s Ratatouille recipe have combined to expand, as did the food in the critic’s review, the boundaries of animated filmmaking; The ratty-acting rats. The unexpected, fantastical Gusteau. Cloth, hair, and crowd simulations. New lighting techniques that fill the blacks with rich colors and cast soft reflections on well-used copper pots and stainless steel counters. Fluid simulations that help digital chefs pour sauces and stir soups. Soft-body simulations to nestle tomatoes in crates. A vegetable chopping system. An environment that looks handcrafted. Characters with bodies that react to the environment. Talented animators and artists, and a genius of a director who knows how to tell a story.
“Of all the movies I’ve worked on, I’m most proud of this one,” says Calahan. “I think it’s the best movie we’ve done.”
Bon appetit!
Barbara Robertson is an award-winning writer and a contributing editor for Computer Graphics World.
Source: Computer Graphics World, July 2007
Subscribe to:
Posts (Atom)