Trackdancer's avatar

MMD Tutorial: Outside Parent Function

By Trackdancer
126 Favourites
An explanation of a new feature introduced with MMD 9.10 that allows two or more articulated models to be linked.

A more comprehensive tutorial on how to use the OP function in an animation can be found here:…
Image size
909x11375px 6.59 MB
© 2014 - 2020 Trackdancer
anonymous's avatar
Join the community to add your comment. Already a deviant? Log In
Ghostkin-g's avatar
Hello, I have run into a problem with outside parenting that i cant seem to fix or find resources on to troubleshoot. The problem is, an object paired onto a model for a motion ( with op register and frame registered and everything properly done) remains visible when going through the frames of a motion, but as soon as i hit play on the playback the object disappears as if it was never loaded or drawn. this problem persists with every model i use, every motion i use, and every handheld object i use, and only when outside parented. Redownloading and installing mmd from scratch doesnt repair the issue, and its not a problem with my models or the objects- since it persists across all models and objects. 

if there is any way you could help that would be fantastic, thank you.
Trackdancer's avatar
Honestly, I haven't got a clue why this should be happening. The object being held has got to have gone somewhere. But I don't have enough info to even come close to a reason why this should be happening.

It just doesn't make sense. If you are tabbing through the frames and the everything is OK, but it totally fails if you press "play"; not logical.
Ghostkin-g's avatar
unfortunately the object being elsewhere isnt the case. i agree it doesnt make any sense, making it difficult to trouble shoot. tabbing through frames works but playback doesnt. its weird 
Door303's avatar
I am missing the OP register button, any clue as to why?
Trackdancer's avatar
The "OP" button is in the Model Manipulation control panel cluster just above the "Register" button.
Trackdancer's avatar
The OP function is only available in MMD for versions 9.10 and higher. Check your MMD version; if it turns out that you have an older version, upgrading should correct the problem. If on the other hand, your version is 9.10 or higher and the OP button is still missing; you could try reinstalling the program to see if that corrects the problem. If that fails, then, honestly, not being a programmer, I cannot tell you why it is happening.

However, the work around is to use the old method of attaching objects which is clunky. But basically, the object being held needs to be an accessory type model and this is attached to a specific bone on the model holding the object. It can be a real pain to maneuver the object correctly into place. Instructions on how to implement this method can be found inside this package:  MMD Accessory - Rainbow Microphone Pack by Trackdancer
Door303's avatar
Thank you so much. :) I appreciate the feedback. 
Trackdancer's avatar
YW. MMD is really interesting because it is so awkward. Stick with it; you will learn a lot about how computer gaming technology works as you can see first hand how many methods that we now take for granted works at their most basic level.
zeroz52's avatar
For whatever reason I can do all of this and properly save the motion, but when I load it up none of the information in the OP got saved.  Keep in mind the OP frame got saved, but none of the paired bones got recorded.

What am I missing or does this only work if you save it in a PMM?  I've even tried putting the object in the same PMX file as a morph and again works fine in the motion, but when I save and reload (the OP nodes did get saved) but none of the OP bones are paired.

Any help?
Trackdancer's avatar
Did you OP Register the changes?

Check on the Frames Display GUI to confirm that your changes are indeed recorded.
zeroz52's avatar
I believe I did OP register.  I clicked that button and in the frames display it logged the frame as it would for any other bone and the animation works just fine when I play it.  The only issue is it doesn't when I save/reload.  In fact the weirdest thing is when I load the save, the OP is registered on the frames display... just there isn't any information there, looks just like it does when you click OP for the first time.

I'm entirely self taught (which I think we all are) so I'm wondering if its a simple setting I didn't select or a button I didn't click.  For saving it you just set up the OP and click OP Register, then when saving you just include that in with the select all bone, facial, display/IK/OP and save and you're good right?  Anything I'm missing or anyone have a simple motion I can DL which has an OP in it that I can check?
Trackdancer's avatar
OK, just tested this to make sure I am giving you the right info. For the record this works and the tutorial is correct.

