How keyframe 0 settings any other but always smooth on 14?

Wondering how to accomplish a certain animation task? Ask here.

Moderators: Víctor Paredes, Belgarath, slowtiger

FanN80085
Posts: 10
Joined: Sun Jul 18, 2021 3:57 am

How keyframe 0 settings any other but always smooth on 14?

Post by FanN80085 »

Is there any way to make the default keyframe 0 settings any other but always smooth?
In version 13 by default they were always linear, but now they're always smooth. No matter what settings I put in the keyframe window.

I don't need smooth keyframe 0 by default! I'm working with actions and if I want smooth movement, I'll put the smooth settings on the action bone keyframe. But for that, it is necessary that the animation itself in the actions always be linear.

My projects were created on version 13, and on version 14 all actions broke, because all vector layers default keyframe 0 settings became smooth instead of linear. And I need to go to EVERY SINGLE ONE OF THEM and change the settings on each keyframe 0 to linear.... But that's not even the worst part.
WORST OF ALL. if I create a new vector point or shape on a vector layer that already has an animation, specifically for these new parts keyframe 0 become smooth too!

And every time... if I want my animation to look correct, I have to go back to frame 0 and change the keyframe settings. Every single time! EVERY SINGLE TIME!!! I'm getting insane because of this!
Please help!
Daxel
Posts: 996
Joined: Wed Mar 27, 2019 8:34 pm

Re: How keyframe 0 settings any other but always smooth on 14?

Post by Daxel »

You mean 13.0 or 13.5?

I just checked on 13.5 and it works the same way as 14, smooth as default 0.

I'm testing it on Moho 14 and adding a point to a shape whose interpolation was lineal on F0 doesn't change the interpolation of that point back to smooth, it stays lineal. However, adding a new point as a new drawing makes the interpolation of that point smooth.

That difference makes sense because when you add a point to a shape that is animated, Moho tries to automatically add some animation to the new point to match the general animation of the shape. That's the only scenario where it could make sense to add points to a layer and expect actions to keep working nicely.

The other scenario is when you add points that are not connected to any previously animated shape. In that case as I said the interpolation is in fact defaulted to smooth in F0 only for those new points, but because Moho won't try to automatically animate those new unconnected points at all, you'll have to animate them yourself anyway and use the desired interpolation mode for them.

That said, I see value in a proposal about a F0 default interpolation optional setting.
FanN80085
Posts: 10
Joined: Sun Jul 18, 2021 3:57 am

Re: How keyframe 0 settings any other but always smooth on 14?

Post by FanN80085 »

Well, yeah, my mistake, adding new points doesn't make them smooth on F0 if the shape already had an animation, But For example, if the shape only has animation for points moves and does not have points curve, adding linear points curve key, makes it smooth on F0.
As well as any other effects that haven't already been tuned to linear on F0.
And having half of the animation be smooth and the other half linear on one shape, doesn't really make sense in a normal situation.

As it doesn't make sense to put smooth by default at the first place. Because, for what? It's just as useful as if the default F0 setting was Bezier. It's basically the same thing. How was that supposed to help?

Either way, is there any way to change the F0 settings? Maybe through code changes or some addon?
I'm really-really tired of doing this manually every time for each new layer or bone.
User avatar
Greenlaw
Posts: 9269
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: How keyframe 0 settings any other but always smooth on 14?

Post by Greenlaw »

It's easy.

For a specific channel...

1. Create a keyframe at frame 1.
2. Set frame zero to whichever mode you like.
3. Delete the key at frame 1

If you have Copy Previous Key enabled, all keys will use the Interpolation mode you had set for frame 0 of that channel.

If you want all the channels to always be the same specific interpolation mode, set it in Default Interpolation.

