Select Child/Parent Bones + Shortcut

Discuss ideas for new features with other users. To submit feature requests to Smith Micro, please visit support.smithmicro.com

Moderators: Víctor Paredes, Belgarath, slowtiger

User avatar
JoelMayer
Posts: 285
Joined: Sun Apr 05, 2009 8:29 pm

Select Child/Parent Bones + Shortcut

Post by JoelMayer »

So very often we hear that people are having trouble selecting hard to reach bones. There are many solutions to this but from other software i learned to create little shapes, so called "selectors", that are added to hard to reach limbs or stuff like this. That way you just have to select the shape and with a shortcut go up the chain and you have the piece of the rig selected that you want.

Here's an example from Toon Boom:

Image

The green blobs and all the stuff around it are the selectors. Those are not being rendered and only serve to select parts of a rig.

I think this is something that could "easily" be replicated in Moho with i.e. Pin Bones. You'd have an arm i.e. that is hidden behind the body. You add a pin bone to it as a child, and give it a label. You select the pin bone and then press a shortcut on your keyboard. It goes up the bone chain by one, selecting the parent bone. Every time you press said shortcut, it goes up one bone until it reaches the root.

Silly Mockup:

Image

What's happening here is you want to grab the second bone behind the first. You select the pin with the label, press the shortcut and the parented bone is selected.

To make this even more cool it would be nice if we could once and for all set the size of pin bones :D

Hope this makes sense...
User avatar
Víctor Paredes
Site Admin
Posts: 5665
Joined: Wed Jan 26, 2005 12:18 am
Location: Barcelona/Chile
Contact:

Re: Select Child/Parent Bones + Shortcut

Post by Víctor Paredes »

We have discussed the idea of layer selectors/shortcuts in the past (Wes even created a pretty impressive script some time ago).
Maybe these could be shapes that when you click on them, you automatically jump to certain layer.
Wouldn't something like that make more sense rather than a pin bone acting as a shortcut to select a specific bone in the same layer?

Actually, I think maybe these are two different issues.
- One is that sometimes it's hard to select and manipulate a bone because it's covered by other bones.
I don't have a solution for that, but this is something that probably the Select bone and Transform bone tools could be smarter about an actually allow you to manipulate the desired bone, rather than creating workarounds with extra bones.

- The second topic (more related to the TB screenshot, I think) would be the ability to have shortcuts to select different layers. So maybe you could jump from the main bone layer, to a curver, then to a switch layer and then back to the main bone layer.

Does that make sense?
Image Image Image Image
Moho Product Manager

www.mohoanimation.com
Rigged animation supervisor in My father's dragon - Lead Moho artist in Wolfwalkers - Cartoon Saloon - My personal Youtube Channel
User avatar
JoelMayer
Posts: 285
Joined: Sun Apr 05, 2009 8:29 pm

Re: Select Child/Parent Bones + Shortcut

Post by JoelMayer »

Víctor Paredes wrote: Wed Jan 10, 2024 5:20 pm We have discussed the idea of layer selectors/shortcuts in the past (Wes even created a pretty impressive script some time ago).
Maybe these could be shapes that when you click on them, you automatically jump to certain layer.
Wouldn't something like that make more sense rather than a pin bone acting as a shortcut to select a specific bone in the same layer?

Actually, I think maybe these are two different issues.
- One is that sometimes it's hard to select and manipulate a bone because it's covered by other bones.
I don't have a solution for that, but this is something that probably the Select bone and Transform bone tools could be smarter about an actually allow you to manipulate the desired bone, rather than creating workarounds with extra bones.

- The second topic (more related to the TB screenshot, I think) would be the ability to have shortcuts to select different layers. So maybe you could jump from the main bone layer, to a curver, then to a switch layer and then back to the main bone layer.

Does that make sense?
Hi Victor

I think in Moho's case it makes more sense to have a layer selector kind of like Wes' script (if it's the one i'm thinking of) or like what you've described with something integrated in the Bone layer.

Toon Boom of course works a bit differently than Moho. In Moho you generally don't really animate layers but points and bones. Toon Boom basically just consists of drawing layers and so called "Pegs" that store transformation information. Onto those you can add deformers. Then you group/parent them all with the Node view. But the main manipulation happens over layer transformations, like in Flash. Hence any sort of fake IK is so much harder to do since TB rigs are basically just connected drawing layers sometimes with curve or envelope (warp in Moho) deformers on top and of course a lot of drawing substitutions (Switches).

Those selectors you see also are made so you can easily select a group of layers, that have the selector (which is basically just another drawing layer) connected to. I.e. one might be for the face so instead of having to Shift+Select all Face layers, i can just click on the selector and manipulate the whole face around at once. So often they serve both purposes to either select groups of nodes at once OR to select things that are maybe even invisible like i.e. a cutter (mask) node that can cut off the eye shape but is usually not visible or other hidden masks or, as mentioned, hard to reach pieces of artworks. It's also easier for other animators to understand, what's possible with the rig and where they have to grab onto things but, again, you can't compare Moho and TB 1:1 of course because it's different workflows.