This is how it works:

1. For still picture making: Just press the OP Register button
2. For animation making: Click both the OP Register as well as the Frame Register button

Once the Frame register button is pressed, it will populate the fields and this serves that the data is in memory. After this save your animation as usual.
MidnightInk-Chan's avatar
Hi yeah I'm having the same issue and I've looked at process again and again but the accessory just goes to the floor it doesn't go to where I want it have any tips? To clarify: When I save it and reload it it goes to the floor and It's driving a tad bit insane.
Trackdancer's avatar
Alright; this is IMPORTANT in case it is not obvious and it is not.

Take for example the following scenario:

1. You have your character model and she is holding a ball which she will throw. Both are PMX models.
2. So at the beginning you have to OP connect the ball to the character. Just follow the instructions above and remember to register both the OP association and the frame association.
3. Now you have TWO entities that has motion to be accounted for: the character and the ball.

If you only save the motion of the character, only his/her motion is saved but not the ball's. So when you reload the motion, you will get exactly the results you reported above.

To save correctly you must, therefore, save both the ball motion and the character's motion. The easiest way to do this is to save your work as a PMM file which captures everything. You could also save the motion for the character and the ball separately but this is more work and potentially could be problematic.
SchlongPool's avatar

I followed the information on Learnmmd, this post, and the comments, but I'm getting the same error as Midnight described.

I have the ball elevated on Frame 1. For some reason, it gradually moves downward until the frame when it was OP and frame registered. Manually setting the OP will then fix this incorrect positioning.

I'm trying to save the motions of both the character and ball separately. I don't understand why selecting all frames then exporting doesn't work. Is it possible?

Trackdancer's avatar

OK, this is not an error but the way MMD works that is the issue. To illustrate the point we're going to use a generic example.

You have an object, say a ball. You place it at point A and run your animation and it never moves. However, if you have a point B somewhere for the ball to move to, during the animation sequence, MMD will faithfully move the ball from point A to point B and it does this automatically without you needing to do anything.

This is because MMD "interpolates" all the positions between point A and point B for you during the animation sequence. This is the way the program works as it automates all the frame sequences necessary for an animation sequence automatically and if you've ever done manual animations, you will worship this type of functionality.

Now back to your issue. Point A is where you set the ball at, at the beginning of the animation. Point B is where the ball is in your model's hands later in the animation. Now the minute you run the animation MMD will faithfully move the ball from point A to point B EVEN IF YOU DIDN'T WANT THE BALL TO MOVE.

So how to fix this issue?

Simple LOCK the position of the ball. You need to understand the concept of locking positions for objects in MMD or other animation programs. Simply, in MMD do this:

  1. Register the position of the ball at it's start location.

  2. Copy these coordinates (from the Frames display GUI - that's the chart like display on the left side of the MMD screen).

  3. Paste the coordinates to (usually) the frame immediately before the balls needs to move to point B in the same GUI at the point when you want the position unlocked.

See this tutorial as it explains the process in more understandable form:

MMD Stopping Unwanted Drifting in Dance Motions
View all replies
MidnightInk-Chan's avatar
Okay, thank you very much.
Ikran's avatar
Thanks Trackdancer. But when I change frames to grab or release object, the object just appears in another place (it still moves along the selected bone) is anyone else having this problem?
Trackdancer's avatar
You need to release the object and register its position at the point of release or you will get the symptoms described.
Cartoondude135's avatar
Where can I DL that tommy gun in this tutorial pic? That's exactly what I'm looking for!
Holy-Ra's avatar
can you give me a quick explanation cause when i zoom in, it goes all blury
Nintendraw's avatar
Awright, now I can make sweet Fire Emblem dracoknight pics like this one! Thank you! 8D
anonymous's avatar
Join the community to add your comment. Already a deviant? Log In