Page 1 of 2

Newbie actions question

Posted: Tue Aug 10, 2021 1:14 am
by Jaded
I have a bitmap image of a moustache that I want to curl up and flatten out again. I have attached 4 bones to each side of the moustache and flexibound them to their layers. Then I setup an action with a control bone and set the desired amount of curl. But when the action is inserted into the timeline, the moustache curls up further than the amount that I setup.
I have tried playing with the bone strengths, then I tried adding a mesh to the action, but the problem persists. Can anyone tell me whats going on here?

Re: Newbie actions question

Posted: Tue Aug 10, 2021 2:09 am
by synthsin75
If the control bone is applying it's rotation to every bone in a chain, the parent bones will move their child bones, making the curl more pronounced with every bone in the chain. So you probably want the rotation constraint to start fairly weak and get gradually stronger as you go down the chain. Since you're using actions anyway, I'd probably just make it controlled by a smart bone. That way you can manually set the amount of curl for each bone yourself. Then if I want canned actions to insert, I'd make those using the smart bone.

Re: Newbie actions question

Posted: Tue Aug 10, 2021 2:33 am
by Greenlaw
Hi,

This part sounds like you're setting up a Smart Bone Dial...
Jaded wrote: Tue Aug 10, 2021 1:14 am I setup an action with a control bone and set the desired amount of curl.

But this this part sounds like you're using a Regular Action...
...But when the action is inserted into the timeline, the moustache curls up further than the amount that I setup...
It sounds like you may be confusing two different methods. Here's a quick explainer:

A Smart Bone Action is controlled by animating a single bone (or a Smart Bone Dial) that has an animation assigned to it. There is no 'inserting' for this, you just rotate the bone.

A Regular Action is a preset of animation keyframes that you can insert into the timeline; there is no 'control bone' involved.

This might be easier to troubleshoot if you can post screen caps of what you're seeing or the project file itself.

But...assuming you want to use a Smart Bone to curl the mustache, here's a quick tutorial:

First, create the bone chain for your mustache, then add your 'dial' bone (aka, a Smart Bone Dial or SBD for short.) Remember to reduce the Smart Bone's Bone Strength to 0 so it doesn't affect the mustache art when you rotate it. Also, at this stage, I highly recommend naming the Smart Bone; in this example, I suggest 'curl'.

Now, with the 'curl' SBD selected, click the New Action button. If you did the above correctly, the name 'curl' will be pre-entered. Do not change this text; the Smart Bone name and the Smart Bone Action name must match for this to work. (This is why I suggest naming the bone; 'curl' is much easier to understand that something generic like 'B5'.)

After clicking OK, you will see a new Smart Bone Action 'curl' listed in the Actions window, and the timeline window now displays the 'curl' Smart Bone Action's timeline. This is where you will keyframe the rotation range of the 'curl' SBD and create the animation this SBD will control.

To set the range, choose the Transform Bone tool from the Tools window. Move to frame one and, with only the 'curl' bone selected, click once on the bone. A 'starting' keyframe will created for the Smart Bone. Right-click on the keyframe at frame 1 and select Linear. This will insure the animation plays at a constant rate.

