What is the most important thing you want to capture in animation; is it that it must look realistic?
Sure. For entertainment applications especially, it has to have qualities that are going to be pleasing. For example, plastic deformation in a big lump of clay dropped onto the table has to sink as it goes down to form a flat puddle. If that motion is monotonic, always making smooth progress towards the shape of a puddle, then maybe you don’t care if it moves exactly like the real thing, but you do want the motion to resemble the correct behaviour as opposed to having some sort of unstable jumpy motion as the clay settles. If parameters are set correctly in numerical calculation, then you can achieve this.
In your talk, you mentioned the use of composite elements to preserve the topology and elasticity of an object. Could you elaborate?
The idea is that we want to animate things that are made of a mixture of materials. For example, imagine Jell-O with blueberries inside. If we use a single elastic element, we can change the shape of the Jell-O significantly, and it will change shape and return to its original shape. If you take the standard approach, the blueberries inside will behave exactly like the Jell-O. But blueberries don’t jiggle like Jell-O, and they are not as deformable, so this is wrong.
Capturing the correct behavior with a better model is not hard, but the trick is to do this efficiently. In the end, all we need is to make small adjustments to the model that make a big visual improvement at a similar cost. So everything is in the details. For a video game such as Half-Life 3, you might not care about the Jell-O mixed with blueberries on the table. But if you want that extra level of realism, then it’s worth it.
What project are you currently working on?
I am working in many directions. I like to capture the real world in my animation. One of the projects on-going in my lab is to build a climbing wall which will be instrumented with force sensors. The idea is that we want to capture not only the motion of people moving on the climbing wall, but also the interaction with the holds, and how much torque and force you are applying during this climbing motion. We also want to capture higher level aspects, like what kind of strategy you use to change posture to stay balanced.
There are other aspects of human movement that I want to simulate, such as motor control during locomotion with correct dynamics. At the moment we are mostly looking at balance using a simplified model where you can imagine your character as just being a mass on a stick, which is touching the floor. But the mass can change its shape and inertia by pulling its arms out or in. For instance, I can make a wind milling motion with my arms to prevent myself from falling. And the reason it works is that I am rotating my whole body forward and backward with different inertia to stop falling. So based on these observations, we can build a simple model to eventually simulate a whole character in 3D.
We also have another project in collaboration with biomechanical engineers where we are looking at simulating endoscopic sinus surgery. We want a simulation with a lot of complex details depending on the context: You can have local deformation that is highly detailed when you come into contact with some tissue. But then, you also have dynamic effects that happen on a larger global level that are relatively simple. And that is where the major problem lies: If you want to simulate dynamics, there is a large system of equations to solve, which can be time consuming. And making big simplifications to make it fast are not always good for preserving details.
How different is your approach from traditional 3D animation using skinning?
In skinning, you have a static deformation, in the sense that whatever pose I am in, the shape of my skin or my clothes are completely determined by that pose. But in this work, we have the dynamics.
There are several philosophies regarding 3D animation and everyone is working on different things to push the frontier of what is possible with computer animation. Some people are interested in pushing the realism of the models themselves. For example, if you want to have realistic geometry and motion in human simulations, you need to include the bones, tendons, and muscles to make it accurate. This can be useful for rehabilitation, ergonomics, and for entertainment. For instance, in the movie Avatar, they put a lot of detail in the muscle and tendon models to make the shape of the skin look good.
Can we implement all the laws of physics in 3D?
There are many things that are false in a 3D model. We don’t take into account special relativity when you are simulating the flow of water in a river. But if you go to the level of simulating a giant nebula or a galaxy, then there are different equations you need to worry about. And there is always some approximation in anything we simulate.
What qualifications do you need to work in the field?
Having solid programming and math skills is very important. People who want to get into this field should have some experience with libraries such as OpenGL. The other thing that helps a lot is having some intuition about aesthetics. Ultimately we are making images for human consumption; it’s not just producing an answer and saying the answer is five! Someone who sees the result, the animation or picture, should say “yes, I understand and see that it works, and it is beautiful”. I am not saying that artistic abilities are needed; you don’t need to be able to draw or design a building. The main point is that you want to make compelling images that communicate the story well.
Do you have summer projects if undergrads are interested?
Yes! I have, in the past, taken undergrads out of first year with solid math skills, though it is usually easier to take higher year students. The trick is that there is a big learning curve if students are to help out with many of the projects in the lab. So I strongly encourage students to work hard on their math courses, and plan to take the graphics and animation courses. I also encourage anyone interested to apply for NSERC undergraduate summer research awards
For more information and for mind-blowing movies of Dr. Kry’s work, visit cs.mcgill.ca/~kry
Pingback: Canadian University Software Engineering Conference (CUSEC) 2011
Pingback: Canadian University Software Engineering Conference (CUSEC) 2011 - Technophilic Magazine