Difference between revisions of "Dev:Wish list"

From Synfig Studio :: Documentation
Jump to: navigation, search
(Auto-Split Tangents: Suggestion)
(Cairo rendering wish)
Line 527: Line 527:
: Maybe it's better will be to change behavior of BlineTool? Single click adds vertex with tangents split (and zero length) and click-and-drag adds vertex with merged tangents. That's a common way of construct splines in other vector applications. --[[User:Zelgadis|Zelgadis]] 04:13, 4 March 2011 (UTC)
: Maybe it's better will be to change behavior of BlineTool? Single click adds vertex with tangents split (and zero length) and click-and-drag adds vertex with merged tangents. That's a common way of construct splines in other vector applications. --[[User:Zelgadis|Zelgadis]] 04:13, 4 March 2011 (UTC)
== Cairo rendering ==
[3] Using Cairo as render for synfig instead of the software actual render would enourmously boost its performance, as it did in Inkscape (in that case 2x).
: See the process [[Dev:Cairo_render_migration]] [[User:Eldruin|Eldruin]] 14:13, 7 February 2012 (UTC)

Revision as of 16:13, 7 February 2012


Warning: We need more people working on the code if we are going to be able to achieve all the feature requests.

Got a great idea for a new feature? Just add it here, or on the feature requests tracker. Before you do, please check the etl, synfig and synfigstudio TODO files for similar ideas. Please add a rating of how essential this feature is to your workflow according to the following scale:

  1. "Well, it might be nifty. To someone."
  2. "I probably would make use this"
  3. "It's not essential, but I'd really like to have this at my disposal."
  4. "Synfig would be soooo much better with this change"
  5. "I can't/won't use Synfig without it!"



Please clean this section up as desired.

  • A different color dialog for picking/changing colors easier.
    • Swatch menu from gimp with .gpl files.
  • Workflow improvements, like content help and ui-refinement.
    • set the fine line between design and animation work.
    • Greet the user at startup, give hints and help in the ui to better the usability and user-experience.
  • test synfig cross-platform (Linux, Windows, Mac)
  • Pluggable App (run from memory stick)
  • make a short film about synfigs capabilitys in a starwars kind of spaceship setting as promo video about 3 minutes long.
  • Sound layer
  • full tablet support
  • small set of vector contend for fast animation results
  • Help is available as pdf-file and distributed with the program


  • Import vectorgraphics (svg,fig)


  • Render output to animated PNG
  • Export vectorgraphics (svg,fig)

Interchangeable/customizing Splash screen

[3] GIMP has this feature of letting users GIMP's splash screen. GIMP looks for samples directory under .gimp-2.x then randomly picks a picture from it to become the spash image.

This will also help GNU/Linux distro, like Ubuntu, to adopt Synfig and put their logo on the splash screen.

Also, official Synfig distribution can pack sample arts created by other artists to be randomly displayed -- like the synfig.org's title's background image.

Verbosity levels for error output

Synfigstudio needs verbosity levels for the error output. Levels are info, warning and error. Make sure, to spew out only errors when something nasty happens. If someone wants to know all what happens in synfigstudio, the user should activate a higher level of verbosity with the command line switch --verbose=all,info,warning

Usage screen for new users

Synfig and Synfigstudio need a usage screen, which helps a new user to type in the right syntax on the command line. Any switch not known to the program should point to the usage screen. On the bottom of the usage screen could be a hint: " For more help use synfig --help"

Keyboard shortcuts for panning

The navigation and canvas windows need shortcut keys that pan the canvas view horizontally and vertically. Probably just the arrow keys would work for this, as well as the home/end/pageup/pagedown keys. Ctrl and shift variants could make the panning more or less.

You can pan with a middle mouse button. --Zelgadis 00:59, 24 October 2008 (EDT)

Linking Zoom layer to Paste Canvas

[3] It is impossible to link Center of Zoom layer to Origin of Paste Canvas without exporting a value. It often needed for pans & zooms. Suggestion: rename "Center" parameter of Zoom Layer to the "Origin". Will improve the workflow. --Zelgadis

Convert Strings

[4] It could be very good to have feature to represent Convert sequences as strings and vice versa - make convert sequences from strings. Example: To produce this convert sequence:


I just right-click on "Origin" parameter and choosing "String Convert" menu item. In the appeared dialog I just entering: "=Composite(Scale(x, Switch(scalar, 1.0, 0)), y)".

Also if I clicking on the parameter already containing convert sequence and choosing "String Convert", it shows string representation of current convert sequence with an ability to edit.

This feature will make possible to easy copy convert sequences from one parameter to another. --Zelgadis 03:46, 2 November 2008 (EST)

Non scalable timeline

[3] It should be useful for me to have non scalable timeline. It's hard to set timing when the distance between frames is always different in different documents and in different situations. Suggestion: make a non-scalable mode for timeline, where 1 second interval is always the same. Will improve the workflow. --Zelgadis

