Tuesday, March 06, 2007

Rigging a Monkey for Panda Puppet

One of the features that Blender's Ketsji game engine is noticeably lacking is the ability to use shape-keys. In case you're not familiar with them, shape-keys (sometimes called "blend shapes" or "morph targets" in other 3D software packages) allows you to save and store different shapes of your character. In animation this is very useful for doing things like lip sync and creating facial expression.

Working on Panda Puppet I was stuck for quite awhile trying to figure out a work around for this problem until I stumbled across an article on bone based facial animation. I won't bore you with all the details (if you really want them, click the link) but essentially the idea is to stick a bunch of bones in a character's head and have each one control a different area of the character's face.

Here's how I am currently rigging using the default monkey head in Blender:


The bones work as follows:

B/C - Ears
D/E - Brow
F - Nose
G - Snout
H - Jaw


Here is a side view, in which the "A" bone (the primary head bone) is visible.

I am working with a low-poly head, made up of about 500 polygons. The poly count could be higher (more polys = smoother shape), but I am keeping it simple for now. Hopefully this "bone-based approach" will work. I need a more or less functional monkey head by March 15th to meet the deadline I am working with. The next week and a half is going to be very, very busy!

Friday, March 02, 2007

Wii Power Glove Controller



A little over year ago I was speculating about using the old NES Power Glove to perform digital puppetry. I haven't heard of anyone doing that just yet, but someone in Japan has hacked together a custom controller using the Wii remote and an old NES Powerglove. The modded glove has specially mounted triggers on the thumb and middle finger to simulate the A and B buttons and an opening for the wii attachment in the back. It seems to work really well, you can see it in action in the clip above. More pics and details are available at Slash Gear.

The obvious digital puppetry application for this would be to make Machinima on the Wii and since so many people have already hacked the Wii remote to use it on their PCs, with a little technical know-how you could really start to have some fun with this thing.

Tuesday, February 13, 2007

What you can't do in Machinima (for now)


This animation test above is a fantastic example of pose-to-pose animation (even if it is a "test") from Pixar. As I've mentioned many times here before, one of the inherent limitations of Machinima as it exists today is that the available authoring tools are really unintuitive and don't allow for much expression. Even the best examples of Machinima puppeteering like the ILL Clan's Trash Talk With ILL Will - which won a Mackie for best virtual performance at 2006 Machinima Awards - are ridiculously crude compared to what most puppeteers and animators can do.


I also like this fantastic clip from Aardman. It's done with Claymation of course, but it's so simple there is no reason something very similar couldn't be done in real-time. There is absolutely no reason high-quality animation work can't be done in real-time. The only problems is that a) you need fast enough hardware to render enough polygons on screen and b) there aren't simplified tools that allow you to create great performances.

All it takes is a little money to solve the first problem and, well, I'm working on the second.

Friday, February 09, 2007

Two and a Half Virtual Men



Many viewers in the U.S. who watched the Super Bowl pre-game show last weekend got their first look in to the virtual world of Second Life thanks to this short promo for the CBS sitcom Two and a Half Men that was created using SL. The big-time exposure is something of a landmark achievement for Machinima, although unfortunately this is a pretty weak piece, no doubt due in part to the fact that it was reportedly produced for CBS in big a rush.

The Two and a Half Men promo was created by The Electric Sheep Company, which usually does better work than this. Visit their Machinima portfolio for some much nicer Machinima examples.

Thursday, February 08, 2007

Where's Waldo?

Waldo C. Graphic, the world's first digital puppetI'm putting together an educational presentation about digital puppetry and Machinima and need a little help. I'm looking for a high quality picture of of Waldo C. Graphic. Any chance any Machin-X readers have a nice, high quality picture of him? Say something 640x480 pixels or bigger maybe? I've done all the usual Google searching and all I've turned up is this one on the right, which is a little too small.

If you've got a pic that you can share please email me at puppetvision [at] gmail dot com. Thanks!

Panda Puppet Progress

Sales Guy
"Sales Guy" is the talking head being used to program Panda Puppet right now.

Just a quick update about ongoing developments with Panda Puppet. The image above is "Sales Guy" the nickname that's been given to the head being used to map and program the facial controls for Panda Puppet. I was hoping to have some video of Sales Guy in action to post here by now, but Sales Guy kind of, uh, broke earlier this week. I'm still trying to get to the bottom of the problem, but I hope to have it resolved before the end of the day today.

What's always interesting about a project like this is that things that you expect to be difficult turn out to be relatively simple while the little things that you expect to be easy end up being very, very hard.

Last week I came to the conclusion that Blender's internal game engine is not really up to snuff. The 3d engine and can't meet all of Panda Puppet's needs (there are plans to overhaul Blender's GE using OGRE, but there's no confirmed time line on when that will happen). I've been exploring using Crystal Space as Panda Puppet's 3d engine via a nifty Blender plug-in called Blender2Crystal. Unfortunately, the plug-in doesn't seem to be widely used and there is limited documentation available so things are slow going on that front.

The other thing I have been looking in to is the Sunflow renderer, which looks promising. Although Panda Puppet will work in real-time, one it's key features is that performances can be tweaked, edited out and rendered out as conventional animation. Sunflow isn't natively supported by Blender right now, but there does seem to be some interest in getting more support for it from the Blender community.

I have learned more about programming and 3D graphics in past three weeks than I have in the previous ten years.

Back with more soon!

Monday, January 29, 2007

Making Love Not Warcraft


South Park's Stan, Kyle, Cartman, and Kenny as World of Warcraft characters in the South Park episode Make Love Not Warcraft.

One of the biggest things to happen to Machinima last year was the use of it to create Make Love Not Warcraft, an episode of South Park that parodied the popular massive multiplayer online role-playing game (MMORPG) World of Warcraft and gamers in general. Machinima.com has an interview with South Park's Frank Agnone, J.J. Franzen, and Eric Stough explaining how Machinima was used to create in-game sequences in the episode.

One of the things that impressed me about Make Love Not Warcraft was the relatively high degree of lip sync in the Machinima sequences, which I didn't realize could be done in a game like Warcraft. Turns out that it can't; Warcraft's publisher Blizzard helped the show cheat a little bit, providing South Park's animators with Maya models of the characters to animate conventionally for close-ups. Even if it's not technically 100% "true" Machinima though, Make Love Not Warcraft is a great example of how Machinima and real-time animation can be incorporated in to a professional production pipeline.