Having animated with Moho for TV production for nearly 10 years, I recommend using Linear in Smart Bone Actions and Smooth on the Mainline most of the time. For Smart Bones, set frame 1 to Linear, and frame 0 to whichever mode you like. (Here, I usually use Smooth for frame 0 but sometimes Step depending on what I'm animating. These are the most efficient settings for me.)

Hope this helps.
Last edited by Greenlaw on Thu Nov 02, 2023 7:32 pm, edited 1 time in total.
Daxel
Posts: 996
Joined: Wed Mar 27, 2019 8:34 pm

Re: How keyframe 0 settings any other but always smooth on 14?

Post by Daxel »

Greenlaw wrote: Thu Nov 02, 2023 4:20 pm 1. Create a keyframe at frame 1.
2. Set frame zero to whichever mode you like.
3. Delete the key at frame 1
This is useful in general but it doesn't work in the cases we are talking about, when new shapes or channels are created. I mean it works but you have to do it again every time. That's why I think a F0 default interpolation setting could be useful. Taking into account we all normally pose at F1 anyway because that's the first rendered frame, I think I would set my default F0 interpolation to lineal.
FanN80085
Posts: 10
Joined: Sun Jul 18, 2021 3:57 am

Re: How keyframe 0 settings any other but always smooth on 14?

Post by FanN80085 »

Greenlaw wrote: Thu Nov 02, 2023 4:20 pm 1. Create a keyframe at frame 1.
2. Set frame zero to whichever mode you like.
3. Delete the key at frame 1
Yes, that's exactly what I'm doing right now, because I have no other choice. And do it over and over again for each new layer, shape, effect, bone, etc. Makes me insane....
Greenlaw wrote: Thu Nov 02, 2023 4:20 pm If you want all the channels to always be the same specific interpolation mode, set it in Default Interpolation.
That's one I didn't fully understood. Where can I find these "Default Interpolation settings"??? I'm trying to find them at the very beginning, where are they?
User avatar
Greenlaw
Posts: 9269
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: How keyframe 0 settings any other but always smooth on 14?

Post by Greenlaw »

I'm talking about the Default Interpolation list under the workspace. Whichever Interpolation mode you set this to will be the default for any layer or channel. So, if you set this to Linear, any keyframe you create from frame 1 onward will be linear until you decide to change the default to something else. It does not affect frame 0 because that's not an animation frame, it's the setup frame.

I prefer to set this to Copy Previous Key, which makes it behave like After Effects. Then Moho refers to any key that already exists on the timeline. If no key exists, it uses frame 0.
User avatar
Greenlaw
Posts: 9269
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: How keyframe 0 settings any other but always smooth on 14?

Post by Greenlaw »

Ok, I think I understand. I primarily use Smooth for character animation (actually, pretty much always,) but I can see how others may want frame 0 to be something else by default.

But when I need everything set in Linear or Step, I just set the Default to what I need. In my experience, it really doesn't matter what frame 0 is set to because that's not an animation frame, and the default Interpolation kicks automaticallky in beginning with frame 1.

But maybe I haven't run into a situation yet where I also needed frame 0 to be something else.

I guess it might make sense for me to set the Default Interpolation to Linear when I'm setting up a Smart Bone Action because I always use Linear keys there. But it's been automatic for me to r-click and select what I want at frame 1 of the Smart Bone Action and let Copy Previous handle the rest, so I haven't thought much about it.
FanN80085
Posts: 10
Joined: Sun Jul 18, 2021 3:57 am

Re: How keyframe 0 settings any other but always smooth on 14?

Post by FanN80085 »

Yeah, that's useless if it does not affect F0.
In my case, the characters are very complex and all my work is based on bone actions that animate groups of vector layers. And these action groups are later cotrolled by bunch of big bones actions and a bunch of fixes and switches.
In this case, F0, which is responsible for a lot of actions start frame, must necessarily be on linear. Otherwise the whole animation loses synchronization and everything breaks.

Now here's another one little torture for me when I have to go to frame zero and change it to linear every single time. Thanks a lot!
Please give a good slap to that one developer who decided that this was a good idea for some reason.
User avatar
Greenlaw
Posts: 9269
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: How keyframe 0 settings any other but always smooth on 14?

Post by Greenlaw »

FanN80085 wrote: Thu Nov 02, 2023 8:09 pm In this case, F0, which is responsible for a lot of actions start frame, must necessarily be on linear. Otherwise the whole animation loses synchronization and everything breaks.
Actually, in a Smart Bone Action, the animation begins with frame 1, just like in the Mainline. if you don't create a linear key at frame 1, the animation would be harder to keep in sync because it will interpolate 1 frame early. When frame 1 is set inside the Action, all of the layers involved will remain in sync. This is one of the reasons why the Default Interpolation starts at frame 1, not 0.

By leaving 0 outside of the Smart Bone Action's animation, it leaves it open to be a different Interpolation for the Mainline, which can be critical in many typical animation setups using Smart Bones. (Most notably, when using a Smart Bone Dial to control a Switch layer non-linearly...In this case, you'd use Linear at frame 1 for the Action, but Step in frame 0 for the dial itself on the Mainline.)
Daxel
Posts: 996
Joined: Wed Mar 27, 2019 8:34 pm

