@infurl, yes doing the 'tweening' is something I would still like to do. In this experiment the mouth shapes (visemes) are generated in real time, so as the words are spoken it fires off a viseme trigger and from that I call the appropriate mouth shape. I think to do tweening I would have to generate the timing events prior to the actual speech some how. Then you could use the time between the visemes to do the tweening, although that time will be quite short it might improve things. I'm not sure if it can even be done at the moment.
I'm thinking of using Blender to do a head of my own, this one a friend made for me in FaceGen, which also allows you to export expressions and the visemes (although it doesn't have a full set of visemes - less than the MS Speech SAPI is capable of recognising). Good to get started with though. I had to reuse some visemes for the ones that were missing, so that could be better too.
I think whatever you do it is a lot of work one way or another. It's taken me at least three weeks to get to this point. I've been through lots of 3D engines and very few have been suitable for some reason or another. I have a couple that might be promising though, but things are very quiet on those sites so only time will tell.
@Art, I found the lines online and confess had never heard the second half since my Nan had told me it when I very young. It brought back a nice memory. I might give iClone a look. I really want something that I can hook into with code though. Like some of the engines I have experimented with offer .NET support, but are lacking in other areas. I have plenty to play with already !
@Bragi, the Game Studio simply plugs in to whatever VS package you are using (although it appears to be limited to C#). Just like you would create a 'Windows Forms Application' you can create a 'Windows Game'. From there you can interact with the game like you would a reference, DLL, COMponent and so on. At least that's the way it looks from my minimal experience so far. Oh and it's free.
I'm obviously still learning C# but have found my way around. Learning XNA is a thing in itself. I had difficulty with things like Alpha blending and rendering order, but there is some great support in the MSDN forums which helped me get on track. Actually the most troublesome part was simply getting the head model to display correctly, mainly the hair... Adding in the viseme's and speech was a lot simpler as I knew that from VB so I just had to translate what I was doing.
The code for the morph targets as I mentioned above was written by Barnaby Smith and I just adapted it to my own purpose. The following video is his demonstration and it shows smooth morphing between expressions.
Here's his sample code if you are interested in playing with it...Note that this is done in XNA 3.1 which is not the most recent (4.0). So I did all this in VS C# 2008. I'm going to try and upgrade it at some point I think.
I would say it is a little trickier to get this kind of animation going than it was the 2D ones we have been playing with ! Once you crack a few things though it makes a lot of sense. Of course with the 3D animation you will probably end up having to do things in a 3D modelling program to really polish things up.