Smart linking of tangents

[4] As described in Sewing BLines, when linking red tangent to yellow they are placed opposite against each other. This is normal from the program's point of view, but not normal for new users. Even more, to avoid this effect user needs to made some complex steps (see Sewing BLines). It takes a lot of time if we vahe lot of verticles to sew their tangents.


  • When linking tangents with the same color, program should act as usual.
  • When linking tangents with different color program should automaticaly add Convert->Scale (-1) to avoid their opposite placement.

To allow linking two tangents in opposite position, I suggest to add a new menu option for tangents "Link Opposite". When linking two tangents with this option:

  • When linking tangents with the different color, program should act as it acts now - no additional converts added.
  • When linking tangents with the same color program should automaticaly add Convert->Scale (-1) to plcae them opposite against each other.


Morph sets

This feature is similar to some other suggestions below, just with another way to approach. In animations are many movements, which can be put in some kind of library, to make use of at a later time. For example, movements to animate the key moments of a mouth, sampling syllables. For vector graphics, it should be possible to define some key points, which move just a small amount of space, to form another syllable. These syllables in this example, should be stored in a drop down list, to be able to select them for the key time on the timeline. A morph-set for walking-left-to-right is different from a morph-set for a mounth, which has as options a,e,i,o,u,bah-disgust,happy-smile. The morph-set has to be stored as vector coordinates in a relative way(offset), e.g. X1=+212,+34;X2=-56,-23;X3=+3,-88;

To make use of the morph-set for the mouth, you have to define first, which vector points in your drawn mouth, correspond to the key-points of your morph-set. X1, X2, X3, Xn

--SvH 06:53, 27 May 2008 (EDT)

Render time approximation

Synfigstudio should get a button in the render dialog, which calculates the total render time for the actual settings (frames per second, length of the film, resolution, output format) It should testrender 1 picture, when the amount of total frames is below 1000. Over 1000 frames, it should testrender 10 pictures for more precise calculation.

--SvH 12:49, 22 May 2008 (EDT)


I have made 25,000 small png-pictures with my 800Mhz computer in about 45 minutes. Synfigstudio did calculate each single frame of it. Nothing changed in this picture, so it does only need to get written to disk for the amount of pictures, until the next change (animation) has an effect on the output picture. This should save time for bigger projects with thousands of pictures. With smartrendering it is also possible to predict the total amound of space in Megabytes (Mibibytes) of the final render of the movie. It should calculate how much it needs and see, if enough space is free on the harddisk before the rendering get started.

--SvH 12:49, 22 May 2008 (EDT)

More specifically, only render frames that need to be changed since the last rendering as defined by something like a last edit (or write to filesystem) timestamp and a dependency tree. ...In the short-term, a tool like gmake might be useful for implementing this accross sessions if we add "last changed" timestamps to one or more sections of sifz files (rather than the almost useless case of a single sifz file timestamp if virtually all information for a project is kept within a single sifz file). We would use the last edit times in the filesystem if synfig recognizes the potentially generated files have names that already exist on disk. [There could be some tricky issues.] ...Within a given SynfigStudio (synfig?) session, we can use the timestamps from disk or just internalize that information without redoing the lookup. In addition, synfig internal dependencies based on what objects were changed since the last rendering can be used to implement a makefile whose make output would include a list of which frames need recalculation. Of course, the job of gmake could be internalized as well. Jose X 21:18, 20 May 2010 (UTC)

get_color method in text and radial blur

[5] Without get_color method distorion produces artifacts bug 1831355. So I would like to get this problem fixed before doing something else. --AkhIL 22:41, 1 May 2008 (EDT)

Full functional of group dialog

[5] Group dialog is broken now bug 1796833. So we should get old features work right before making new one. --AkhIL 22:41, 1 May 2008 (EDT)

import/export .swf files

very important productivity feature

import/export .svg frames sequence, and/or .svg animations

very important productivity feature

a realtime .sif synchronized text window

just like the xml editor of Inkscape, or the html editor in Dreamweaver (this is hugelly useful for productivity)

I thinks scripting API can be implement in this way. For example you make XML DOM like implementation for python which alows to change DOM tree from python code and see chenges in canvas. By this way you can implement import/export scripts. Automation scripts. And a lot of different things. Even synchronization of animation between blender and synfig. --AkhIL 23:10, 26 April 2008 (EDT)

choosing colour from gimp/inkscape palettes

very useful when you need some colour comformity of what you're doing

Good high-level documentation of the source code

(2) It'd be nice if a newbie could quickly navigate around the source code. The best thing to do would be to add top-level comments in each file, explaining what that file does, a README.TXT in each directory, explaining what's in that directory. This would be pretty fast and easy to do, and make it much easier for new programmers to join.

