[WIP] Dynamic Parent addon

I am sorry this might sound stupid but how do I download it? Surely I am not the only one where it just opens a text on a internet tab.

Edit: nevermind I got it

What an amazing add on. So useful it’s actually incredible. I have one feature request however, it would be really nice if it didn’t create a new constraint if you are using the same object again.

For example, if I had an animation where a person is throwing a ball up and down, I would continually enable and disable the dynamic parent, however, this makes a new child of constraint every time. So it makes editing the keyframes afterward much harder.

So if it could keep using the same constraint if it’s the same parent object, it would be extremely helpful.

Thanks!

Nice request! I will definitely try to do this.

I can’t remember why I didn’t do this =)
May be it was some issue in 2.7 or (most likely) I didn’t have enough skills.

Awesome! Another reason I say this is because I also have a rig setup where I have 3 bones dynamically parented to each other. And by using dynamic parent, I am continually switching which of the three is in control. It gets pretty complex once there are tons of constraints haha.

Unfortunately there is no easy way to do this =/
Currently I rewriting the addon, and I’ve remembered why I didn’t implement this feature.

Here is the reason: when Child Of constraint is created, user (or script) have to set inverse matrix (eg. by pressing Set Inverse button) so child object stay in the same position relative to parent.
So to use single constraint several times we have to set several inverse matrices for the constraint. Which is impossible in Blender.

Probably, this can be solved via some hackish workaround, but at the moment I have no idea how to do it.

2 Likes

Ohhh that makes sense. I understand. I have another feature request but I’m not sure how you’d make this but I’ll write it here anyway. A cool feature could be to choose a few bones to be in a “set”, and then have buttons for each bone where when clicked, it will enable and disable the dynamic parenting so that the other bones that you’ve specified to be apart of the set will become children of the chosen bone. Then with animation, you easily switch between the bones in the set depending on which bone you want to control the rest. Essentially, this would create a system where an object can have multiple pivot points. You simply choose which pivot point you want to use, and the dynamic parents would rearrange to fit that. Lol I know it’s a pretty complicated feature request but I thought I’d say it anyway. Blender has no feature where an object can have multiple pivot points to work in animation. Regardless, your add on is genius and saves so much time.

1 Like

Hey, im trying to make my character grab the camera and then let it go, but when i disable the dynamic parent, it says that i cant move the camera, error message: “Cannot navigate an object with constraints”
if you can reply to this i’d deeply appreciate(edit: i just realized that the addon makes a constraint, could you make it so it deletes the constraint whenever you disable it?)

The influence of the constraints is set to zero when DP disabled. So it doesn’t affect an object in any way.
It’s hard to say what exactly going wrong without blend file. Can share it?

Sure thing, here’s the file: https://pasteall.org/blend/96e1287ded984de79876b9e24c6a191c(edit: i just found out that i can move the camera using the move tools, but cant move it while inside it using the shift + ` shortcut.)

I’ve tested it - look like Fly Navigation just doesn’t work if a camera has any constraint. Even valid ones, like Limit Location for example.
So it’s not caused by Dynamic Parent.

Ok, thanks for taking the time to see my file anyway!

This sounds really similar to my suggestion of having a list (or menu) where you can add parents to a bone, and quickly switch ON/OFF them. Kinda like the bone layer manager addon, but with parenting instead. If Cronk decides this is not worth the trouble I think I’ll try my hand at it, because it seem really useful to me.

Here’s a quick mockup:
image
Most buttons in this mockup don’t mean anything. The ones deliberate were the Parent Set Group ones, which would be used to Add(save), Delete, and Select presets, which are groups of parents set beforehand.

Those side buttons could be buttons that are linked to the child-of constraint properties like:
-Activate/Deactivate modifier visibility button (ex: the Eye icon or cursor icon)
-a button for Set Inverse and Clear Inverse (ex: the chain icon)
-maybe a button that sets the child-of influence to 0/100 if active or not (ex: dot button)
-maybe a button that opens a small window with Loc/Rot/Scale X/Y/Z options for each of the parents (ex: lock button):
image

What preset/list is shown in the addon panel would then depend on what bone/object is selected (the addon would check all the child-of constraints of the selected bone/obj), or maybe the list could be present in the panel independently of a selection, and the user could add a child bone/obj first, then select a parenting group preset after. This way the user could manage all the dynamic parenting that he has created directly through the N panel, without even having to select anything.

Anyway I haven’t thought things through yet… I’m just tossing ideas around.

1 Like

this woulld be incredibly useful, its also how major studios work so you can have an overview of all the constrains you have for your characters vs props.
also allowing you to bake the animation to keyframes and stuff like that
similar thing should be done with the arc tracker so you can have a list of bones with current rracking where you can refresh them all r one by one or also offset one or several, or change visibility options for all of them or one of them etc

2 Likes

Hey @Cronk I tried downloading from the first link in the top entry, which I’m sure you know doesn’t work and then found the current link up a dozen or so entries above. Maybe you could update the first entry with the working link?

Earlier this year you said something about a rewrite, would you mind sharing an update here how that’s going?

In short: Since an animation is not my primary job, I recall about DP when I receive a notification from this forum (about once every half year).
The addon (it’s basic functions) is rewritten a couple of moths ago. But I still don’t share it because I changed the way objects get selected (active last, so you can add constraints on multiple objects) and it required more testing.
I was planning to update all download links (also new forum thread, new github repo, new video tutorials, maybe gumroad and blendermarket) when I done with the addon. But I have to do paid work first.
I am very sorry for all these empty promises =(

7 Likes

Many thanks for this great addon.
It makes animation so much easier in many use cases :slight_smile:

So… which is the correct link for the 2.8? I am sorry, there are so many and I can’t figure it out. I am also new to this site so sorry if I am just oblivious

At the moment this one:
https://raw.githubusercontent.com/romanvolodin/dynamic_parent/2.8/dynamic_parent.py

man this addon is perfect … i have only one tiny issue
the addon disappears when i restart blender … or else i have to paste the script everytime … is there a zip file that i can just install like other addons?!

The addon (*.py file) can be installed without being a zip. Did you try that?
I’ve just tested and it works. Let me know if you have any issues.