Re: How keyframe 0 settings any other but always smooth on 14?

Post by Daxel »

Greenlaw wrote: Thu Nov 02, 2023 9:59 pm Actually, in a Smart Bone Action, the animation begins with frame 1, just like in the Mainline. if you don't create a linear key at frame 1, the animation would be harder to keep in sync because it will interpolate 1 frame early. When frame 1 is set inside the Action, all of the layers involved will remain in sync. This is one of the reasons why the Default Interpolation starts at frame 1, not 0.
I don't undersand what do you mean by "harder to keep in sync". When I create smartbone dials with one dimension or with split dimensions, I let the action interpolate from 0 and I don't see any issue.

Greenlaw wrote: Thu Nov 02, 2023 9:59 pm By leaving 0 outside of the Smart Bone Action's animation, it leaves it open to be a different Interpolation for the Mainline, which can be critical in many typical animation setups using Smart Bones. (Most notably, when using a Smart Bone Dial to control a Switch layer non-linearly...In this case, you'd use Linear at frame 1 for the Action, but Step in frame 0 for the dial itself on the Mainline.)
Couldn't this be achieved too just creating a step keyframe at F1 in the timeline?
FanN80085
Posts: 10
Joined: Sun Jul 18, 2021 3:57 am

Re: How keyframe 0 settings any other but always smooth on 14?

Post by FanN80085 »

Greenlaw wrote: Thu Nov 02, 2023 9:59 pm Actually, in a Smart Bone Action, the animation begins with frame 1
You've suggested me to put a copy of F0 on frame 1 several times already. But this is a very-very bad idea for next 3 reasons.

1. F1 should be copied from F0, but F0 is set on smooth settings by default, so I'm gonna have to wasting my time anyway to go back to F1, select keyframe and change their settings to linear on F1. It's like an extra step of useless work.... why should I do that?

2. Since I mostly use 2 sides action-bone for animating vector layers. (for example, turning the eye left and right in the 1 action-bone.) Using F0 as a starting line for these action is very important. Because I often use the same puppets to create other characters.
So F0 start gives me a very easy option to make any changes in the character, by just making changes in frame F0, the following actions will continue from the new F0, no matter what changes or fixes I have added.
If I have a extra F1 keyframe in actions, in this case I will have to manually go to each action and insert a new fixed F0 into F1 for them to work properly. Which adds an extreme amount of new useless work.
Even in cases where the changes are too drastic and whole action must be redone, it's just a annoying waste of time to even think about F1 needs to be fixed.

