Animated Diffuse Maps in Facial Animation

Animated Diffuse Maps in Facial Animation

If there was one specific takeaway that I wanted the audience to get from my GDC talk, it’s that we need to start animating our diffuse maps on faces.

Back on the Tiger Woods 2007 project, the geometry of Tiger Woods (and the other characters) was animated with standard, boring, motion capture data. If you animate a head that way, it will be deep in the uncanny valley as many games have shown. But if you take that exact same data and animate the diffuse map, it looks amazing.

The original, uncompressed data was never released. That was my main regret from the project. Obviously, releasing data of someone like Tiger Woods is very difficult, but there were other tests with actors that are easier to release from a legal perspective. If anyone at EA is listening…

Regardless, I’ve been looking at data like this since 2006, so it’s frustrating to me that it wasn’t shared. When you look at data like this, animating the diffuse map becomes the most obvious idea in the world. Fortunately, I stumbled upon this project:

This was a cool project from an named Lukáš Hajka who created a DIY Ucap system. If you look at this video, it looks amazing. So how is he doing it? Here is another look at it:

That raises an interesting question: Why does it looks so good? What is he doing that is so much better than your standard game? This thread on zbrushcentral goes over it (#7) as well as this the Crossing the uncanny valley WIP thread at You can also check out his tumblr page showcasing other work.

Is he doing anything special with the geometry? No. He is doing standard joint animation with one joint per dot.

Is he doing any special rendering? No. It’s just the maya viewport. There is no advanced skin shading.

Is he doing something interesting with normal maps? No. The lighting is completely ambient. The normals have no effect.

Then what is going on? Just this:

It’s an animated diffuse map. That’s it. That is why I’m a firm believer that animating the diffuse map is the key to solving the uncanny valley. Those subtle little color changes somehow make a huge difference.

For most games it is not reasonable to capture a unique diffuse map for every frame of animation. I’m not saying that you should actually go through this process. While the results look great, there are many valid reasons why games can’t use it.

But that doesn’t let us of the hook. There are many ways we could possibly animate the diffuse map. I’m not dogmatic about how we animate our diffuse map. But I am absolutely dogmatic in saying that we need to animate our diffuse map. Somehow, someway, we need to figure this out. And that is the main point that I hope everyone took away from the talk.

Of course all the other things are important too. Good geometry animation, skin shading, and all the other aspects of the face are important as well. All I’m saying is that the diffuse map needs to get more attention, and it’s not “just wrinkles”.

comments powered by Disqus