12/29/12 - Published
09/19/13 - Updated video links
Please note that this tutorial is made by audiencefromspace as of 12/29/12 specifically designed for the 3D animation program MikuMikuDance and not any other animation programs. MikuMikuMoving has similarities with MMD but due to some changes with that it would be better to assume that this won't work with it. I made this with very limited knowledge I accumulated from my experience and other tutorials as well as NO PROPER SCHOOLING (Yes you can do it without going to any animation schools). I tested these theories myself over and over to ensure credibility. This will also assume that you at least know the basic functions of MMD, otherwise go watch the video in VPVP site again.
Terminologies marked with ASTERISKS are terms I just made-up to make them easy to remember
ex. Normal curve**
Also PacP made interpolation tutorials already a long time ago (untranslated) I don't know what's being said but I understand most of the concepts he's trying to say so you can ask me about those since what you'll read below is pretty much what's shown in those videos
The tutorial contains three parts and must be read in order for better understanding
- Part 1 - Interpolation Curve Tutorial [Current Journal]
- Part 2 - Random Information
- Part 3 - Motion Tracing
TABLE OF CONTENTS FOR PART 1
- Basic Usage
- Graph editor location
- X and Y axis in the graph
- How to use
- Types of curves
- Other Functions
- Last reminders
Interpolation curve is one of the most forgotten yet useful feature in MMD. Its main function is to correct the transitions between keyframes. The "smoothness" on the flow of the movements is only an effect of proper usage of this feature. If you tried animating in flash before, you will be at least familiar with the ease-in-out and "tweens" concepts as this will be very similar to that.
First take a look at the following motion data
On the right is the one with constant (default or without) interpolation. Notice that she stutters a bit and the one on the left is nicer to look at isn't it?
Both of these motion data are exactly the same and the only differences are their interpolation curves
Back to TOC
Q: Where is the graph located at?
A: It is found in the lower left of MMD's GUI shown in this picture below
Q: What are the X and Y in the graph for?
A: The Y axis represents the frame that will be shown. The X axis represents the time it will take to reach that frame.
Now let's take a look at the graph below. The blue box represents the horizontal line which is interpreted as slow movement. The red box means that on that point, it will take LESS TIME to reach a certain FRAME.
There's really no need to measure it, just remember that the more vertical the line is, the faster the movement will be. Imagine a roller coaster going slow on flat areas and fast on steep areas.
Q: How to use it?
A: First click on a keyframe. The keyframe will then become red as shown in the picture and then drag the red crosses on the curve to change it. If there's no keyframe for that timeline, register that particular bone first to create a keyframe.
Note: The affected keyframes are ALL frames before it until it reaches the previous keyframe which is the yellow un-highlighted dot on the timeline. It's possible to edit multiple keyframes' interpolation curves at the same time by highlighting them all before moving the red crosses.
Back to TOC
DIFFERENT TYPES OF CURVES
Constant Curve** - Like the name implies, the time and frame are directly proportional to each other. This is the default interpolation and the one we must not see in our motion data. Of course it's possible to use it on certain occasions
Launch Curve** - This is a slow-to-fast interpolation and used mostly by IK bones. A connector curve.
End Curve** - A fast-to-slow interpolation and used to designate last movement. Usually connected with launch curve. Mostly used by IK bones.
Normal Curve** - A slow-fast-slow interpolation and the one that MUST be always used. Normal bones always use this curve.
Middle Curve** - A fast-slow-fast and most of the time connected between launch and end curves. This is the rarest of them and the hardest to use.
Back to TOC
Copy – Copies the curve on the selected keyframe. It is not possible to copy different curves at the same time
Paste – Pastes the curve on the selected keyframes
Liner – Resets the curve into a constant curve
Auto Adjust – When checked, the program automatically creates interpolation for distances (X,Y,Z positions) for IK bones but automatically resets rotations. It's better to uncheck this if not in use or editing the curves
The drop down tells what specifically the curve is for
X, Y, Z axis move – These are the interpolation curve for the IK bones' movement in the 3D space.
Rotation – For rotations and the only one that affects normal bones.
Distance – Same for X, Y, Z axis move but this instead affects all of the three at the same time.
View angle – This is unique as it is for camera only. Despite the name, this is actually for Zoom and View angle perspective.
Back to TOC
What we really are doing by editing the interpolation is adding imaginary physics to our models. Think of them as having a certain weight
Also there's no need to make the curve as exactly the ones previously shown. Make different combinations and see which one works best on the situation.
And lastly Keyframes are absolute positions which means that no matter how you edit the interpolation curve, it will not exceed that point
Connecting interpolation curves with Launch, End and Middle curves will be discussed on Part 3
Back to TOC
I will post a changelog if there's any major changes in here. If there's any grammatical errors, difficult to understand or whatever just point them and I'll see what I can do. Also if you got any questions, I'll answer them as best as I can. Can be on note, comment or pm me on Youtube whichever works for you! (Don't email me)