Wednesday, November 30, 2005

Digital puppetry projects

In January I'll be formally launching my new puppetry-oriented production studio, which has actually been in existence since 2004 but I've tried to keep under the radar while I spent a year at a small business incubator for young entrepreneurs in Toronto and did a considerable amount of research in to - yup, you guessed it - digital puppetry.

I don't want to say too much about the new studio just yet. Things are still very much in flux with it - at the moment the studio consists of basically just me with a few friends who are artists and puppeteers lending a hand when the need arises - but I will say that the studio's focus is exlcusively on creating character-driven content by blending puppetry with digital technology.

There are a few small projects in the pipeline at the moment and the techniques range from shooting conventional puppets against green screen and compositing them in digital environments to puppeteering digital characters that are rendered in 3D in real-time. It's still all very experimental but some of tests are looking very, very cool. I hope to be able to share some of them soon.

One of the reasons it took so long to get up and running was that as I mentioned in my first post, there is a serious lack of good tools for doing digital puppetry. Since the tools didn't exist (or weren't affordable) I've had to learn to make them myself. At the moment I'm working on two different Digital Puppetry Systems (DPS), one 2D and the other 3D:
Flash Puppet DPS - This is a custom-built, proprietary digital puppetry engine for Flash. In it's present form it's basically a series of Action Script routines that allows a puppeteer to control a digital character in real-time using external input devices. The characters are manipulated in 2D, although the engine can simulate the look of 3D by using either pre-rendered bitmapped sprites or by performing some clever motion tweening on vector-based illustrations. It's still in a beta phase and there are tons of bugs to work out, but the results so far are incredible. I'm supposed to deliver the first video mid-December so hopefully I'll be able to share that with everyone before the holidays.

Panda Puppet DPS - Whereas Flash Puppet is almost ready for use and a closed, proprietary engine (I developed it primarily for my own use and don't plan to publicly release it) this is still in the design phase but will be a completely free, open source program based on the Panda 3D Engine developed by Disney. The goal is to have a puppetry-centric, free and open application that's similar to Alias MotionBuilder (which I'm also using). I'm just past the planning stages and currently soliciting help with programming it in Python. I hope to have a working beta of Panda Puppet by late next year and a fully functional release sometime in 2007. There's a project page for Panda Puppet at SourceForge, although I haven't had time to post much there just yet.
I'm going to use Machin-X as a project blog of sorts and I'll chronicle the development of both systems here, along with news and thoughts about digital puppetry in general.

Tuesday, November 29, 2005

The French Democracy


I won't have time to share some in-depth thoughts on Machinima for another day or so, but I wanted to direct everyone in the meantime to The French Democracy, a fantastic, ground-breaking piece of Machinima that provides a commentary on the recent French riots. It was made with Activision's new The Movies game (which I posted more about it over at PuppetVision yesterday).

Very political and a very important step forward for Machinima.

Link via Boing Boing.

Monday, November 28, 2005

Welcome to Machin-X!

Welcome to Machin-X, my new blog about digital puppetry. This site grew out of the PuppetVision Blog, my other puppetry blog.

Where I try to use PuppetVision to provide quick, daily snippets about all the goings-on with puppetry in film, video and digital media, the goal of Machin-X is to provide an in-depth look at theories, tools and applications of digital puppetry.

What is digital puppetry?

Well, there's a bit of debate about that. Some people call 3D animation digital puppetry, but it's not - animation involves creating the illusion of movement frame-by-frame whereas puppetry involves manipulating objects in real-time to create the illusion of life where non exists. Likewise, the term has also been applied to motion capture, which is sort of puppetry, but not really (more on that in an upcoming post hopefully).

I define digital puppetry - at least for the purposes of this blog - as the manipulation and performance of digital objects and characters in real-time using a mouse, joystick or some other kind of input device. The forthcoming Jim Henson series Francis? That's digital puppetry. Machinima? That's a homebrewed form of digital puppetry. This is definitely digital puppetry too.

With the notable exception of the Jim Henson Company, Disney Imagineering and a few smaller players there hasn't been much serious exploration of digital puppetry outside of the academic realm. One of the biggest reasons for this I think is a lack of good tools. Even today if you wanted to do sophisticated work with digital puppetry you need to have at least some knowledge of programming and scripting languages as well as 3D modeling and animation software. One exciting development has been the aforementioned Machinima, which I'll be talking more about very, very soon.

I hope you'll enjoy this new blog. If you use RSS (click here for an explanation), the site's feed is located at http://feeds.feedburner.com/Machin-x. If you have questions or comments please drop me a line at puppetvision [at] gmail dot com. If you're working on or know about a digital puppetry project I'd love to hear about it!