Transform Layer tool does not account for Smart Bone Actions

Discuss Moho bugs (or suspected bugs) with other users. To report bugs to Smith Micro, please visit support.smithmicro.com

Moderators: Víctor Paredes, Belgarath, slowtiger

Post Reply
User avatar
concavepgons
Posts: 13
Joined: Wed Jun 28, 2023 7:14 pm

Transform Layer tool does not account for Smart Bone Actions

Post by concavepgons »


I'm currently experiencing an issue where the Transform Layer tool doesn't seem to account for Smart Bones transforming the layer. It looks fine when dragging the layer around initially but whenever you play back the animation or save the file, the layer moves to a completely different location. I think this may be a bug due to how this does not happen with point animation affected by Smart Bones (as they move to where you drag the points to during playback and after a file save).
I tested that it happens in all the versions of Moho I own which is 12.5 and 14 (it might be in version 13 too).
User avatar
Greenlaw
Posts: 9269
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: Transform Layer tool does not account for Smart Bone Actions

Post by Greenlaw »

It's hard to say what's going on in your project without seeing the file, but I suspect there's a conflict occurring between your Smart Bone Action and manual keyframing. In other words, I believe this is not a bug but a rigging and animation workflow issue. The trick is to include the ability to add animation offsets fo the rig.

To demonstrate, I reproduced your character but applied my offset items, and I'm able to add my own animation keys on top of the Smart Bone Action keys. Like so...

Image

Here's another example using a tilt control...

Image

What I've done here is I added an extra 'face' bone called faceA, which the headTurn and headTilt Smart bones move side-to-side and up-and-down, respectively. Then, after setting the keys with the Smart Bone, I hand animate the face bone parented to faceA to move the face...this is my face 'offset' bone. Since the Smart Bone does not control this bone, I can animate it freely and avoid any potential Smart Bone conflicts.

In this rig, the faceA bone is located directly under the face bone (it's the green bone in the image below.). After animating this bone for the Smart Bone Actions, I will Shy it so I don't accidentally hand-keyframe it in the Mainline when I meant to animate the offset bone instead.

Image

Note that the faceA bone is being controlled by two separate Smart Bones...so why don't these conflict with each other? It's because the turn bone only controls the horizontal motion and the tilt bone controls only the vertical motion.

To animate the position and rotation of each eye independently of the Smart Bones, I hand-keyframe the bones for these items directly. Because these bones are not controlled by the Smart Bones either, there is no conflict.

Another way to avoid Smart Bone conflicts is to place your art inside another group, have your Smart Bone control that group, and then do your additive keyframes to the child group. In this case, the child group is your 'offset' group.

Actually, there are many ways to avoid conflicts, and the best approach depends on your character design and how you wish to animate it. The key is to avoid situations where keyframes are fighting for control over the same item.

The above ideas should give you a good framework for figuring out the offset items that will work best for your character. Hope this helps, and good luck! :D
User avatar
concavepgons
Posts: 13
Joined: Wed Jun 28, 2023 7:14 pm

Re: Transform Layer tool does not account for Smart Bone Actions

Post by concavepgons »

So after banging my head with this issue, I found out the best solution for me was to use Smart Warp Meshes instead of relying on the Transform Layer tool. It seems to work much better for what I'm trying to do with my rig (which was to prevent face animations from distorting in an undesirable way when doing head rotations, while still allowing for perspective distortion).




I still honestly think that they should fix this issue with Transform Layer tool because it seems very inconsistent to be able to move Vector points affected by Smart Bones just fine but not be able to do so with layers.

Thanks for the help though.
Daxel
Posts: 996
Joined: Wed Mar 27, 2019 8:34 pm

Re: Transform Layer tool does not account for Smart Bone Actions

Post by Daxel »

I tested this and I can reproduce the same issue. Both bones and points will move correctly but layers that are being moved by a smartbone will have that strange behaviour. To my surprise, this also happens in 13.5. I guess I just never move layers in smartactions. I use layer bind, point binding or meshes like you did.

It is definitely not the expected behaviour and it is not consistent with how the rest of the objects move in Moho, so I think it's a bug with an easy workarround, but definitely a bug.

You can make bug reports here: https://www.lostmarble.com/support/
User avatar
concavepgons
Posts: 13
Joined: Wed Jun 28, 2023 7:14 pm

Re: Transform Layer tool does not account for Smart Bone Actions

Post by concavepgons »

I've sent a report of it to Lost Marble. Thanks for the help.
Post Reply