Dev:Wish list

From Synfig Studio :: Documentation
Revision as of 14:32, 3 February 2008 by Yoyobuae (Talk | contribs) (Tweening for images developed in other imaging programs: Added some info and links)

Jump to: navigation, search

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!"

Contents

Wishes

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) 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)

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

General outline / Polygon-based Outline / "Set Tangents to Zero" button

(3.5) I'm no artist, thus my primary form of art is stick figures, not to mention, many interesting animations are done in stick-figure style. Stick figures must be perfectly straight to get the effect across, so when I'm making an outline using B-Curves, it is too time consuming to set the tangents to 0 each time. Similarly, outlines of other shapes like squares, circles and so forth would be very useful. Whichever of the above is easiest, please implement right away. --Dragontamer 02:35, 19 November 2007 (EST)

For perfectly straight lines, click without moving the mouse. You will get a single point with no tangents. Outline shapes would require some development, particularly with some thought given to backward compatibility. A workaround you might consider is to create a duplicate shape with a different color and make the top one slightly smaller, so the outline of the one below shows. Pxegeek 21:58, 19 November 2007 (EST)
Well, in general, whenever I click on a point to edit it (say, to make it move somewhere in animation mode), there is a decent chance that I click on a tangent instead. Then, if I want to right click the point itself, I usually right click the tangent marker instead. It isn't that big a deal, but simplicity at the cost of power generally is a good thing, especially when it will save a few mouse clicks.
As for the outlines, yeah, I've tried that and it is a decent solution for now, although it is no replacement for a real outline. I am going to also experiment with a clamp to see if I can make the center of the shape have 100% alpha... but I don't have synfig on the computer I'm on right now. Thanks for the tips Pxegeek. --Dragontamer 01:58, 27 November 2007 (EST)
You can press Alt+3 to hide tangent ducks. --Zelgadis 09:27, 27 November 2007 (EST)

Bones with FK & IK + grouping of objects into folders

(1) 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

Copy & Paste/Image Importing

(4) I sometimes make graphics in other programs, or use clipart and other images. Would it be possible for Synfig to be able to import images and/or copy and paste them?--Khlieeq 2007-07-19 Well, it doesn't support Copy & paste from the clipboard, but you can import images using "New Layer -> Other -> Import". This will create an Import layer, for which you can then edit the properties to point to the file containing your image. PXEGeek. 2007-07-19

Animated sketch

(1) it would be great, if the tool Sketch will return and it will be animatable (for example, in a form of a special sketch-layer). --Zelgadis 2007-06-14
For the first part of the request, note that the sketch tool can be re-enabled using environment variables. See FAQ for details. PXEGeek 9/26/07

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)

Recursive Waypoint Manipulation

(4) it is really tiresome to revert changes to waypoints created by manipulating tangent/position ducks or change their interpolation functions. making it possible to right-click-modify the waypoint shown for objects that have some waypoint in a referenced sub-object would be great! -- timonator 2007-06-01

