Make Smooth Animation Using Interpolation Curves


See all of the articles by LearnMMD's TaiGaO!How do I make a smooth motion in MikuMikuDance? How do I use the interpolation curve in MMD. What shape should the interpolation curve be?

Finally, my first ever “how-to” article!
(My previous two articles were about YouTube and MMD videos!)

Let’s make smooth animation…
Using Interpolation Curves!

Before we begin, I want to (honestly) tell you guys that…all this is just based upon my assumption. So, there is no solid-proof evidence for what I’m about to claim in this article. However, what I do have is my video to back-up my claim:

So, if this video doesn’t meet your expectation, then, from the bottom of my heart, I’m very sorry. BUT if you are amazed by the “smooth animation” that I made and interested to know more about it…
then… Welcome aboard the “hype train”!! (because I’m always super-excited for these sorts of things!)

But I’m going to explain a much simpler version of this interpolation curve tutorial because many tutorials/information/theories have already been written about in previous articles on LearnMMD.com. So, you can go check them out by clicking the link here. (Reggie and ARIZONA did a good job on covering pretty much about everything!)

I’m going to split this article into 2 sections: a “Theory Section” and a “Practical Section”. Hint: You can jump straight to “Practical Section” if you do not understand the “Theory Section”.

*THEORY SECTION*

First of all, let me tell you a little bit about myself. I was a science student…focusing on biology, chemistry and physics… you get the point (and no, I did not have any artistic knowledge/background up till now). Thus, naturally, graphs like these are no stranger to me.

Based on my understanding, what we are looking at is actually somewhat similar to “distance/time” graph. In other words, this interpolation graph is similar to “speed” graph or “velocity” graph. So, depending on how you adjust it, you affect the speed of a motion! In terms of MMD, this is how I think the interpolation actually works:

image

As you can see from the picture above, the interpolation graph doesn’t start in the “previous” diamond you just set. Based on my trial-and-error, it always seems like the interpolation starts one frame after the “previous” diamond. So, whatever you set on the “previous” diamond, it has no effect to any motion later on.

Another important key (that I found) for creating a smooth/realistic MMD animation is implementing the concept of inertia. What is inertia? (There is a chance that I’m going to be wrong in my explanation) Inertia is about an object resisting a change in its current state of motion. Well, to keep it simple… try to imagine that a car is braked, right now. When the brake is applied, the car doesn’t stop on the spot. It takes time, right? So, the time required to slow down is caused by inertia. If you constantly keep this concept in mind throughout your MMD animation, it will be much more realistic in terms of motion and movement. How do we apply it in our MMD software? It’s all explained in the Practical Section.

OK, that was a very unnecessarily long story. And if you don’t understand the concept/ theory I just mentioned… DON’T WORRY!! Just follow the “Practical Section” below and you’ll be good to go.

*PRACTICAL SECTION*

So, you might be wondering: What is the perfect shape for your interpolation graph? Well, truthfully, there is no perfect shape for it because it will vary “depending-on-the-situation”…

Note: You don’t have to follow the shape I show 100%… you can adjust it (by using the 2 red “X”) to your liking… so long as the core concept is there. Also note: the “bigger” the curve, the more drastic the speed changes.

 

1. Straight line motion

Core Concept: A default straight interpolation line that doesn’t need any adjustment.

The straight-line "curve" is the most basic of the interpolation curves.

This is the most basic motion. This type of shape is best used if the model is to keep moving at a constant speed. Examples are like a car traveling at a steady speed or any flying object moving at a steady speed. So, it’s usually a good idea to avoid using this when the model starts to move or is trying to slow down.

 

2. Curve motion (from slow to fast)

Core Concept: Certain part of the line is being bent down to the right.

Use these interpolatoin curves when acceleration is needed... starts slow and speed builds.

Remember the concept of inertia I mentioned earlier? Well, this is how an acceleration graph looks. A curve motion like this one is advisable to use when a model (character or car) starts to move. Why? The reason is because everything that wants to move has to start from a slow speed before it ends at the full-speed you want to see.

 

3. Curve motion (from fast to slow)

Core Concept: Certain part of the line is being pull up towards the left.

Use these interpolatoin curves when deceleration is needed... The motion slows down.

Inertia is also applied here. But instead, it curves in the other direction… showing deceleration. The best way to use this curve graph is when someone or something is slowing down. Try to imagine a car braking to slow down or a character that starts to slow down after becoming exhausted from running.

 

4. Basic smooth motion

Core Concept: A “S” shape graph with same curve on both sides.

These s-shaped interpolation curves create a natural motion... a slight acceleration into the motion which slows, a bit, at the end.

Now this shape has various functions depending on how much the curve is bent. If bends are small, it’s usually best to use it to make subtle “realistic motion”. A simple “S” is more than enough so long as the interpolation isn’t a straight line. But if the bend is big, I don’t know where you would use it!

 

5. Natural/realistic motion

Core Concept: A “S” shape graph with a smaller curve on the left than the one on the right.

This is my favorite interpolation curve... a very natural motion for slight movements.

Notice that the curve is very similar to the previous graph? This is usually good for making a somewhat slow animation. This also includes slow body movement like head, arms and legs rotation as well. For an example… see my video! I used this type of interpolation graph for the entire video!

 

That’s about it…

…but I’m pretty sure there are a lot of shapes I haven’t written about here. So, let me know in comments… I’ll be sure to write about them in the future!

One last Bonus Point:

Don’t go for any complicated motion unless you very confident to do so. The interpolation graph won’t do much to improve a “messy” body motion. If you have noticed, all my videos don’t have any extremely complicated movement…just basic movements with a little help of camera angles. Just like the pictures below (pictures from my previous article); just a change of camera view makes a huge difference in the look of the scene.

Changing camera-view often works better than animating a complicated motion. "Click" to see my video.

Credits:

  • Mamama for Appearance Miku
  • Digitrex for Nanoko
  • 6666AA for 八頭身モナー
  • 遠藤工, 井谷美乃里 and 青山顕 for Terminus Est
  • brsa for the “Chair”
  • ビームマンP for GodRay

– SEE BELOW for MORE MMD TUTORIALS…




Visit the LearnMMD.com Homepage! Plenty of Mikumikudance instruction and info!