(Note: if you haven't already done so, be sure to set the Default Interpolation mode to Copy Previous Key.)

Go to the last frame of the animation you will create. This should be the number of frames you need to play the animation smoothly. I don't know what you need but, for this example, let's just say 100. Rotate your dial to the 'maximum' position you desire and click on it. A linear key will be created here.

Now lets add the animation for this Smart Bone. Go to keyframe 1, select all those bones you will be 'curling', and click on one of them...this will keyframe the rotation for each bone in the selection. Select the keyframe, right-click it and select Linear. Now, go to frame 100, and 'curl' your bones. An easy way to do this is the select all the bones you want to curl (probably every bone from the second bone up to the end,) and rotate one of the bones until the whole chain curls to the pose you want.

Or, if you want this to 'roll' from the tip, you will need to animate this across the 100 frames, one bone at a time. This is a little more work but the result may be more interesting.

Either way, since we have Copy Previous Key selected, these keyframes will automatically be set to linear.

Now let's jump out of the Action and back into the Mainline by double-clicking the word Mainline in the Actions window. (Alternatively, you can right-click on the word 'curl' and select Mainline. This method is easier when you have a very long list of Actions and you are near the bottom of the list.)

Now we are ready to animate the curl. For this example, go to frame 24 and click on 'curl'. This will create the start frame for the animation at frame 24. Now go to 72--this is where we will end our animation---and rotate the 'curl' Smart Bone Dial to its maximum position. The mustache should curl.

Play back the animation by pressing the spacebar. The animation will start at frame 24, play for 48 frames, and end at frame 72. If we want to speed up the animation, use fewer frames between the two 'curl' SBD keyframes, and to slow it down, increase the frames. If you wish, you can even uncurl the mustache by rotating the SBD in reverse.

That may seem like a lot of steps but, I'm pretty much parsing every detail here for clarity, and it's actually a very quick process once you get used to it. (For example, I can probably set up the about Action with animation within a minute; the more 'complicated' version just a touch longer.) If you want to save a few steps, you can try using the Make Smart Bone Dial command...but I suggest doing this manually at first so you understand how Smart Bones work.

Also, you may want to set a rotation constraint for the SBD...this can make the dial easier to use in many situations. (I prefer to do this manually, but if you use the Make Smart Bone Dial command, it can set the constraints for you.)

I hope this helps.

Re: Newbie actions question

Posted: Tue Aug 10, 2021 3:18 am
by synthsin75
Sounded to me like it was a constraint bone used in a regular action.

Re: Newbie actions question

Posted: Tue Aug 10, 2021 11:07 am
by Daxel
Oh I think I know what's happening because I was a noob not long ago.

You actually made a smart action (that is an action controlled by a smartbone), but you are using it as a regular action and that's the problem. Smart actions are automatically applied on the main timeline by rotating the smarbone. But I think that you are clicking on "insert copy" or "insert reference" instead, and that is how you insert regular actions but not smart actions like the one you made. Because when you "insert copy" of a smart action you are inserting the moustache animation in this case but also the smartbone rotation, and the smartbone applies the smart action animation when you rotate it so that is again activating the moustache bones curling for the second time, making it twice as curled as it should be.

This may sound very confusing as a begginer so try to understand how smartbones work reading Greenlaw's explanation and then you may understand what I just said. And let us know if you have more questions.

Re: Newbie actions question

Posted: Tue Aug 10, 2021 10:13 pm
by Greenlaw
I think you're right Daxel; I tried a test inserting a Smart Bone Action like a Regular Action, and I got the additive result Jaded describes.

@Jaded, if this sounds like what you did, Smart Bone Action are not mean to be used like Regular Actions. Animating a Smart Bone is done in the workspace by rotating the Smart Bone, either as a 'dial' or as part of a rig.

If you walk through the 'mini-tutorial' above; that should give you a general idea of how to use a Smart Bone Action properly.

Here's a quick and dirty example of what's described in the tutorial...

Image

And here's the project file.

curl.moho

Hope this helps.

Re: Newbie actions question

Posted: Tue Aug 10, 2021 10:36 pm
by Greenlaw
BTW, if this animation is only meant to happen once or twice in your production, I wouldn't bother setting up a Smart Bone Action for it because it's very easy to do this animation using the Sketch Bones tool. I would only do this as a Smart Bone Action if I needed to repeat and/or retime this animation often throughout a production.

Re: Newbie actions question

Posted: Wed Aug 11, 2021 12:29 pm
by Jaded
Oooh now I see. Yes exactly, I was confusing a Smart Bone Action with a Regular Action.
And as Daxel suggested, I was using 'insert copy/reference' into the main timeline.

Big thanks, I really appreciate the time you guys have taken to help me out.

I've followed the tutorial, which was very helpful, and has given me some extra things to think about. I was also interested to hear Daxel's explanation of why using 'insert copy' caused the extra bone rotation, because to me it seemed like Moho was saying, "I don't think you're putting enough curl on this moustache. I'm going to fix it for you because I think it would be better this way. Trust me, you're new to animation, but I've been doing this a long time."

Re: Newbie actions question

Posted: Wed Aug 11, 2021 2:08 pm
by Hoptoad
I had confused Actions and Smart Bone Actions in the past, probably because they both share the word "Actions".

In my mind, they are completely different things. Why share the same name?

Maybe, in a future Moho update, the name Smart Bone Actions could be changed to something different, like Smart Bone Gizmos.

Or maybe Actions could be renamed Loopy Loops.

Also, let's change Stroke to Outline. A stroke is something that is yelled in rowboat races, or a tragic medical condition.

Furthermore, in the side menu, change Workspace to Funspace.

Ugg, I think I didn't get enough sleep last night.

Re: Newbie actions question

Posted: Wed Aug 11, 2021 3:06 pm
by SimplSam
Hoptoad wrote: Wed Aug 11, 2021 2:08 pm I had confused Actions and Smart Bone Actions in the past, probably because they both share the word "Actions".
In my mind, they are completely different things. Why share the same name?
...
Maybe because Smart Bone Actions use a Bone to Smart-ly control Actions, and Actions underpin SBA's.

Re: Newbie actions question

Posted: Wed Aug 11, 2021 3:29 pm
by Daxel
Jaded wrote: Wed Aug 11, 2021 12:29 pm Oooh now I see. Yes exactly, I was confusing a Smart Bone Action with a Regular Action.

Glad I could help!

Hoptoad wrote: Wed Aug 11, 2021 2:08 pm I had confused Actions and Smart Bone Actions in the past, probably because they both share the word "Actions".

In my mind, they are completely different things. Why share the same name?

Actions are alternative timelines stored for reusability purposes. That's the shared point of smart actions and regular actions. If you look at it that way, it makes sense.

Re: Newbie actions question

Posted: Wed Aug 11, 2021 4:58 pm
by Greenlaw
@Hoptoad,

Action is a general term in Moho for an animation preset. We have three different types of Actions in Moho, and these are:

Regular Actions - this is pretty straight forward; it's just a set of keyframes you can insert in the timeline as if you copy/pasted it. You have the option to insert the keyframes as a reference, which allows you to make global changes inside the Regular Action everywhere you inserted it.

Morph Actions - Similar to the above but it's just a single frame. This is good for key poses you want to reuse, like for facial expressions, mouth shapes, or hand gestures. It's also good for settings you need to recall later.

Smart Bone Actions - with this type, the animation preset is played back by rotating a bone, aka Smart Bone. This gives you advanced control over how the animation is played back. For example, you can animate the Smart directly to control it's speed and direction, let the character's IK control it, or even have another Smart Bone control it. You can even use it to play back the frames in the animation nonlinearly (like lips sync poses, for example.)

So these are all Actions or animation presets, and each Action type is a different way you can use Actions in Moho.

Re: Newbie actions question

Posted: Thu Aug 12, 2021 2:37 pm
by Hoptoad
Oh, thanks for explaining.

Morph Actions? I can re-use a single pose? Wow, that sounds super-useful.

Re: Newbie actions question

Posted: Thu Aug 12, 2021 4:19 pm
by Greenlaw
Hoptoad wrote: Thu Aug 12, 2021 2:37 pm Morph Actions? I can re-use a single pose? Wow, that sounds super-useful.
Yeah, you can either set the Morph Action pose from inside the Action, or you can just copy and paste keys from the Timeline into the Action. (You'll probably want to use Freeze Pose or Freeze Selected before copying.)

To be clear, the only difference I'm aware of between the first two types is that a Regular Action is animated (multiple keyframes), and a Morph Action is just a single frame. As a matter of fact, as soon as you add another keyframe to a Morph Action, it automatically becomes a Regular Action, so keep that in mind. Also, check out the Blend Morphs window. If your character has multiple Morph Action poses or expressions, this window lets you use sliders to blend between them to create new poses or expressions.

Personally, I really only use Smart Bone Actions these days. I still find Regular Actions useful, but since I can open two projects at once time, it's often easy enough to just copy/paste the keyframes I want from another project. Sometimes I'll create a Morph Action for a facial expression I might want to reuse later, but I don't seem to do that as much as I used to.

But, of course, you should use whichever methods work best for your production.

Re: Newbie actions question

Posted: Thu Aug 12, 2021 7:34 pm
by Hoptoad
Thanks for the information. It's funny how a single frame being duplicated is called a Morph. The word "morph" makes me thing of something being changed, not duplicated. Do you have any idea why Morph is called Morph? I'm probably overlooking something basic about how the Morph Action is generally applied when animating.