Since in Moho we generally have stuff parented to bones etc. i never really missed that aspect. My idea was really more for selection helpers. But i do think having a shortcut to go up and down a bone chain can help either way i.e. you're rotating an arm and instead of reselecting the hand by itself you can just quickly press PgDwn or whatever and it selects the hand bone for you.

If you of course have something in store for easier/smarter bone selection that circumvents the need of having extra bones all the better :) I just think the move up and down a chain (i think in TB it's Shift+B and B) of either nodes or a skeleton can come in handy.

Hope i was able to explain it. Thanks for answering!
User avatar
Greenlaw
Posts: 9269
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: Select Child/Parent Bones + Shortcut

Post by Greenlaw »

Hi Victor,
Víctor Paredes wrote: Wed Jan 10, 2024 5:20 pm Maybe these could be shapes that when you click on them, you automatically jump to certain layer.
Yes! I absolutely need this in Moho. I would mainly use this feature to select nested Switch layers containing Groups as child layers, and for any Vector layers that I edit frequently during animation.

A while back, I used Wes' Layer Shortcuts to do this, but unfortunately, the Layer Shortcuts setups do not carry over correctly when it's Imported to other projects. I would love to see a native Moho implementation of this idea that is a little easier to set up and will import correctly.

Custom or preset shapes as buttons for this feature would be nice, but it would still be very useful if we only had Notes to use as buttons (the way I used Layer Shortcuts.) I'm just mentioning this if it means we can get this feature sooner.

As for UI, I imagine this could be a new Button layer, and we could assign specific layers and items (bones, points, shapes, etc.) to each Button layer shape or note button in that layer.

Ideally, any Button layer should link only to sub-layers (better for individual characters)
, but maybe there could be an option to make the button layer work globally so it connects to anything in the project.

Lately, I've been experimenting with Lukas' Layer Finder to select nested groups and layers. It does some of what I need, but I would still like a more visual way to select Switch layers inside the workspace. (I know about Alt+Right Click and Shift+Alt+Right Click, but these shortcuts don't work for Switch layers containing groups.)

Thanks for listening! :D
User avatar
JoelMayer
Posts: 285
Joined: Sun Apr 05, 2009 8:29 pm

Re: Select Child/Parent Bones + Shortcut

Post by JoelMayer »

Please not more layers :D I think buttons could be integrated on a bone layer perhaps? Then you have everything at a glance at all time. At this stage i would be really careful not to introduce more layer types to Moho.
User avatar
Greenlaw
Posts: 9269
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: Select Child/Parent Bones + Shortcut

Post by Greenlaw »

I'm okay with a new layer type since this is a distinctly different function from bones. By making it a separate layer type, there will be more flexibility for where it's nested and which groups and layers it should affect.

If the desire is to reduce clutter in the Layers Window, maybe there should be an option for hiding layers in the Layer Windows. Like the Shy Layer option in
After Effects (or the Shy Bone option we have in Moho but for layers.) Actually, I would use this a lot too! :)
User avatar
JoelMayer
Posts: 285
Joined: Sun Apr 05, 2009 8:29 pm

Re: Select Child/Parent Bones + Shortcut

Post by JoelMayer »

Mmm i don't know if i agree. The goal should be to get as close to have to bother as little as possible with the layer window while animating except obviously to manipulate points and such. Hence why TB does these selector things so that the animators don't have to dig through the node view constantly. Still gotta do that obviously from time to time but it definitely reduces the time spent.

If i have a bone layer and then a buttons layer under that, it already gets me out of the flow because i have to think an extra step to get to those buttons and shovel through layers again. I'd rather have it all at a glance and be able to turn stuff on and off from there. Like a checkbox show bones, show buttons, etc.

Alternatively you could go the route of this script with the layer selection window. I think though then we gotta slowly move towards a vertical properties panel which, imo, would make a lot of UI things easier anyway.
User avatar
synthsin75
Posts: 9975
Joined: Mon Jan 14, 2008 11:20 pm
Location: Oklahoma
Contact:

Re: Select Child/Parent Bones + Shortcut

Post by synthsin75 »

Pretty easy to have a button script, that you can assign a shortcut to, that selects a bone's parent:

Code: Select all

	for i=0, skel:CountBones()-1 do
		local bone = skel:Bone(i)
		if (bone.fSelected) then
			bone.fSelected = false
			skel:Bone(bone.fParent).fSelected = true
		end
	end
That would work with the pin bone idea.
User avatar
Greenlaw
Posts: 9269
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: Select Child/Parent Bones + Shortcut

Post by Greenlaw »

JoelMayer wrote: Wed Jan 10, 2024 7:49 pm If i have a bone layer and then a buttons layer under that, it already gets me out of the flow because i have to think an extra step to get to those buttons and shovel through layers again.
Oh, I was thinking the buttons would be directly clickable without changing layer selection, like with Layer Shortcuts. With Layer Shortcuts, I still had to select the tool for it, but I imagine a native system should let us just click the button directly when they're visible (using a modifer or other hotkey I guess,) without changing layers. (Kinda like how we can select layers and parent groups using the modifier key now.) Actually, that would be cool too, if the buttons only appeared for a given character when their Bones layer was selected. I think Layer Shortcuts is able to behave contextually like that, but it's been a while since I used it and I never really used it to animate multiple characters except in a quick test.

Ok, I just checked one of my old Layer Shortcuts setups, and while I'm in the Bones layer, I can use the tool to click the buttons to select the assigned layer. I have the option to keep the groups collapsed, so the layers window remains clean and manageable, and reselecting the Bones layer is easy. If I happen to be deep down into sub-layers while uncollapsed, I have an LS button to go straight back up to the Bones layer on top.

I did a handful of animations using this system and it worked quite efficiently for me. Well, until I ran into the import problem anyway. :)