3. You said many times that the animation in action starts at F1 and F0 is ignored. But you are COMPLETELY wrong.
Let's consider the following situation.
Suppose I have a character face, that by default looks symmetrically straight on F0. The character's face is made of a bunch of vector layers and it's controlled by 1 bone-action. Rotate this bone-action to left and right accordingly turns the character's face to left and right, and the midpoint between the 2 sides turns is... frame 0.
So if our animation starts with our character just looking straight ahead. (which means that the turn's action-bone are not activated.)
What frame will the viewer see in this case? He'll see F0! And if we start turning heads our animation will start with F0, not with the F1. And every time the character face is set to the default position it will return to F0.
Why you keep saying that the actions animation starts with F1, I don't understand. Because they don't.

In addition, if you place a F0 copy in F1 in your turn action In this case. Your 2 sides action will actually break a bit. And when you rotate the bone by 1 degree left or right. it won't actually do anything, because it just moves from F0 to F1 and they're copies of each other.
And if you do a full right-to-left turn. you'll actually get some freeze frames in the middle. Copying something on F1 in action is a goddamn curse.
And if F0 is smooth and you do a full right-to-left turn, your animation will slow down in the middle. I don't need that, it's annoying! If I want smooth I'll just apply smooth or bezier on the bones action keyframe on the main timeline. As long as the action has enough frames, it does fine with any smoothness.

---------------
Just as a reference, this is the model I'm building. The video is old and was made back in version 12.5.
https://drive.google.com/file/d/1YbKS9P ... sp=sharing
Still, even if I have to manually change the F0 for each layer and go through this mini hell. The new graphics engine and stability boost in 14 are too damn good.
But please, add the option to select F0 settings somewhere in the main project settings in an upcoming patch. That would be nice!
User avatar
Greenlaw
Posts: 9269
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: How keyframe 0 settings any other but always smooth on 14?

Post by Greenlaw »

Daxel wrote: Fri Nov 03, 2023 12:22 am I don't undersand what do you mean by "harder to keep in sync". When I create smartbone dials with one dimension or with split dimensions, I let the action interpolate from 0 and I don't see any issue.
It's because Moho considers frame 1 as the first frame of the animation, not frame 0. So, unless all the channel data between frame 0 and frame 1 are completely identical, interpolation may create a difference in what frame 1 should be. This difference may be slight, but in some setups, especially ones involving many channels and layers, it can make a difference in precision.

For me, I automatically set a keyframe at frame 1 inside a Smart Bone Action and on the mainline, so I don't have to worry about it. Sometimes, it's done as a precaution, and sometimes it may even be unnecessary, but more often, I know the keyframe needs to be there or probably will if I have to revisit it and add layers to the animation. Setting a key at frame 1 is such a minor effort I don't even think about it when I do it.

To me, it's better to set it so I can forget it. Animation is complicated enough without leaving little traps for me to step into later. :D
Last edited by Greenlaw on Fri Nov 03, 2023 6:35 pm, edited 2 times in total.
User avatar
Greenlaw
Posts: 9269
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: How keyframe 0 settings any other but always smooth on 14?

Post by Greenlaw »

FanN80085 wrote: Fri Nov 03, 2023 9:22 am You've suggested me to put a copy of F0 on frame 1 several times already. But this is a very-very bad idea for next 3 reasons.
All I can add to this is that the techniques I've described work well for me and our team in creating animation for television. They might not be necessary or desirable for everyone or their chosen style of animation, but it's definitely made animating in Moho easier, quicker, and more flexible for the productions I've been involved with.
Daxel
Posts: 996
Joined: Wed Mar 27, 2019 8:34 pm

Re: How keyframe 0 settings any other but always smooth on 14?

Post by Daxel »

FanN80085 wrote: Fri Nov 03, 2023 9:22 am
... this is a very-very bad idea for next 3 reasons.

... extreme amount of new useless work.

... you are COMPLETELY wrong.

... is a goddamn curse.

Sorry I didn't know this is the way you treat people that try to help you for free, regardless of if you think they are wrong.

I'm out. Good luck!
Post Reply