FMX 09, Day Three
7:30 am and somebody walks downstairs. Good morning to me. My program for today was mostly about tracking and motion capturing and heavy duty compositing. You might have guessed: It was the day of Benjamin Button.
After enjoying the breakfast a little too long I was rushing down Königsstraße in my car so I would make it to Pixar’s RenderMan presentation. I already knew what it was going to be considering last year (“The Über-Sprite”, the rocket, the fast-rendering motion blur) but Pixar is rather generous in handing out posters and presents and I wanted me to get another teapot for my collection 1. I was too late, the room bursting with people. Obviously, word had spread that you get presents. People can be so greedy. I asked if I could make a reservation for the afternoon but it was in vain.
There I was standing, lacking a teapot and a clue of what I wanted to see instead. I headed to the biggest hall and ended up in “PhotoReal Facial Animation” by Patrick Davenport and Steve Caulkin of Image Metrics. They showed the sample clips I already knew so it was no surprise to me that… (click “show” to view spoiler) [spoiler]…Emily’s head was CG.[/spoiler]
You can find the clips also at YouTube if you’re interested.
The crazy stuff Imagemetrics does is providing face tracking with only the use of a video camera. The tracked regions of the face are then moved on a CG model. Tweak the keyframes and you’re done. It’s that easy! Well, it’s not. Steve Caulkin laid out the long way to their Emily demo which occurred to me as not really time saving: Apart from photographing the actress’s face for the texture, there also had to make a cast of her teeth but the molded teeth wouldn’t necessarily fit correctly so you end up taking x-rays to learn how to place the teeth correctly. And that’s only the beginning.
When scanning the different expressions of the actress the data was anything but coherent so somebody had to clean up all the meshes (about 55) and get the details out: Pores and such can only be done with a bump or displacement map. It would be just too much for the statistics-based tracking algorithm.
Steve Caulkin owes me a venti Caramel Macchiato. His presentation was in-depth and very interesting but, alas, Steve is more a guy you put in front of a C++ compiler than in front of an audience and it was hard to follow his low pace.
So I ended up at Starbucks with an iced caramel macchiato before making another attempt at getting into one of Pixar’s presentations. I queued up 20 mins and before they opened the doors there was already not much oxygen left. And I felt the urge for another caramel macchiato.
Pixar’s Carreer Gears was a again a valuable information on how to apply and how to put your reel together for Pixar. Right in the beginning the panelists 2 asked the audience to raise their hands of what position at Pixar they’re interested in. To sum things up: Two thirds were character animators, many wanted to become story artists and only a few people were interested in the other stuff. And I bet I was the only compositor in the whole room. Here’s what’s strange: Last year I was told that Pixar doesn’t really do compositing which I thought was a joke or they wanted to pull my leg. Today they also didn’t say anything about job openings or positions in compositing. Very strange.
The panelists talked about their experiences at Pixar and how they got their job and spread the usual tales of people who were hired right off the college. Then they took questions. I must have dozed off somewhere in between but it was mostly asked on the process of applying and what Pixar is looking for. Here’s the stuff I remember:
- Don’t send in a reel when you have nothing to show.
- Put your name on everything.
- Have the DVD region-code free and tested to play on a standard set-top DVD player (NTSC and PAL both are fine).
- Apply for a certain job instead of just applying for the database.
- Send every 8 to 12 months an updated reel to show how you progressed.
- Don’t send every week new reels.
- Write a decent cover letter. They’ll read them.
- Don’t forget the all-important shot-breakdown. Preferably even on screen.
- Don’t chase the ostriches on the front lawn (I guess that’s where I dozed off).
Interestingly I gradually lost my interest and my caffeine addiction kicked in hard after an hour so I left for a chili dog and a precious cup of coffee. At Starbucks they either love me or hate me.
For lack of motivation to look for the right screening room for “Analog Artifacts in CGI” I went with the crowd to witness “Skin & Lighting Research” by Christophe Héry of ILM whom I already know from last year.
Holy moly! In his presentation I saw more formulas than in my whole college education 3 In fact he told nothing new about subdermal distribution and the models on how to calculate them (although I didn’t understand much of the math). So far, so good. But what If you can’t afford raytracing because, say, your artists produced more vertices than the final rendering will have pixels (see Pirates of the Caribbean II: Dead Man’s Chest)? You’ll have to have an point cloud based approach to dodge memory demanding raytracing. And when you don’t have raytracing going on RenderMan really does the trick fast and good.
Cute as a Button
That lecture served as the perfect introduction to what we all have been waiting for: The Curious Case of Photoreal Head Replacement.
Jonathan Litt had a huge presentation explaining the lighting, rendering and compositing of that huge task. How do you start? They started with a artfully crafted latex-maquette of Brad Pitt’s face made old, for it had a really realistic appeal in subsurface scattering and served as most valuable reference when comparing renderings of the CG head to it.
The head itself was done in Mudbox (yay!) and in it’s highest resolution had about 4.5 million polygons. This high level of detail was preserved by using displacement maps, that further were driven by curves so wrinkles would get stronger or weaker depending on the facial expression. The eyes were modeled and textured anatomically correct (I’ll just throw some expressions at you of what they considered: caruncle, meniscus, conjunctiva, sclera, cornea). As further reference they had a extreme-high-res photograph of Brad Bitt that you could see the micro-wrinkles between his pores. “That’s thousand dollar pores!” Jon joked.
But this perfect model also needed to be lit in perfect coherence to the on-set instruments and light sources. So additionally to the high res long-lat-HDRs that were taken on set, there were extensive survey data on each shot of all the light sources and scene geometry so that the HDRI could be mapped back in Maya onto this surveyed geometry.
The maquette of the head was photographed in LightStage with light from all possible directions (separately). A script then made it possible to color and blend these separate light-passes together based on the information of the on-set HDRIs. Why the hassle? Because the renderings were put next to this near perfect reference and the artists could check on how close they got.
The next obstacle was to choose the right approach on how the HDR sampling should be done, either Inside-Out (I-O) or Outside-In (O-I) from the HDR. The I-O approach is usually used to sample the environment for Global Illumination. You have to fire a lot of rays to cover correctly bright light sources. So you need to find hot spots and treat them as emissions. I-O works well with spheres but with other geometry you get shadow bending 4. The solution to this problem was to scatter the origin of the emission-positions during rendering (see the paper of Kollig & Keller, 2003).
probably guess that it didn’t simplify things that the head was moving through the scene.
The solution to all this blocking and head-movement was to reposition the HRDIs on every frame on the position of the body-double’s head. Because there was enough tracking data of the head moving through the scene the mapped HDRI in Maya was rendered in Nuke to match the position of the head which was much easier than doing it from scratch.
What comes now is really sexy: To single out light sources the direct practicals and instruments visible in the HDR were blocked or painted out in Nuke resulting in an HDR image of the ambient lighting. The missing “hero lights” were then positioned as area lights in Maya and given a HDRI texture. This was also very important for the eye-lights.
Still there had to be adjustments made for the eye sockets and eye-lights because on set the lighting was done on the body actors.
I really realized that I want to work at Digital Domain: They value Maya, Mental Ray and, most important Nuke. Adopt me!
The last presentation I saw before going to my car for some sleep was by Steve Preeg on the Animation and Performance of Benjamin Button. The big issue was on how to capture the performance of Brad Pit and have it applied to the digital head. And because the show was a $ 150 million Fincher/Pitt movie there was no room for error. If you’d mess it up, they would mess you up.
To get all the muscles in Brad Pitt’s face right Preeg thought about CAT scanning him but his manager just told Steve to think of something different. And so he did. Initially Digital Domain got the guys from Mobile who had developed a volumetric capturing system and captured various key poses of Brad Pitts face as basis for the blend shapes in Maya. When everything was tested and worked on they needed to capture the actual performance by Brad for the digital head.
They had him watch the clips from the movie with the body actor so he knew what was going on around the him. During his performance his face was filmed from four different positions, his cues were given brad via in-ear monitoring. In fact, Digital Domain even tried Imagemetrics but the result was too ‘dead’ to them, however it helped much in timing the animation which was all done by hand. Thus it was guaranteed to keep the intent of the performance rather than applying it with strange results. “Sometimes is just a millimeter more or less on one of the eyelids between creepy and cute”.
What I have learned today:
- That Steve from Imagemetrics probably wouldn’t pass a Turing test.
- That you can capture the facial performance of actors during motion capture by having them wear head-mounted camera-rigs with a light source both pointed at their faces.
- That on a Z-buffer approach to subsurface scattering the resolution of the buffers matters a lot (bigger = better).
- That on a Z-buffer approach to subsurface scattering you should keep the buffers separate, meaning that nothing that’s not part of the skin may cast shadows inside the skin.
- That on a Z-buffer approach to subsurface scattering won’t let you have your precious raytracing. So nobody does it anymore.
- That you best take texture photographs of skin by having polarization filters on your lights and one (90° out of phase) on your camera. Thus you block out the specular highlights and only get the diffuse light. Still you need to paint out shadows. Use 6 soft lights when you don’t have the luxury of having a Light Stage.
- A big deal in believability in CG skin are oil layer and peach fuzz. If you can’t nail it down why something doesn’t feel right then it’s usually one of those things.
- That working on 64 bit machines with 16 gigs of RAM really saved Digital Domain’s ass in producing Benjamin Button.
- That the UV-Space in Nuke (if kept in the EXRs) can save much time for last minute changes on textures.
What surprised me today:
- That you can talk passionately about human emotion without showing any.
- That Image Metrics also use Eurostile as their house font. Like me. And they’re not the only ones so I really should think of a new font then…
- That relatively few people who want to work at Pixar are interested in lighting, shading, layouting, rendering, controlling, software engineering or cinematography. They all want to become animators, character designers or, cough, directors.
- That I used working with z-buffered renders a lot in the hey-days of the late 90′s. I feel old.
- That not a single CG spotlight was used for the lighting of Benjamin Button.
- That Brad Pitt’s teeth were too white to pass as a 70-year old. For the digital head Steve Preegs teeth-color was used. That’s why he quit smoking on the show.
- That it was the first time that I read ‘LOL’ in a presentation. It is 2009 and netspeak finally conquers offline-speech.
- …that consists so far of one Ratatouille-themeded teapot. ↩
- I only remember Robin McDonald (she’s here every year wearing an Incredibles T-shirt) and Danielle Feinberg (DOP of Wall·E). ↩
- Not considering my term at the Graz University of Technology where they showed us how to have the logic (=true/false) programming language ‘Prolog’ compute multiplications. Crazy shit! ↩
- It’s like lighting something with a ball of made single light sources: They all cast overlapping but sharp shadows. ↩

Comments
No comments yet! Please feel free to add one!