Change interpolation modes for multiple keyframes/waypoints?

Hi all,

I saw where pixelgeek made reference to the capability to drag and drop keyframes in the 0.61.10 discussion. Since I suck at building packages on my own, I downloaded the latest deb package from Zelgadis to test out keyframe dragging and … Man, is that cool! Thanks to you guys for adding in the feature and thanks to Zelgadis for the easy-to-install deb file.

At any rate, it got me thinking about workflow in Synfig for character animation. Right now, I work out timing and poses in Pencil, then output a png sequence and use that as a guide in Synfig. But have you guys seen this from one of the Blender training DVDs? …

I think this basic approach could be used in Synfig to speed up character animation assuming that we had drag/drop keyframes plus the ability to change the interpolation mode of multiple keys/waypoints at once. Basically, you could follow the same route as the Blender video above: block out the key poses, then work on timing, then start refining. This approach would enable me, for instance, to skip Pencil and do the timing stuff directly in Synfig, thus saving some time. So, now that drag/drop for keys is here, what about the second part? Is it already possible to mass change interpolation modes and maybe I just don’t know how? Or is that something that needs to be a feature request as well?



Hi muhkayoh,
I’m glad you like the drag/drop feature I added to the code.
May be you don’t noticed but ALT+ left-click produces a decrement/increment of the previous keyframe length. In other words, you can shift a bunch of keyframes with ALT-drag/drop. It is useful to insert/remove time in a certain frame. It is only valid from the second keyframe to the last one. ALT-drag over the first keyframe does the same then simply drag.

You can do a mass modification of the keyframe (well the waypoints at the keyframe) by editing the keyframe properties. There is a button in the keyframe list that do that.

That button will show you a dialogue to modify (when press apply or OK) all the existing waypoints in the keyframe and its in and out interpolations. Notice that it is not a property of the keyframe itself, and those values are not stored in any place. You can modify an individual waypoint in that keyframe (or even all them) and the keyframe properties dialog won’t reflect it. Remember that keyframe is canvas dependent, so yo need to work with different canvases to have different keyframes.

And yes, the blender approaching is possible with synfig:

  1. Create the keyframes at regular positions. Make them all its waypoints constant interpolation.
  2. Drag/drop the keyframes to match the correct timing.
  3. Change the keyframes interpolation to the correct one.
  4. Add more keyframes if needed between the main poses.
  5. Fine tunning the animation with intermediate waypoints.

Even more! if you have a particular frame, where there is not a keyframe but you have a lot of waypoints in several scatered layers and you need to do a mass interpolation change in those waypoints, you just need to:

  1. Encapsulate all the involved stuff in a paste canvas.
  2. The paste canvas will reflect all the children layers waypoints (accumulated). If there are different interpolations in the same frame but in different waypoints, the representative waypoint becomes greyed (undefined interpolation).
  3. Click the representative waypoint on the canvas parameter of the paste canvas layer and you can drag/ drop it or modify its interpolation. That would drag/ drop all the child layers waypoints at that keyframe and change its interpolation too.



Thanks for all of that info. It was very helpful. I did a first attempt at a very short scene using this approach and posted it in my book trailer WIP thread.