Time permitting, it would also be good to document on a high level what the data structures are, but that's harder, since those tend to evolve, and it is often difficult to keep in sync. It would also be useful to document what individual functions do (just a one-liner high-level description), but that also takes more time.

There is a page link in the wiki that connect to the Synfig API Documentation. I think this link should be highlighted to be more accessible for newbies contributors and mature developers (the link was found here). --Genete 10:02, 11 December 2007 (EST)

Mathematical functions to animate

(2/4) If you want to make a waving flag, it would be handful a sine function, tuned with random correctors, for example.

-This should generate waypoints each 1, 2, 4 frames or any other step at artist's wish.
-When applying a function you can add it to current values, add it to 1st frame values or simply override old values. Perhaps other options (such multiplication) would be fine, too. Something like texture editor in Art of Illusion, perhaps.

Perhaps it would be useful reusing the Octave source code to parse mathematical expressions. I have rated this wish with a '2' because undoubtly many users will not be familiar to mathematical concepts, but for those who will be, I'd rate it with a 4. It would be possible to make a ball describing a parabolic moving in no time. ajotatxe 20 November 2007

dooglus can probably chime in better than I here (see his example of balls on mathematical paths at http://uk.youtube.com/watch?v=YTpSfUthuVE ), but I believe that this is already possible. Synfig does support a variety of mathematical transforms for parameters, although the way you do this is by no means intuitive. (You might also want to check out the preambletaffy.sifz example for an easier approach to a waving flag. I know you were just using that as an example, but for the record...) Pxegeek 00:58, 21 November 2007 (EST)
I'd also rate it with a (4) (and updated the rating accordingly), not for this special case, but to make many workarounds much easier. Simulating [Parabolic Shot|free fall], for example, would be a lot easier with real formulas. I don't know, though how easy it will be to implement, maybe waiting for a scripting interface to be implemented is better than hacking this feature in an ad-hoc manner. --Rubikcube 16:38, 29 February 2008 (EST)
One thing to keep in mind is that 2D animations will not frequently look realistic if you implement the exact mathematics without some sort of 3d perspective transformation. And then there is the complex physics also involved in defining precise trajectories. ..This aside, what is needed is simply a function value generator as a function of n variables where at least one variable can be the frame you are on (I don't have much experience with synfig, but I presume there is a way to explicitly get the value of the frame/time you are on) and where this output value can be linked to any other parameter (of a compatible type); you can hook these function block outputs to inputs of other instances of the generator; and the outputs are defined once on every frame. To do a movement like a parabola you configure the generator to output parabola values (one per frame or even allow skipping frames) and then link these values to the vertices of a translation layer. [In other words, the stuff underneath within scope would likely move relative to other stuff underneath but at an outer scope.] We note that linking this way will create many potentials for conflict between these values and existing waypoint values. We can specify which takes precedence and how to smooth between these. Eg, if waypoints take precedence in some particular case, we can specify how to smooth against the function generator values before and after the waypoint. How do we define the functions? The functions can come from a preselect set of parameterized functions (user enters fills in the parameters with constant values or else links). Two examples of functions with three param values would be: Asin(x)+B and mx+b. Also, very usefully, allow a sequence of values to be copy/pasted to define the function outputs at each step (so the mapping defining the function is a stream interpreted as the output value at each discrete frame value). The generator can be time shifted of course. This function definition approach allows other applications (or things like motion sensors) to generate the function values. Another method that can be useful for defining a function would be to accept a curve (eg, bline) and the function output values would come from the curve based on some method specified (eg, as a function of the length from some starting point along the curve and where the speed of travel is defined by a function L(t) where L is length from start so far and t is time/frame count (eg, L(t)=t means we move at constant speed along the curve, that is, at a value of 5 frames we would be 5 units along the length of the curve)). ..Anyway, the point is to have a function generator to hook up arbitrarily with inputs and which can co-exist with waypoints that would otherwise conflict. This would allow arbitrary automation of anything (based on precomputed or dynamic algorithmic values) without having to manually define/record a single waypoint. Conceptually, this doesn't seem that complex to integrate into the existing synfig and would be very useful (to allow arbitrary automation). An initial prototype version might integrate with only a few things, only have a limited set of simple predefined functions (plus sequence definition capabilities), have the output value be tossed out whenever a waypoint already existed, and exist only from a single menu entry. I really would like this feature. It would make it easier to speed up animation generation in many new custom ways without having to hack into synfig or into the sif file with some other tool. If I get comfortable with the code base, I might be able to chip in. [Any pointers would be appreciated.] Jose X 07:03, 20 May 2010 (UTC)

Warning about editing bizarre things in animate editing mode

(3.5) It seems to have little sense animate certain things like Blend Method or Type of Feather. It would be very nice that the program asked comfirmation if you change these attributes in animate editing mode. If you do want to, you would have three options: "Yes, never ask", "Yes, never ask for this attribute", "No". I guess that internally, this attributes has integer type (or something like that) and the attributes that you normally want to animate, float type, so I think that this feature is relatively easy to implement. My English is not very good, so please feel free to fix this post. ajotatxe 20 November 2007

Bones with FK & IK + grouping of objects into folders

(5) Bones cane move specific vector assigned to them or the bones can have envelopes that move the vectors within their field of influence, much Like Anime Studio/Moho does. It's quite a time saving process of animating. Objects created can be saved into separate groups or folders using the same system as Anime Studio/Moho -Shadowphoenix 27/8/2007

Animated sketch

(5) it would be great, if the tool Sketch was animatable (for example, in a form of a special sketch-layer). --Zelgadis 2007-06-14

For now as a workaround we could use animation program called Pencil. See Related Projects page. --Zelgadis
So, currently it could be achieved by using other software, but integration with synfig is poor, cause it requires importing a movie through a sequence of images. This is not intuitive and not obvious for new users. It will be good if synfig will have it implemented like [url=http://www.blender.org/development/release-logs/blender-248/grease-pencil/]blender's Grease Pencil[/url]. This feature will improve workflow, make synfig usable for frame-by frame animation (it is intuitive way of learning animation and powerful tool for producing preproduction work like animatic). --Zelgadis
It would be nice to also implement the onion peel feature, where you can see the frame before or after, and/or selectable keyframes if this is included. An example can be seen in the program Pencil--richardwad1

Duck for Amount value in Zoom layer

(2) It would be nice if Amount value in Zoom layer was controlled by additional duck. --Zelgadis 02:49, 29 December 2007 (EST)

I found that I can better use Warp layer instead of Zoom to change size. But it'd be nice to have Amount duck for Zoom layer anyway...
The Amount parameter works exponentially; each time you add 1 to the Amount, the image is zoomed by a further factor of e (= 2.71828 or so). Would a duck be any use if it just controlled the value of Amount in a linear way?
Workarounds include: export Amount, select it in the children dialog. Whatever's selected in the children dialog shows a duck. You can adjust it using that duck.
Also, if you use a Stretch layer, convert the Amount to Composite, export the X-Axis and connect it to the Y-Axis, then you have a duck-controllable fixed-aspect zoom. -- dooglus 15:32, 15 January 2008 (EST)
Yeah I found this workaround, but it's to much actions - i prefer better use Warp or Stretch layers. Why not the link Amount duck and Amount value with logarithmic function? ;) --Zelgadis 10:33, 17 January 2008 (EST)
Logarithm convert type for real parameters exists since svn 2034. Genete 10:17, 30 August 2008 (EDT)

Automatic colour palette optimisation

(0) it would be nice to use libcontrast [1] [2] [3] [4] to automatically adjust selected or all the palette items for best visual contrast. It would also be interesting to have a layer that uses this code to filter the image.

Arbitrary Color Channels

— The ability for the user to create any number of custom channels for various purposes.

Autorecover History

— It would be great if autorecover could also recover the associated history of a file in the event of a crash.

Layer Convert

(4) (2) — The original intent of this feature request has been solved and documented - How do I....Fill an Outline? - but it would still be nice to have a way to convert one sort of path layer to another. (Downgraded to level 2) Snap 12:32, 17 Jan 2006 (PST)

Vector fill bucket

(3) — Like the traditional bitmap fill, but this fills the area clicked out to the nearest boundary paths with a region of that area, set to the foreground color (it actually would create a new region layer).

Alternatively, a single-duck layer object, that performs a simple bitmap fill from its (animatable) location, with its stored color value. (This second approach is similar to the behavior of one of Softimage's TOONZ[5]'s tools)

If this is implemented, it will probably be necessary to change the existing "fill" tool's name and icon to a "color injector" (hypodermic needle / turkey injector icon) tool, as that's closer to describing what it does.

  • Inkscape has a very innvative version of this tool. Maybe you can just grab the code from there and integrate it in synfig? --SvH 01:37, 14 May 2008 (EDT)

Dev:Redraw tool

(4-5) — Intutive reshaping of path-based layers. See link.

Gnome HIG Compliance

— This should solve all complaints about the layout, without requiring Synfig to be "just like program (x)". See Dev:UI Reloaded for progress on this.

Feedback for Smooth Move Tool

(3) — This tool does what a lot of folks are looking for, warping selected ducks in a "soft" fashion. But it's not very obvious what sort of effect it will have, from the tool's interface. It needs some sort of momentary center-of-action and radius indicator at the very least. Perhaps an "influence gradient" overlaid on the canvas once Synfig's core is sped up?


(2) — Like Inkscape's "inkboard" feature (using Jabber), or Blender's Verse server [6], or OpenCanvas's Networking option. This should probably farm off all the networking stuff to the telepathy framework so that synfig doesn't have to deal with all the account/etc issues.

Intuitive tangent modification

(3) — (BBQ Pulled Duck) Inkscape has this for still handles - basically, grab a section of the spline between handles, and pull it around, the program automatically alters the tangent handles to match. What would be really neat is if you could do the same for temporal handles - be able to grab the spline between keyframes, and yank it around, and have Synfig automatically adjust the key interpolation to match. Not sure exactly what the workflow in the UI would be for this, however.

-Agreed; blender does this with its IPO curves, and it's a really efficient way to work.

Plugin API

(1) — Would be nice to enable additional functionality to be added to the program without it necessarily needing to be in the Synfig source tree. According to the Synfig 0.61.01 roadmap on deepdarc.com, there is a plugin API already implemented. So instead, this may be a Wiki Wish for documentation, depending on how much has already been completed. Snap 19:57, 13 Jan 2006 (PST)

Python support

(1) of some sort will no doubt be demanded by the userbase eventually, for studio-specific automation of tasks, noncompiled plugins, etc. I (SnapSilverlight) don't have any particular use for it at the moment, tho'.

I suppose to join this request with Wish list. We can implement python access to XML DOM and write XML Editor in python. --AkhIL 06:54, 30 April 2008 (EDT)


(1) — For Apache. Render .sif to some format like png/mng on access.

synfig nsplugin

(1) — Let Mozilla and Mozilla-based view synfig files in-browser.

Align function

(3) — Align objects at a common border (as in Inkscape)

Improved SVG import

SVG import support is currently limited to paths - it does not support text or effects. nikitakit 01:27, 14 June 2010 (UTC)

Useful would be the possibility of importing SVG sequences, just like Macromedia/Adobe Flash does with .ai sequences

Gradient Paint Tool

How about a tool that can 'paint' a gradient object. For example the options would be width and gradient type, one would make a stroke with the tool and the gradient would be automatically applied inside of the outline (set by width). This would save the trouble of having to the all the encapsulation stuff. (Actually any tool that makes creating gradient one step would be good).--Triclops 09:52, 9 Aug 2006 (PDT)

(4) Agree. 4 for usability/readability of layers reasons --Ohoservices 11:33, 27 April 2010 (UTC)

Bone Animation Tools

Bone system with inverse kinematics, very important for quick animation. You put bones on a drawed man and you can animate him like a puppet. I'm using that in Moho (lost marble product).--ziolive 23 Aug 2006

  • I would find this very useful too. I think it is called rigging(4/5) --SvH 01:33, 14 May 2008 (EDT)
  • I think this effect can be simulated by adding the correct rotation layers + encapsulation to every object that is to be restrained by joints and then linking vertices. A rotation layer center would be at the corresponding joint. We would then link the vertices of the "limbs" that shared a joint. See Cut-out Animation ...Perhaps this process could be made more direct through an interface that behinds the scenes creates the proper layers and reorganization all at once as the user decides to link objects to joints. ...Implementing this will involve seeing if already restrained motions allow creating joints. Also, adding a joint may clash with already existing waypoints, so waypoint conflict resolution options and rules will have to be developed. [See also an above remark in the section "Mathematical functions to animate" about linked function generator values conflicting with waypoints.] Jose X 20:17, 20 May 2010 (UTC)

AVI Backgrounds

Is there any way I can add an avi as a background so I could add facial expressions to a stop-motion animated figure. [zotz here, I was thinking DV background or extra timeline. I would like to mix animations with live footage. rating (3/4)]

Already implemented for ffmpeg pipeline of ppm in svn r2161 Genete 05:36, 9 November 2008 (EST)

Character tool on Tool Options Dialog

I want to use the as a character generator for a TV show. By using chroma key hide the background. Even better interface to a video overlay card with Alpha blending.

Collect for Publication

(3/4) - (zotz) Menu item, functionality that would collect alll files referenced in a sif and place them all in a tgz for sending elsewhere or publishing animations in source form.

Object Library

(3/4) - (zotz) Haven't thought this all through yet, but synfig could come with a library of categotrised "objects" with a copyleft license (GPL? CC BY-SA?) An animation clip art type deal.

I'd suggest this should be public domain and distributed by openclipart.org -- --pabs

Flash Export

(3/4) Well, might just be me but if there was a posiblity to export in .swf or .fla, I think the project might become a lot more popular.Conceit

(4/5) I wholeheartedly agree. I would definitely use synfig more if this feature were added and it would most definitely increase popularity. cdj05a

(4[me]/5[others]) Definitely would love flash export. There is no well maintained Flash animation studio that is Open Source. To have Synfig become that along with all that it already is would be absolutely wonderful. You'd also possibly add to your user base all the flash animators out there that don't want to pay Adobe. Some people would only want it for the flash animation hence the 5 for others. jblandrum

This can be simply done from a python plugin could use SwfTools for converting temporary exported data into .swf file - not very hard thing to do - the information used from SwfTools is very simple to be created, such as simple .swf files are.

Single window

Depending on individual desktop setups, single window is sometimes preferable to many windows. Can we have a single-window option?

Also, even with many windows, Windows-users especially might find it better if all the windows only appeared as a single one on the taskbar.

Export Wizard

(2/4) Conversion and export to other file formats (mpg, avi, flash formats, others, and the synfig format) with a step by step wizard for choosing format and place of saving. Similar to Gimp's saving of .png files but for movie/video type files. -- hiddenghost

Using Synfig as a portable app

(3) This isn't really a feature request (though it could be) but I was wondering if synfig could be used as a portable application (as in www.portableapps.com). Does the windows install require registry access? i really want to use Synfig at work, but I'm reluctant to install it just in case it leave footprints in the regisitry or something, and it would be sweet to use it on my travels as well. Only thing is, I can't test it out at home because I am using Linux. See also: http://portableapps.com/node/5761 zenoscope

This isn't currently possible without modifying the source code. That has been on my TODO list for ages pabs 01:17, 26 October 2007 (EDT)

Allow organize child valuenodes in an hierarchy

(3-2) And allow maintain the organization once the file is saved. At the moment they are reordered in alphabetical order which is useless and annoying.

Triangle sliders to be always visible

(3) I would like that the triangle sliders from Colors Dialog and Gradient Editor Dialog were visible whatever color or channel you're editing. Some times when the color or channel is to bright or light the slider is difficult to distinguish. --Genete 14:30, 29 October 2007 (EDT)

This is important for usability, should be solved soon. --Ohoservices 10:49, 27 April 2010 (UTC)

XICC support

It would be cool if synfigstudio had support for XICC.

Area to Edit

An option like blender - select area to update would be nice, so the only part of the image that updates when you add or change something is in the selected area

ie. when working on a complex composition, studio doesn't know, when I tweak a tiny part of the composition, that only that part needs redrawing, so it redraws the whole thing. It would be good if there was some way of telling it which part to focus on. -- dooglus 04:02, 3 February 2008 (EST)


01:23  * AkhIL wish to have histograms and luma/color scope like [7] in synfig

I've looked at those pictures but don't know what they're showing. Can you describe what those scopes are doing, and what the histograms display? ie. what are the X and Y axes of the histograms? -- dooglus 04:07, 3 February 2008 (EST)

First look this description in blender wiki [8]

Ok There is four things.

  • Upper left is Lumascope (Luma Waveform in blender). X-Axis represents image's X-Axys. Y-Axis is average luminescence of column of pixels.
  • Upper right is Chromascope (Chroma Vectorscope in blender). Just look description on blender wiki.
  • Lower left is like Lumascope but for each channel
  • Lower right is histograms. X is luminescence and Y is count of pixels with such luminiscence.

Sound Layer

(4) It would be a very good improvement if the sound system were implemented into synfig in this way. --Genete 07:46, 8 February 2008 (EST)

Rearrange the view of waypoints for Canvas param

As reported in Bug #1888858 waypoints are not displayed for canvas switch events. I suggest to rearrange waypoints display according to this scheme.

Width weigths

Is it possible to add "weigths" for widths? ^_^ I.e. width changes not all the way along the segment. Maybe something like a duck on bline which indicates the region where the width of current vertex isn't changed. Illustration here.

More ideas around this concept in this conversation. Although the log of that day is very interesting the lines related to this idea are from 22:38 to 23:43. Genete 17:51, 16 April 2008 (EDT)

Improved Colour Dialog

How easy is it to stick in a colour square/wheel? Messing with sliders is somewhat obstructive.

Insert Waypoints

A button to create a waypoint for every selected duck, in its current position. Moving each duck up a bit and down again quickly gets tedious.

If the duck in question has already a waypoint then you don't need to move it to create a new waypoint. Just select the corresponding parameter in your child list panel and select 'Add Waypoint' from the right click context menu over the parameter. No need to have the duck selected. If you want to freeze the entire bline just do that over the Bline Point List. Genete 07:48, 29 April 2008 (EDT)
Yes, but it would be nice to have opportunity to add waypoint to parameer which not have any ducks yet (i.e. non-animated parameter). --Zelgadis 08:33, 29 April 2008 (EDT)

Automatically split tangeants

Holding shift while moving tangeant ducks should automatically split them. They can be rejoined if necessary through the context menu as they are now.

A way to link params without exporting

I need a way to link params with different names without exporting. It is possible to achive by manualy editing of sif file. But inposible by gui. I will be nice to have linking by drag-n-drop. Or just by selecting reference param, pushing copy button, selecting another param and bushing link button. ---AkhIL 21:47, 30 May 2008 (EDT)

Allow select the origin of rotation when using the Rotate Tool

It can be initially set to the geometrical center of the selected ducks or the gravity center depending of the selected checkboxes in the tool options panel. Later the user could move it before perform the rotation operation. It is a waste of time to rotate and translate the ducks every time a rotation manipulation is done. ---Genete 12:16, 4 June 2008 (EDT)

I was adding this request at the same time than you Genete :-). Here is an example of how this issue is solved in Inkscape:

Non-symetrical but "smooth" tangents on ducks

Add another mode for duck tangent, where the tangent can have different radius, but keep the same angle. (a "split tangents (radius only)" mode).

Dockable windows

The current GUI is a pain in the rear by not complete covering the desktop and it's showing 5 tabs instead of usual one tab so it's frustrating to switch windows if you running more than one software. (windows version)

--super animator

A Particle Tool/Particle Object Editor

I thought it might be interesting to add a Particle tool that is intuitive. Genete's script is amazing and I am sure I will do a lot of things with it once I have a chance to sit down and figure it out, but if there were a way to make it into tool with all the settings on sliders, it would be much easier. His script adds endless possibilities of nice effects to make animations look better. I personally rate this rather high. 3.5/5


A programation language as code behind like python, ruby or any

Code behind should be important to program the animation or events associated, programers and designers could work in a colaborative workspace and make applications with richfull content on desktop applicactions or web applications like expression blend or macromedia flash CS.


Embedding animation on web applications

Like Macromedia Flash, it seems to require a plug in for internet explorer or firefox diferent as silverlight or flash, open source and "software libre" projects are working on animation but using the flash plug in, this wish needs a free plug in.


This seems a bit confusing; why do you want a plug in for synfig? When we add the import and export swf. file feature, it will use the flash plug in. Besides the flash player program is free, so you don't have to pay anything. I find that this feature is useless until you explain to us better why you think this software needs a plug-in.

Create a thread in the synfig forum if you want to continue to talk about this. We're listening.

--super animator
Support for svg export would solve the problem (I think), to the extent svg plugins work well (and svg is a more open format than is swf). Would sifz -> svg -> sifz possibly result in data loss/ambiguity (eg, with names)? I don't think sifz has interactivity, right (eg, mouse events that control the visual)? Jose X 04:20, 20 May 2010 (UTC)

Split Tangent indicator

Its hard to tell if a tangent is split or not without clicking on it (either to use the context menu, or move a duck). All of the ducks should change to another shape (eg a square) for a quick visual indication of a ducks state.


Guide lines

Guide lines that can be dragged from the side (like in the Gimp) would be very useful.


Progress indicators

Eg % complete in opening file, pop-up window which indicates how many frames are rendered of a render, eg "rendering 10 of 999" that can be closed/ignored if needed.


Improve the Timeline

I know, this is one hell of a wish, but, as in all, i think that is best if you think in the ideals conditions and then you downgrade into what is possible to achieve in a reasonable period of time.

D greetings!!

[4] Normal mode // [4] Layer mode // [4] Secuence mode

.I think that this modes are three diferent windows layout, therefore the hability to create new and save different windows layout, should be the first to do in order to achieve this three modes.

Timeline-normal-mode-explained.jpg Timeline-layer-mode-explained.jpg Timeline-secuence-mode-explained.jpg

(click to enlarge)

02/01/2009 Belifilmaker

Lockable Layers

I would use them all of the time. Zenoscope

Vector Objects

Represent objects (ie. circles, rectangles, regions, outlines, etc) as a new type of element. These objects exist as childs of some layer. The layer then takes care of rendering these objects to a raster. Currently layers do both things, represent objects and render them.

Having objects as a seperate entity would allow defining operations between them. For example:

  • Take two region objects and find the union of their regions. This would produce a vector representation of the resulting region (ie. Bline) which in turn can be used for other operations (ie. link vertex to Bline).
  • Apply transformation to a vector object producing a vector object as a result which can be further processed.
  • Trace a smooth silhoutte around a set of vector objects.
  • Slice an animated vector object into pieces and be able to move the pieces around (while preserving the original animation). Would be useful for reflection on a broken glass effect.

Free drawing

I wish the synfig have ability to do paintings like with brush and eraser. Imagine: you painting over Paste canvas, and synfig automatically creates shapes inside this Paste canvas layer, doing necessary boolean operations and linking between them. So they don't overlap. This would allow flash-like workflow, which is very suitable for newbies. Discussion. --Zelgadis 15:27, 9 April 2009 (EDT)

Even a simpler manifestation of this wish, an eraser feature for the sketch tool, would come in very handy. Jose X 19:53, 20 May 2010 (UTC)

Projection Layer

The projection layer (a new type of transformation layer) would have two angle parameters that define how the lower layers get transformed: as if projected from a canvas angled in 3D space unto a 2D final image. By combining different encapsulations that use the projection layer, we can facilitate some 3D animation realism from simple 2D manipulations. Jose X 22:14, 20 May 2010 (UTC)

New Gradient Tool icon

[3] The Rectangle Tool and Gradient Tool have almost identical icons. One of them should be changed. Arbitrary suggestion: Make the Rectangle's icon a rectangle instead of a square, with a solid fill, and make the Gradient's icon a coloured gradient instead of grey.


[4] I use Synfig for animations that go in instructional videos. I currently use the Polygon tool for making arrows, but it would be a lot faster if Bline layers had a property for putting shapes like arrowheads at the ends of the path.Envergure 18:17, 21 May 2010 (UTC)

In addition:
  • The ability to stroke bline paths so as to have the outline be made up of a series one or more arbitrary shapes (ie, besides lines) would also be useful since this would facilitate the animation of discrete objects that relate to each other in space and across frames.
  • Having a shapes repository would be very useful [and with an improved synfig import mechanism that allows exported variables from imported canvases to be seen and be accessible automatically under the imported canvas' namespace -- this would facilitate the use of these .sif libraries/plugins]. And a community of people can collaborate on writing programs to help find shapes that meet certain specs: for example, just like we can write a program to find the optimal way to set up N blines to minimize squared error(?) estimation of a circle, we can write other programs to find how N blines might represent hemi-sphere and many other shapes as faithfully as possible. [Contrast with having users create standard shapes out of blines but using subjective criteria.]
  • A special raster and vector library and set of tutorials can be created to help with the creation of tutorials for synfig documentation. Eg, include png files for "every" view of synfig (eg, every menu entry, panel view, button, etc); have arrows, boxes, bubbles, and other synfig "widgets" that are likely to be used in videos; and include good tutorials and set of instructions for using this art/animation library to build videos or simulated screenshots, etc.
Side effects of this doc project would include helping more people get involved with synfig, motivating more people be able to build such documentation/instructions for projects beyond synfig (though perhaps using synfig to create the scenes), and helping to create a standard set of pictures and best practices for synfig so that the synfig docs will tend towards uniformity (to the degree this is desirable).

Rotoscope Layer

[3] I hereby request an option in the Draw Tool's Tool Option box which would be labeled "This Frame Only" and have the following characteristics: Three waypoints would be automatically created, one at the current frame, with an Amount value of One (1), and one each on the previous and next frames, with Amounts of Zero (0). The purpose of such an option is as follows: although Synfig is one of the only open-source applications capable of rotoscoping, or at least rotoscoping in an editable manner, it is actually pretty poor at it, for one very basic reason. Synfig is geared toward tweening of relatively simple vector shapes, and rotoscoping is frame-by-frame tracing of organic shapes. Currently in Synfig, to rotoscope (trace an object from live-action footage, such as a person) the user must either trace with the draw tool or and set the abovementioned waypoints manually (a pain), or try to use bline shapes, which is really worse, because real-life things aren't that smooth. I suspect that this would be such an easy fix that I might attempt to learn enough C++ to figure it out on my own; if not, someone else could probably do it in fifteen minutes. It certainly wouldn't be used by everyone, but it would be an incredible boon to those of us who do use Synfig for effects on live-action footage.

Are you talking about some kind of "frame-by-frame feature" which allows to switch layers on every frame? --Zelgadis 14:42, 14 February 2011 (UTC)
Yes - currently, frame-by-frame is possible, but requires manually setting three waypoints per layer. I'd just like an automation of that. --Nikolardo 9:55, 14 February 2011 (EST)

Difference Matte Blend Method

[2] Precisely: compare the red, blue, and green channel and, when the same (or within a specifiable amount), make them transparent.

Chroma Key Layer

[4] Make selected color in layer beneath transparent. I'm working on using different combinations of layers to accomplish this at the moment, but no joy yet. When I get it to work, I'll remove this.

There is a work-in-progress module for chromakey developed by AkhIL - mod_akhilfx-20080509.tar.bz2. Unfortunately it is still not included into official source code. --Zelgadis

Auto-Split Tangents

[3] Have an checkbox in the Bline Tool (and other tools) which would force all tangents in the created object to be split.

Maybe it's better will be to change behavior of BlineTool? Single click adds vertex with tangents split (and zero length) and click-and-drag adds vertex with merged tangents. That's a common way of construct splines in other vector applications. --Zelgadis 04:13, 4 March 2011 (UTC)

Cairo rendering

[3] Using Cairo as render for synfig instead of the software actual render would enourmously boost its performance, as it did in Inkscape (in that case 2x).

See the process Dev:Cairo_render_migration Eldruin 14:13, 7 February 2012 (UTC)