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.

No comments: