vpaint icon indicating copy to clipboard operation
vpaint copied to clipboard

tween interpolation

Open blurymind opened this issue 9 years ago • 6 comments

Right now vpaint can only create a linear interpolation. I suggest we have the ability to add a way to control the tween spacing. Here is how that looks like in both tween maker and cacani: tweenspacing

When the time line cursor is at a tween, the user can adjust the tween's spacing and add a slow up at the start, the end, or both. This is especially important for animation.

blurymind avatar Sep 28 '15 22:09 blurymind

Yes, thx for this suggestion! Control over the timing of the motion is definitelty important. Also, control over the trajectory taken by tweens might be added. In 3D animation, this is often done by tweaking the tangents of animation curves, which gives you even more precise control than this "tween spacing" tool. I wonder how well could this concept be ported to 2D digital animation.

dalboris avatar Sep 30 '15 05:09 dalboris

You could do it with bezier curves to represent the spacing. You are right that this approach is not as flexible. I liked it because it takes much less steps to control and it represents spacing in a clearer way than curves. It's more akin to classic animator x-sheets.

I suppose that the best solution for me personally is to have the tween spacing slider control a bezier curve that represents the spacing in the space of the timeline between the two keyframes. But then in order to see that curve you would need much more vertical space for each layer of animated keyframes. Perhaps it could show the curve between two keyframes only when you hover your mouse over the the tweened space between the two keyframes (timeline)? And let you edit the spacing with a tween spacing slider if you click on the tween between the two keyframes (timeline).

blurymind avatar Sep 30 '15 09:09 blurymind

An even better way to do this in the timeline - instead of a bezier curve, use the same straight lines like the ones in tween spacing editor - only horizontal. tweenspacing2 This will preserve precious vertical space.

blurymind avatar Sep 30 '15 09:09 blurymind

Yes, I think having this control/information in the timeline is where it makes more sense, and having the traditional "tween spacing" should be an option, since trad animators are used to this. Though, in any case, it's not trivial to have a good visualization of it since different edges may have different timing. It is also challenging technically since those edges, with different timing, can be connected to one another. But I'll definitely think about it and try to come with a good solution, all these are interesting and important challenges to solve.

dalboris avatar Sep 30 '15 17:09 dalboris

It would be great to have it! :) For future reference, here is how it looks like in spine and spriter features-graph http://esotericsoftware.com/spine-in-depth This is also what most 3d software uses.

I find this way of representing spacing (bezier curve) less intuitive and further away from the traditional way most animators have been reading it from charts. animation spacing charts

So please consider why I find the representation in my mockup more intuitive.

blurymind avatar Sep 30 '15 22:09 blurymind

Yep, no worries, I am very familiar with both representations.

dalboris avatar Oct 01 '15 17:10 dalboris