Site icon Learn MikuMikuDance – MMD Tutorials – Free 3D Animation Software

EXPAND function modifies MMD motion tempo

MMD has an EXPAND function that lets you adjust a motion's speed.

How can I speed-up my MMD motion file? How do I adjust the speed of a motion after I have already created that motion? How can I get my motion to match the speed of the music? How can I slow-down my MMD motion file?

I saw a comment from a reader asking about how to stretch-out a motion so as to slow it down… and I realized that we didn’t have a tutorial on that single function…

EXPAND function modifies MMD motion tempo

I was working on a project with a LOT of timed-to-the beat action in it… and the timing was critical! AND… after working on it for a couple of hours, I discovered that what I had thought was “12-frames per cycle” of my motion was too slow… I needed to speed things up in order to time my motion to that music. I wanted to SAVE the work I had already completed. So, I used EXPAND to speed-up my motion.

See the regular beats in those diamonds… I started animating assuming that the CENTER bone diamonds should be 12 frames per cycle and the Upper Body being half of that. And, when I had created quite a long string of motion at that tempo, I discovered that the motion was slower than my music’s beat.


I clicked the EXPAND button and entered a range of frames to cover my entire animation, 0 – 2800… and then I entered a magnification value  less than zero. Entering a number greater than zero slows down your animation; spreads your diamonds farther apart. Entering a number less than zero moves the diamonds closer together; speeding-up your animation.

I wanted FASTER…

I started with a magnification of .95 and then played my animation… “Hmmm, not fast enough.” Keeping the new result, I used EXPAND, again, with a value of .98 … I saw that I still was not fast enough… but closer! So I did it AGAIN, with another value of .98… and it worked… my animation now matched the beat of my music.

If you do the math, (12 frames x 0.95 x 0.98 x o.98) you will see that, instead of 12-frames per cycle, mathematically, I ended up at 10.94 frames per cycle. Since the system has to use whole numbers to count frames, you can see that the actual diamond positions are sometimes at 10-apart and sometimes at 11-apart… but, over the length of the animation, it all averages out. “The customer will never notice.”

You can do little bits of an action sequence, too. I created a baseball-pitch animation, just for the fun of creating that complicated motion… and several times I had to gently adjust the length of a particular sequence so as to make the motion “look real”.

To adjust just a portion of your motion, fill-in the proper Range in that EXPAND panel… SEE BELOW: I entered a value for the range of the affected frames of 85 to 95. EXPAND affects ALL of the diamonds in your Range. You cannot do just “Upper Body”, for instance… ALL bone diamonds for those selected frames are “expanded”. In the illustration, below… the GREEN shows the expanded area… and I added those RED circles to show how the relationship to the frames OUTSIDE of your selected range goes unchanged. The over all length of your animation is increased (or decreased) as you expand (or contract) the number of frames by using that Expand function.

CONTROL-Z is your friend!

That Control-z command will UNDO an EXPAND result. … So, I would recommend you SAVE your project before using the Expand function… and then, as you are working with it, know that you can UNDO it and try another value until you find one that works. As with ANY computer project… SAVE often… and maybe save different versions in case you hit a snag and REALLY need to go back a version or two!


Have fun with MikuMikuDance!



— — —

– _ — –

Exit mobile version