Every day we perform miracles. Consider walking across a room, taking a chair, sitting down and reaching across to pick up a coffee cup and drink it. Why does it look so unrealistic when I try this in a computer game or simple animation package?
You can do this regardless of the shoes you wear, the location of the table, chair and cup. You can even do it if someone is holding your arm. And you probably rarely spill it . The sheer mathematical complexity of combining motion across the room, manipulating objects in 3D space of various masses and shapes, and especially of rotating various joints and limbs is truly staggering. If you need a maths fix today, hop over and have a look at some inverse kinematics primers and this book
Robots may be getting closer to being able to do part of that little miracle but still only function in narrowly defined circumstances and with carefully controlled props and environments. They usually require teams of PhD programmers to keep them on track and prevent mishaps. Even getting them to find that chair is a challenge. (And that is only the mobility problem, we are nowhere near solving the vision problem for any arbitrary object to the degree in which our eyes and brains have done through evolution).
IK, Robots? What has that got to do with entertainment software, you might well ask.
The point is this: we have a wonderfully clever brain that likes to process stories, and most of those stories are about the things people do. A few are about what people think, and most contain speaking parts. But the guts of most human stories are about bodies in motion. Where people go, what they do, who they meet, the objects they interact with and the people they touch. There is a huge deep social evolutionary driver to story telling and stories are an immensely powerful way for groups of humans to communicate. They can
• share experiences with other people, so they don't make the same mistakes
• spread and copy successful ideas or the location
• reduce the risk of long distance travel
• optimise food gathering
• create a sense of how their and other group cultures work
• transfer a sense of history from one generation to another
• defuse conflicts, break the ice, and get other conversation going
• be funny, sad, or just clever – which makes them good entertainment (and great way to win over a potential mate)
• deliver a story with little except a voice and an idea.
Human groups that learned to tell and share stories had a huge advantage over the apes that did not. We are the story telling apes. Then we found we could smudge pictures using a burned stick on the wall, and stories with pictures were born. From there it was but the blink of evolutions eye to books, paintings, comics, radio, television and digital animation. Digital animation is just a visual story telling tool with some clever bits. It needs to “work” as a way of telling visual stories.
We all have strong internal models of 'the way the world is' that we each built up from real experience and the weight of all the other stories we have ever heard or seen. The stories we hear, and the movies we see, are all weighted against that internal model. Anything that does not “measure up” triggers our internal warnings that something is not quite right. (Some graphics designers would call this “the uncanny valley”, and as evidence, I point you to your own experiences in watching the CG masterpiece that was Beowulf.) The point about the uncanny valley is that our alarms are triggered by what things look like and what motion they present. Digital animation has to deliver the story in way the view can accept.
So, back to entertainment software for a bit.
We have some big issues to solve in delivering digital animation for amateurs. One of the first one is the raw graphical quality, modelling of surfaces, and interaction with lighting on objects. Many of these are being solved by some very clever research groups. If you have not yet played Fallout 3 or Half Life 2: Episode 2 then I urge you to go and see how good real time computer games graphics can be. (I personally care little for the images that take days to ray trace on super computers except as a guide that Moores Law will inevitably bring them onto my screen in a few years). We are certainly within one generation of stuff like this or this [minor fantasy nudity warning] rendered in real time.
But no matter how pretty the models are, we need to make them move. It really is all about bodies in motion. It is simply not good enough to just have static objects, they need to move and interact and those interactions need to appear natural and fit with our “world model”.
(OK, there is another route – we could go all fluffy cute cartoon and have cartoon physics and cartoon surfaces. This can be effective in telling a story, sometimes more effective than real life. Yet real human drama has such immense social value it seems that we should try hard to find solutions. Which means reaching for our coffee cups, having picked up chairs without putting our hands through them, all after walking across a floor without our feet sliding or unnatural changes of direction or gait.)
So what? You’ve seen the latest movie genius from ILM or Pixar and that looked alright to you. Why do we say these are hard? I’d like to respectfully point out that they have access to huge super computer render farms and on budgets of about $100m, and that means they spend about $1m per minute of finished movie or about 10,000 hours per minute, or about 5 person years. They also make one movie which is a static “dead” product once rendered.
We want to enable you, the normal person, to make movies at a cost of $10 or less per finished minute and with less than 15 minutes of effort per finished minute. We want to make it interactive and responsive and something you can use multiple times. Which means we have to solve those problems in real time, using normal desktop hardware, for people without PhD skills in Inverse Kinematics, and without hundreds of weeks of 3D animation skills. (OK, you might rush out and buy one of these nVidia desktop super computers but we are still talking about consumer products as a platform here.)
Making models move realistically requires a serious investment in AI and motion control software. We could stay content with models which collide, where coffee cups “jump” into the hand and where we have jerky movements. Actually, we can’t. The simple fact is that they are unattractive in the movies and games that are made, and a better solution is needed. Don’t get me started on “foot slide” – that is not, and never has been, acceptable in a digital animation.
But even solving the motion and IK problems is not the whole problem solved. We need to increase the range of interactions and motions every time a new object enters the digital world. A coffee cup needs a different solution to a shotgun, or a steering wheel or a negligee. Each character needs to know how to interact with each new object without the user (you!) having to ‘reprogram’ the character. There is a trick to this, which I’ll tell you about one day.
We also need to solve it for you every time you retake the scene, everytime you change the starting positions and everytime you move the camera. We need to solve it time after time in a predictable repeatable manner. We also need to make it “scrubbable” backwards and forwards in time as you edit and review. So, not much to ask then, from a simple, free to download tool for amateur creatives 🙂
Moviestorm is a fun product, it makes video creation easy, and making your lives easy makes our lives difficult. Which is how it should be. Each step towards better bodies in motion is a good thing for you, the video creatives, and another problem solved for us.
Buckle up, we are not there yet, but we know where we are going and it is going to be one heck of a ride for video creatives over the next couple of years as those problems get solved.
Now, can someone get me a cloth for that coffee I just spilled?