You can do it in two ways: changing the interpolation method of the waypoint of paste canvas or editing the keyframe properties. The first allow to modify the waypoints interpolation method for all the waypoints of all the parameters of all the layers that are inside the paste canvas layer. You can right click on the left or right part of the waypoint to edit by a context menu the left or the right interpolation method of the waipoints. The second method would add and modify all the parameters that have any waypoint in the animation. See Keyframe for more detail. --Genete 13:10, 29 October 2007 (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.

Tweening for images developed in other imaging programs

It's obvious I am a beginner at image movement, but morphing is not enough: movement across the page is needed. Thanks for listening. Comwell
Imported images can be moved across the page. They can also be scaled, rotated and deformed. Was there a specific example you had in mind? pxegeek

I also would like a way to tween images that have been drawn in other programs. I've had trouble drawing with Bline tool and the drawing tool in Synfig, and I'd rather just draw with a paint brush (like the one in Photoshop). Another problem I have is that Synfig tends to shut down on me every 20 minutes or so, and it's really frustrating even with the auto recover feature, because my sketches disappear. It'd be nice if I'm able to draw all of the keyframes in Photoshop or another image program and import it to Synfig so that Synfig can tween and animate them. Thank you. Huina
You CAN use images, drawn in other programs. Just select "File->Import" from canvas menu --Zelgadis 01:39, 24 November 2007 (EST)
But how do you animate using images from other sources? I tried to make 2 keyframes with 2 different images, and it doesn't animate. It just stays as 1 picture for the entire render. The closest thing I saw to importing images from another source into Synfig and having it animate is the Walking Cycle Tutorial, but I would still have to trace the images to make it animate. As I said earlier, I'm not entirely fond of using the draw/Bline tool. Huina
Huina, there's no way to do what you want right now. Interpolating between two images that are not created in Synfig is well beyond its scope right now. However, what you could do is take an image and separate elements of the picture onto different layers (e.g. have a picture of an arm and another of the rest of the body) and you can move those around, stretch and rotate them. (If you're familiar with the work of Terry Gilliam on Monty Python you'll know what I mean) I don't know how feasible it is to implement your request (I suspect some heavy lifting). We'll keep it on the list, but don't hold your breath. Pxegeek 19:57, 24 November 2007 (EST)
I think, you hardly find any other animation package which allow you to do such things. You could use a special tools for this task, like xmorph (http://xmorph.sourceforge.net/). But to do the tween between two bitmap images you STILL need to set points. It's not tracing, but very similar. Anyway, result may be poor and I'd better suggest to use technique, described in Walking Cycle Tutorial or which the Pxegeek meant. --Zelgadis 02:08, 25 November 2007 (EST)
There is a technique called "optical flow". It takes two input frames and calculates the movement of each individual pixel between the frames, allowing interpolation to be done. Here's an example: http://www.fxguide.com/article333.html. It doesn't require setting of control points, but it has problems it's own set of problems: http://www.fxguide.com/article333.html. --Yoyobuae 13:32, 3 February 2008 (EST)

Auto-link option in Draw tool

(4) so that you can draw a line, and have its endpoint automatically link to a duck - or if Auto-connect is off, you can get a line object linked to the end of another line object. / I missed this too, it even should be like that by default I think. Maxy 13:22, 25 Apr 2006 (PDT)

Isn't this done already? We don't have line objects, but blines are automatically linked to if auto-connect is on. Am I missing something? -- dooglus 17:29, 27 September 2007 (EDT)
To clarify dooglus' comments - If you have an outline created by the draw tool highlighted in the layer dialog and the auto-extend checkbox is checked, then you can continue drawing with the draw tool in that same layer. Blines created with the Bline tool cannot be extended once a different tool or layer is selected. Pxegeek 23:46, 12 October 2007 (EDT)
A line is a line - Synfig doesn't remember whether it was created with the Bline tool or the Draw tool - so you can extend blines created with the bline tool using the draw tool. Just make sure the line is selected (so that its ducks are visible), not looped (so that it has end points to extend from), enable the draw tool, check 'auto extend' and start drawing at one of its end ducks. dooglus 05:47, 13 October 2007 (EDT)

So this sounds like it is already done. But on a related note, being able to open an existing bline in the bline tool to extend it would be useful. -- dooglus 04:51, 29 January 2008 (EST)

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)

Layer hide boolean parameter

(3) — An animatable way to remove a layer from visibility and consideration in tools. And as an option, to hide the layer in the layer list while it is invisible. This crosses over functionality from the Amount Parameter, the Show/Hide checkbox in the Layers Panel, and builds upon it as well, allowing the Layers Panel to dynamically unclutter. (This feature request is a refactoring of the Amount Parameter)

With the addition of the Switch type conversion it is not needed this feature request. You can convert the Amount parameter to a Switch value and give 0 and 1 to the Linked OFF/ON values. --Genete 13:20, 29 October 2007 (EDT)

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.

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 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?

Networkability

(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.

Riding ducks

(2) — Not chocobos. The ability to link a duck from one shape to an arbitrary position on another path, without creating an extra shape duck on that path.

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.

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'.

mod_synfig

(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.

Image filmstrip import

(2) — Allow import of a series of images (TGA, etc) as frames of an animation, on a layer.
Response - 'lst' files of a list of images can be imported. I've used this to develop a walk cycle. See Walk cycle for an example. pxegeek

Bitmap Objects and Backgrounds

(5)(0) — Simmilar to the above but for more than for just purely bitmap based animations. I feel that the to do production quality animations you need production quality backgrounds, foregrounds, and effects. Many of which are very difficult or even impossible to achieve with vector based graphics. I suggest support for alpha transparencies as well to make this truely useful. An example of how this could be used would be a bitmap background and a bitmap foreground that can be panned as the scene moves.

Static bitmaps with alpha are possible already, if that is what you mean. I have just documented it in How do I. Maxy 06:35, 9 Apr 2006 (PDT)

Align function

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

Improved SVG import

(4) — Currently, all importing an SVG does is render it in ImageMagick. What I want is the ability to import the SVG document so that all the shapes, etc. of the SVG document show up as their equivilant synfig layers - i.e. if I had put them there myself. I'm trying to write a patch for this but the codebase is mostly undocumented. KMeist 16:38, 25 Feb 2006 (PST)

svg2synfig could be incorporated using an open source XSLT processor. --Dmd 13:34, 26 January 2008 (EST)

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)

Character Animation Tools

I have seen some interesting methods for helping character design/animation in different 2d/3d software. Hash's animation master has 'poses' which are extremes of a model, for example smiling and frowning, once you add these extremes ot a set you can use slider to create a pose that somewhere inbetween. The real power of this is when you have serveral different poses on the same object, a face say, you can easily come up with new facial expressions. Maybe something similar could be done with synfig using layers and groups, the implementation could something similar to Moho's switch layers. --Triclops 09:52, 9 Aug 2006 (PDT)

Have you read this tutorial? Reuse Animations. It is very close to the Switch layer of Moho/Anime Studio. Also You can change the Canvas parameter to any other canvas dynamically in the time line by clicking on it and selecting other exported canvas. Other option is convert the canvas to a Switch type and alternate between two different canvas. --Genete 13:26, 29 October 2007 (EDT)

Another character 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

  • 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)]

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 anumations 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

