“...That was the original idea from day one - the elimination of the tweening process. But it is certainly not the only feature of Synfig that makes it unique. In addition to eliminating the tweening process, I also wanted Synfig to be used for pretty much every part of production except story-boarding and editing.”

Synfig Studio 0.64.0

Posted by Konstantin on May 11, 2013

After a whole one year of development we are happy to present you a major new release of Synfig Studio. This version includes a new optimized rendering engine - the most significant improvement made for whole history of Synfig (since the time it was released as open-source). There are also some other new features and improvements, as well as many bug fixes. See the detailed descriptions below.

For the full list of changes please refer to the NEWS files in the source code.

Cairo-optimized workarea rendering

The major highlight of this version is a new workarea rendering engine optimized with Cairo libraries. This implementation is part of ongoing work targeted at increasing workarea visualization speed and improving the user experience when using Synfig Studio.

Please note, that engine have an experimental status and still a work in progress. Some layers are not implemented yet and it is planned to complete that task for the next 0.64.1 version. Please refer to the 0.64.1 roadmap for the list of unsupported layers.

Also, in current implementation the speed is heavily depend on the set of the layer types used in composition. While giving a high benefit to the vector layers and some types of images, Cairo libraries are not suitable to provide optimization for raster filter layers (like Blur, Sphere Distortion and others). Since the emulation of such operations requires the additional overhead, those layers may render slower than the old software rendering engine. Those gaps are planned to be filled in the future versions by using external libraries, specially adapted for such operations (possibly GEGL).

Despite of the mentioned issues, the new rendering engine is already delivers a good perfomance impact for many usage cases, like cutout animation, for example:

You must install Adobe Flash to view this content.

Due to its experimental status, the Cairo rendering engine is not enabled by default. Users can turn it on by selecting "File -> Setup" from the main Synfig menu and enabling "Use Cairo render on Navigator" and "Use Cairo render on WorkArea" checkboxes on the "Render" tab.

There are also some collateral consequences of the Cairo integration to mention:

Cairo render engine development helped to reveal many bugs not noticed before in the software render engine. They are fixed in Cairo implementation.

Text Layer effectively uses styles form the parameters and its render is more robust thanks to the use of Pango within Cairo. UTF-8 characters are also displayed correctly with Cairo renderer now.

Imported png images are rendered faster now.

Library Panel icon

Library Panel icon

Terminology rework

For a long time the Synfig Studio was famous as an application with a weird and exotic terminology. Words like "Duck" or "BLine" are used to distract all the newcoming users, raising the barrier for learning new software.

Finally, after some discussion it was decided to standartize terminology in the following way:

Ducks -> Handle

Curves Panel -> Graphs Panel

Encapsulate -> Group (icon reworked)

Paste Canvas / Inline Canvas layer -> Group Layer (icon reworked)

Group -> Set (icon reworked)

Add/remove from Group -> Add/remove from Set (icon reworked)

BLine -> Spline

BLine Point -> Spline Point

BLine Tool -> Spline Tool

Params Panel -> Parameters Panel

Children Panel -> Library Panel

CPoint -> Color Stop

This is a small change to the code, but with huge influence to documentation. Consequence of this renaming is a total wiki revolution. The English pages are updated, but the translations to other languages are still have to be reviewed. We're asking community members to take a look at the English version of each page and complete the renaming of your favourite language.

Plugins menu

Plugins menu

Simple Skeleton

Simple Skeleton

Simple Plug-Ins engine

Some of our advanced users are used to write scripts to automate some complex or tedious operations on Synfig's (*.sif) files. Those scripts are usually written in python. But execution of such automatiztion tasks requires the use of terminal and for most users this is not comfortable. The new Plug-Ins menu provides a quick way to run external python scripts for currently opened file. Now users can install scripts as easy as they copy files and transparently run them in the same way as they use standard Synfig Studio commands. Runing script from menu is much faster than using the terminal and it greatly improves the workflow for advanced users as well.

With this version of Synfig Studio we deliver two sample plugins and one of them deserves a special mention - it is the skeleton template, which is a bones-like system for animating human-like characters. This script is an evolution of "Stickman Template", developed by Morevna Project. With the current system it is possible to easily add one or many skeletons to any document now.

Our beta-testers already started to play with the Plug-Ins feature weeks ago and requested for a place to share their scripts, so we have opened a new forum section for that. Check it out!

Improvements for keyframes

Keyframes are used to "lock" image composition for specific moment of time and sometimes when editing a complex animation with a lot of keyframes some of them could stand on your way. Although the "Lock keyframes" button allows to deactivate past or further keyframes (relatively to time cursor), in a lot of cases a more flexible approach is desired. Deleting keyframes is not solves the problem, since that implies removing all associated waypoints and thus the image configuration for this point of time is lost.

In this version there is a new option to disable keyframes. Disabled keyframes doesn't have any influence to the composition, acting merely like a time marker. This also provides a way to delete keyframes when it's required to preserve existing waypoints.