When the “better” physics turns to do worse
Ninth generation of MikuMikuDance releases, along with new possibilities, also brought new problems. Newest versions’ physics engine, far superior compared to its predecessors, also may reveal certain glitches and negligences in existing models’ rigging that did not matter to previous versions. Sometimes, when you try to apply pose or motion files to a model, its physic-imbued parts start to flutter uncontrollably, providing you with pantsu shots when you least ask for it. It may be speculated, that the engine perceives the loading of such a file as a sharp and global movement of the whole model – haven’t you seen model’s hair and skirt wave realistically when you simply move it around? Usually models recover from such a shock to the system in a second or two, but some of them, due to said rigging deficiencies, fall into the self-sustaining positive feedback loop. So far (up to 9.22 version) this issue hasn’t been resolved yet. Perhaps editing such models in PMDE/PMXE could iron out glitches that lead to this behavior… sadly, the collective mind of LearnMMD does not possess necessarily knowledge yet. Fortunately, the problem still can be solved in other ways.
Plan A: Mostly harmless
The simplest method of all is to reset the physics engine entirely. Select Menu->physical operation (P)->no calculation(N) and then Menu->physical operation (P)->on/off mode(O) again (or whatever mode was selected before that you find appropriate). That should quench physical bones’ chaotic oscillation completely or at least tone it down to ‘natural’ levels. If that is good enough for you, you don’t actually need to read further – your problem is solved. Otherwise, there are other simple methods you can try:
- Save a project and then immediately load it again.
- Turn gravity on and off.
- Set gravity parameters to something mild. 1-2 for acceleration and -0.01 for Y axis are reported to have good effect (this may affect how your models move, though).
- Have two concurring versions of MMD on your computer so that you can do the placing and file applying on the 8.14 version and then switch to 9.22 when you need its abilities (you can’t switch back, though, so be careful).
There’s certain etiquette you must obey while using concurrent versions of MMD, though. While you don’t actually have to have two full MikuMikuDance installations with identical folder structures and copies of all data, remember that you *can’t* have two copies of the program with different names and launch them arbitrarily. MME will not cooperate with you if the program isn’t called exactly “MikuMikuDance.exe”. So, what you need is two subfolders containing “MMD_8.14\MikuMikuDance.exe” and “MMD_9.22\MikuMikuDance.exe” from which you will copy the currently needed version to the master folder, overwriting whatever lies there. Long ago I refused to erase any .exe of MMD I ever downloaded, just in case some incompatibility may arise in future, and in this case, it proved its use.
Plan B: Like A Surgeon
It is possible, though, that nothing of the above produces a satisfying result for you. Sometimes even small fluttering is not what you want to see in your video. In such a case, you have to forcefully paralyze certain nerves in your model’s body. In other words, make some of physical bones – non-physical. Good news is, though, you don’t have to edit the model in PMDE for that. All necessary adjustments can be made directly in your MMD project.
Load a model and inspect a fluttering part that you want to immobilize. From the look on the main screen, you may believe for a moment that there’s no bones that you can affect. This is, of course, wrong. If it moves, it has to have a bone for it. It’s just that in MMD 9.xx, unlike earlier versions, physical bones are made invisible when they aren’t controlled manually. In FMP, though, they are all listed.
Look at the Frame Manipulation Panel. Some of bone groups will be marked by familiar diamonds, but some will be X’s or ‘asterisks’. Unfold one of them. Bones inside will also be marked by X’s (or a mix of X’s and diamonds, if the group was marked by an asterisk). All those X’s are actually physical bones that you can’t see on the main screen. Select one of them, unpress the “Physics” button in the Bone Manipulation Panel (dark blue), and register it. The bone will immediately freeze… at some unnatural angle, most probably, so you will have to press “Reset” and register once again. You may notice that the X in bone’s description in FMP is now replaced with a regular diamond, and the bone becomes visible in the main screen. Sometimes, paralyzing just one bone in a chain may be not enough to stop fluttering (in fact, in a chain that ends with an IK bone, paralyzing one of bones may get others into more wild frenzy) so you may need to paralyze the whole chain.
Please note that the state of “Physics” button does *not* reflect the current state of a selected bone. That is, if you want to edit a second physical bone right after the first, you don’t have to click on “Physics” for the second time. Rather see whether the button is active or not and know that so will be the respective bone after you press “Register”.
|Author’s note 22/04/2018:
Sometimes it may seem that the advice above only makes things *worse*. In my case, there was a model based on LAT Miku and her tie. In a video where I wanted it unhindered at some scenes and be rather controllable in others (sometimes it moved *too* freely for what I wanted to see there), it suddenly started to flutter madly and wouldn’t stop no matter how thoroughly I disabled its physics (in fact, disabling it would only egg it on even more). I was considering various options of increasingly cruel nature in order to make it stop for good (including completely removing tie’s physics in PMXE) when a solution presented itself – find tie’s IK bone in MMD’s Model Manipulation Panel, switch it to “off” and register. Miraculously, the fluttering ended. More than that, I decided that I *don’t* actually need to switch physics off where I thought it’d be necessary, after all.
But I can’t see a bone I need in FMP either!
This is obviously a bug in the model, and if so is the case, you *will* have to edit it in PMDE. All bones must be assigned to one or another “group” to be visible in FMP. If some bone is not, you must add it there manually in PMDE’s “Display pane” tab, as described in another article.
But that means that the part won’t be moving at all!
Yes and no. Indeed, a piece of clothing or hair that has its physics turned off will be permanently static unless you move it manually. Good news is, you actually can turn individual bones’ physics on and off any number of times during your project. Simply select some intervals in your video when the part *must* be moving according to physics and enable its bones in FMP for that period alone.
This is it. Hopefully, this knowledge will help you to avoid some inconveniences that the newer MMD might have caused to your videos.
Models used in illustrations: Caroline by Angellbaby, Hiratabashi Station Stage by ejima a.k.a. kamiichiba, Animasa’s Len Kagamine, sonic screwdriver accessory by Maddoktor2, scissors accessory by The-Horrible-Mu.
– SEE BELOW for MORE MMD TUTORIALS…