Single window

(2/4)why does Synfig generate so many separate windows? just starting it clutters my desktop, I think it would be useful if they were atleast displayed as one in the start bar. Conceit

Line width tool

(4) It will be good to have a tool for easy changing line width. There was a such tool in earlier versions, but it's not usable. I'm often use variable line width, when drawing in synfig, so it is important for me. -- Zelgadis 2007-09-09

It is still available. Also, you can turn on the width ducks, using Alt-5. -- dooglus 12:18, 9 October 2007 (EDT)
It is available, but I never was able to figure out how it works. Alt-5 works, but it is hard to set width to zero, for example. -- Zelgadis 2007-09-10
Are you wanting something that works on one vertex at a time? Or all the vertices in an area? Apparently the width tool was designed to work on a bunch of vertices at once. I didn't figure out how it works though, either. -- dooglus 16:57, 10 October 2007 (EDT)
Width tool is surely a mystery. :) I'm waiting for something that works on one vertex at time. I liked the way as width was changed in Moho (Anime Studio now) - there was a special width tool and holding left mouse button on the vertex and moving cursor left decreasing width value, moving right - increasing. Maybe it make sense to rework Width tool in such way. -- Zelgadis 2007-09-13

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. Now they are reordered in alphabetical order what is very usefulness. --Genete 13:37, 29 October 2007 (EDT)

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)

XICC support

It would be cool if synfigstudio had support for XICC.

Improved User Experience for First Contact

  • Single file download and installer (at least for Windows)
  • Ability to draw the first object directly after starting the application (start with an empty document)
  • Ability to animate the object directly after drawing the first object (new documents have a say 3 seconds timeline)

In my opinion this is crucial to attract potential users. Because if I see how easy it is to create my first animation I'm going to accept all the bugs and clumsyness. A good example is the Pencil animation software. --Dmd 13:50, 26 January 2008 (EST)

I've implemented #2 and #3 above in svn r1519 & 1520. If no files are specified to be opened when running studio, it'll make a new one. It won't pop up the canvas properties dialog when making new canvases by default. And the default end time is 5s (3s is small enough to cause the time slider to show "1s 12f", whereas 5s looks cleaner). -- dooglus 04:00, 29 January 2008 (EST)

Area to Edit

08:43 < factor> also an option like blender - select area to update would be nice
08:44 < factor> so the only part of the image that updates whne you add or change someting is in the selected area
08:44 < factor> makes it quicker for doing changes

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)

Histograms

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.

Granted Wishes

MNG target filetype

The ability to save as/in the Free/Open MNG (.mng) format [9]

A partial implementation was committed in SVN r470.

It was implemented in svn 986. See Render options. --Genete 13:12, 29 October 2007 (EDT)

Optionally display RGB in Hex in Color dialog

(3) When colors are quoted as 3 bytes of hexadecimal, you have to convert them to decimal, divide by 255, multiply by 100 to get a number to type into the dialog box. It's painful to match color schemes for example, with the Tango Icon Theme style guidelines. PXEGeek 3/16/07

Added in svn r354. You can type 3 or 6 digit hex codes and hit return to use. 3 digit code 36a gives colour 3366aa (each digit is duplicated) -- dooglus 3/18/07
Many thanks - already used many times! PXEGeek.
Did you notice that you can use single digit codes too? '5' gives 555555 for instance, giving you 16 equally spaces shades of black through white. -- dooglus 17:51, 25 September 2007 (EDT)

Restore Default Layout

(3) — It's very difficult to put all the dialogs back where they were when you started the program, if you've closed them. In addition, with many programs, if you've done something with your window manager to take a window's position off screen, this command is sometimes the only way to bring them back. -> I'd like to second this one - especially with the bug where dialog boxes sometime shrink to nothing or offscreen, and no amount of maximizing or minimizing restores them. The only solution is to kill the windows, and none of the combo options in the dialog menu match the default configuration. 4/4/07 PXEGeek

Implemented in svn r757 -- dooglus 17:48, 25 September 2007 (EDT)