TBH, I'm not too hung up on how this should be implemented, only that I need this feature and it needs to be easy to set up and use.
Last edited by Greenlaw on Thu Jan 11, 2024 1:39 am, edited 1 time in total.
User avatar
Greenlaw
Posts: 9269
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: Select Child/Parent Bones + Shortcut

Post by Greenlaw »

Having it in a separate window, like in the Harmony example you posted, would be fine, too. If the contents of the window could change based on layer selection (i.e., a character's Bones layer,) that would be great! (Kinda like how the Switch Selection window works now.)
User avatar
Greenlaw
Posts: 9269
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: Select Child/Parent Bones + Shortcut

Post by Greenlaw »

synthsin75 wrote: Thu Jan 11, 2024 12:58 am Pretty easy to have a button script...
Thanks, Wes! Snipped and saved for future ref! :D
User avatar
SimplSam
Posts: 1048
Joined: Thu Mar 13, 2014 5:09 pm
Location: London, UK
Contact:

Re: Select Child/Parent Bones + Shortcut

Post by SimplSam »

Selecting a bone is one-thing... You still then have to manipulate it, and this is where the selection will potentially change again - once you mouse down.

Maybe need an option for bone selection to be [x] Sticky. So that you need to Esc (or similar) to deselect.

Also, I would like to see an additional bone property state like [x] Selectable, so that when "Selectable" is not enabled - bones can be seen, but cannot be selected.

Whilst we are at it - I would also like a kind of opposite [x] Invisible - bones cannot be seen, but can be selected. This would facilitate the correct use of custom control handles (virtual bones) for manipulation.
Moho 14.1 » Win 11 Pro 64GB » NVIDIA GTX 1080ti 11GB
Moho 14.1 » Mac mini 2012 8GB » macOS 10.15 Catalina
Tube: SimplSam


Sam
User avatar
synthsin75
Posts: 9975
Joined: Mon Jan 14, 2008 11:20 pm
Location: Oklahoma
Contact:

Re: Select Child/Parent Bones + Shortcut

Post by synthsin75 »

SimplSam wrote: Thu Jan 11, 2024 5:12 am Selecting a bone is one-thing... You still then have to manipulate it, and this is where the selection will potentially change again - once you mouse down.
That's true.
Maybe need an option for bone selection to be [x] Sticky. So that you need to Esc (or similar) to deselect.

Also, I would like to see an additional bone property state like [x] Selectable, so that when "Selectable" is not enabled - bones can be seen, but cannot be selected.
Those might be possible with a custom script.
User avatar
JoelMayer
Posts: 285
Joined: Sun Apr 05, 2009 8:29 pm

Re: Select Child/Parent Bones + Shortcut

Post by JoelMayer »

Greenlaw wrote: Thu Jan 11, 2024 1:26 am
JoelMayer wrote: Wed Jan 10, 2024 7:49 pm If i have a bone layer and then a buttons layer under that, it already gets me out of the flow because i have to think an extra step to get to those buttons and shovel through layers again.
Oh, I was thinking the buttons would be directly clickable without changing layer selection, like with Layer Shortcuts.
Oooh, sorry about that then!
User avatar
JoelMayer
Posts: 285
Joined: Sun Apr 05, 2009 8:29 pm

Re: Select Child/Parent Bones + Shortcut

Post by JoelMayer »

Greenlaw wrote: Thu Jan 11, 2024 1:37 am Having it in a separate window, like in the Harmony example you posted, would be fine, too. If the contents of the window could change based on layer selection (i.e., a character's Bones layer,) that would be great! (Kinda like how the Switch Selection window works now.)
The stuff in the separate Window of the Harmony example is Master Controllers (their version of Smartbones) :)
Post Reply