Synfig 0.61.01

Sunday, November 6, 2005 by darco
Posted in

Here is the latest Synfig release.

ETL ChangeLog

  • Various GCC 4.0 fixes
  • make check should now work just fine

Synfig Core ChangeLog

  • src/synfig/savecanvas.cpp: added #include <sys/errorno.h>
  • src/synfig/value.cpp: Various GCC 4.0 fixes
  • src/modules/mod_bmp/trgt_bmp.cpp: The BMP target was broken. It's now fixed.
  • examples: Removed SFAutomaton font due to licensing issues.
  • All: Updated copyright notice to reflect new license

Synfig Core TODO

  • Re-write font system. (The "simple text" layer is a dirty,dirty hack)
  • Use pre-multiplied alpha to speed up compositing
  • Solidify plug in system to be more robust (Auto-detect and load?)
  • Solidify and codify XML file format into XML schema
  • Make layer and value-node parameters handled in the same way. (currently different)
  • Move to a garbage-collected system rather than reference counted
  • Integrate a scripting language (Possibly better suited for libsynfigapp?)
  • Finish and migrate to a new surface layer class
    • Arbitrary color/alpha channels
    • Surface locking/unlocking
    • Copy-on-write
  • Make the "Value" class extendable by plug-ins
  • Add paremeter mechanism to render target class to allow user to control things like:
    • Color depth
    • Codec
    • etc.
  • Review/rewrite error-handling and reporting mechanism
  • Migrate public API to be more language agnostic in nature
  • Network-distributed rendering
  • Solid multi-threaded rendering

Wanted Plug-Ins

  • mod_svg: SVG Import/Export
  • mod_quicktime: Support for importing/rendering-to quicktime movies (MacOS X and Windows Only)
  • mod_imageio: Support for Apple's ImageIO framework (MacOS X Only)
  • mod_tiff: Using libtiff
  • mod_wmv: Support for Windows Media for importing/rendering-to wmv/avi movies (Windows only)

Synfig Studio ChangeLog

  • src/gtkmm/render.cpp: Fixed default render file to use the directory seperator for the given OS, rather than just use forward slashes all the time.

Synfig Studio TODO

  • Re-implement draw tool
  • Re-implement WorkArea class to use OpenGL
  • Migrate toward extensible plug-in architecture
  • Migrate toward scripted architecture
  • Ability for "Auto Recover" feature to recover edit history
  • Ability to edit curves in the curves tab.
  • Subversion integration
  • Integrated error console tab
  • Clean up crazy confusing console output

Wishful Thinking

  • Visual conflict resolution for version control merging conflicts

Long Term

  • Make majority of user-interface components controlled by scripts

Where are the binaries?

Um... They aren't ready yet. My windows box is at home and I'm back in Seattle finishing up the loose ends of my move. Be glad you got anything.

Expect a Win32 build and a MacOS X build (using X11) sometime this week.

If anyone could make some binary linux packages for the various distributions, let me know about it and I'll post some links. I have very little desire to make linux binary packages myself.

Where is the animation tutorial?

In my head. I'll try to get it out over the next week or so. In the mean time, try playing around with the compositions in the example directory.

Fun trick: Open up about_dialog.sif and logo.sif at the same time. Now click on the logo in logo.sif, and goto the parameter tab, and turn off "children lock". Click again on one of the lines of the logo—it should select. Now muck with it. Change it. Move some ducks around. Watch about_dialog.sif! Notice how whenever you change logo.sif, the logo in the other composition updates as well. Neato, eh? :)

Common man, I want to animate!

OK fine, here is a hint to get you started mucking with animation. Each composition has a begin time and an end time. By default, they are set to the same thing—meaning that it is just a still image and not an animation. When you are editing a still image, all of the necessary animation mechanisms are hidden, so you must set an end time before you can start animating! You can do this from the properties dialog.

More to come...


Trackback from your own site.

20 Comments for “Synfig 0.61.01”

  1. Hellmark Says:

    Ok, tried compiling using GCC4, but still got problems. ETL went fine, and synfig compiled mostly, but after cranking away for a while it puked this.

    g++ -DHAVE_CONFIG_H -I../../.. -I../../.. -I../../../src -I/usr/include/libxml++-2.6 -I/usr/lib/libxml++-2.6/include -I/usr/include/libxml2 -I/usr/include/glibmm-2.4 -I/usr/lib/glibmm-2.4/include -I/usr/include/sigc++-2.0 -I/usr/lib/sigc++-2.0/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/local/include -I/usr/include/sigc++-2.0 -I/usr/lib/sigc++-2.0/include -DSYNFIG_NO_DEPRECATED -DNDEBUG -Wno-deprecated -O2 -ffast-math -W -Wall -Wno-unused-parameter -fpermissive -MT liblyr_std_la-stretch.lo -MD -MP -MF .deps/liblyr_std_la-stretch.Tpo -c stretch.cpp  -fPIC -DPIC -o .libs/liblyr_std_la-stretch.o
    ../../../src/synfig/context.h:55: warning: 'class synfig::Context' has virtual functions but non-virtual destructor
    stretch.cpp: In member function 'virtual synfig::Vector Stretch_Trans::perform(const synfig::Vector&) const':
    stretch.h:49: error: 'synfig::Vector synfig::Layer_Stretch::amount' is private
    stretch.cpp:138: error: within this context
    stretch.h:50: error: 'synfig::Point synfig::Layer_Stretch::center' is private
    stretch.cpp:138: error: within this context
    stretch.cpp: In member function 'virtual synfig::Vector Stretch_Trans::unperform(const synfig::Vector&) const':
    stretch.h:49: error: 'synfig::Vector synfig::Layer_Stretch::amount' is private
    stretch.cpp:143: error: within this context
    stretch.h:50: error: 'synfig::Point synfig::Layer_Stretch::center' is private
    stretch.cpp:143: error: within this context
    make[4]: *** [liblyr_std_la-stretch.lo] Error 1
    make[4]: Leaving directory `/home/hellmark/code/synfig-0.61.01/src/modules/lyr_std'
    make[3]: *** [all-recursive] Error 1
    make[3]: Leaving directory `/home/hellmark/code/synfig-0.61.01/src/modules'
    make[2]: *** [all-recursive] Error 1
    make[2]: Leaving directory `/home/hellmark/code/synfig-0.61.01/src'
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/home/hellmark/code/synfig-0.61.01'
    make: *** [all] Error 2
    
  2. darco darco* Says:

    Hrrm. Will fix when I can.

  3. phluaria Says:

    I will second this–same error, using GCC4.0.2, about 7min into compilation

  4. Pulphix Says:

    Hi, I tried compiling synfig, and I have problem with the OpenEXR modules. this is the error:

    Making all in mod_openexr
    make[4]: Entering directory `/home/fabio/archlinux-pack/synfig/src/synfig-0.61.01/src/modules/mod_openexr'
    if /bin/sh ../../../libtool –mode=compile g++ -DHAVE_CONFIG_H -I../../.. -I../../.. -I../../../src   -I/usr/include/libxml++-2.6 -I/usr/include/libxml2 -I/usr/include/glibmm-2.4 -I/usr/lib/glibmm-2.4/include -I/usr/include/sigc++-2.0 -I/usr/lib/sigc++-2.0/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/sigc++-2.0 -I/usr/lib/sigc++-2.0/include -DSYNFIG_NO_DEPRECATED -march=i686  -pipe -DNDEBUG -Wno-deprecated -O2 -ffast-math -W -Wall -Wno-unused-parameter -fpermissive -MT libmod_openexr_la-main.lo -MD -MP -MF ".deps/libmod_openexr_la-main.Tpo" -c -o libmod_openexr_la-main.lo `test -f 'main.cpp' || echo './'`main.cpp; \
    then mv -f ".deps/libmod_openexr_la-main.Tpo" ".deps/libmod_openexr_la-main.Plo"; else rm -f ".deps/libmod_openexr_la-main.Tpo"; exit 1; fi
     g++ -DHAVE_CONFIG_H -I../../.. -I../../.. -I../../../src -I/usr/include/libxml++-2.6 -I/usr/include/libxml2 -I/usr/include/glibmm-2.4 -I/usr/lib/glibmm-2.4/include -I/usr/include/sigc++-2.0 -I/usr/lib/sigc++-2.0/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/sigc++-2.0 -I/usr/lib/sigc++-2.0/include -DSYNFIG_NO_DEPRECATED -march=i686 -pipe -DNDEBUG -Wno-deprecated -O2 -ffast-math -W -Wall -Wno-unused-parameter -fpermissive -MT libmod_openexr_la-main.lo -MD -MP -MF .deps/libmod_openexr_la-main.Tpo -c main.cpp  -fPIC -DPIC -o .libs/libmod_openexr_la-main.o
    In file included from trgt_openexr.h:33,
                     from main.cpp:35:
    /usr/include/OpenEXR/ImfRgbaFile.h:50:23: error: ImfHeader.h: No such file or directory
    /usr/include/OpenEXR/ImfRgbaFile.h:51:28: error: ImfFrameBuffer.h: No such file or directory
    /usr/include/OpenEXR/ImfRgbaFile.h:52:21: error: ImfRgba.h: No such file or directory
    /usr/include/OpenEXR/ImfRgbaFile.h:53:22: error: ImathVec.h: No such file or directory
    /usr/include/OpenEXR/ImfRgbaFile.h:54:22: error: ImathBox.h: No such file or directory
    /usr/include/OpenEXR/ImfRgbaFile.h:55:18: error: half.h: No such file or directory
    /usr/include/OpenEXR/ImfRgbaFile.h:77: error: expected ',' or '...' before '&' token
    /usr/include/OpenEXR/ImfRgbaFile.h:87: error: expected `)' before '&' token
    /usr/include/OpenEXR/ImfRgbaFile.h:98: error: 'Imath' has not been declared
    /usr/include/OpenEXR/ImfRgbaFile.h:98: error: expected ',' or '...' before '&' token
    /usr/include/OpenEXR/ImfRgbaFile.h:105: error: 'Imf::RgbaOutputFile::RgbaOutputFile(const char*, int)' cannot be overloaded
    /usr/include/OpenEXR/ImfRgbaFile.h:78: error: with 'Imf::RgbaOutputFile::RgbaOutputFile(const char*, int)'
    /usr/include/OpenEXR/ImfRgbaFile.h:117: error: 'RgbaChannels' has not been declared
    /usr/include/OpenEXR/ImfRgbaFile.h:119: error: 'Imath' has not been declared
    /usr/include/OpenEXR/ImfRgbaFile.h:119: error: expected ',' or '...' before 'screenWindowCenter'
    /usr/include/OpenEXR/ImfRgbaFile.h:140: error: expected ',' or '...' before '*' token
    /usr/include/OpenEXR/ImfRgbaFile.h:157: error: expected ';' before '&' token
    /usr/include/OpenEXR/ImfRgbaFile.h:158: error: expected ';' before '&' token
    /usr/include/OpenEXR/ImfRgbaFile.h:159: error: 'Imath' has not been declared
    /usr/include/OpenEXR/ImfRgbaFile.h:159: error: expected ';' before '&' token
    /usr/include/OpenEXR/ImfRgbaFile.h:160: error: 'Imath' has not been declared
    /usr/include/OpenEXR/ImfRgbaFile.h:160: error: expected ';' before '&' token
    /usr/include/OpenEXR/ImfRgbaFile.h:162: error: 'Imath' has not been declared
    /usr/include/OpenEXR/ImfRgbaFile.h:162: error: 'V2f' does not name a type
    /usr/include/OpenEXR/ImfRgbaFile.h:164: error: 'LineOrder' does not name a type
    /usr/include/OpenEXR/ImfRgbaFile.h:165: error: 'Compression' does not name a type
    /usr/include/OpenEXR/ImfRgbaFile.h:166: error: 'RgbaChannels' does not name a type
    /usr/include/OpenEXR/ImfRgbaFile.h:117: error: 'WRITE_RGBA' was not declared in this scope
    /usr/include/OpenEXR/ImfRgbaFile.h:228: error: expected `)' before '&' token
    /usr/include/OpenEXR/ImfRgbaFile.h:245: error: 'Rgba' has not been declared
    /usr/include/OpenEXR/ImfRgbaFile.h:262: error: expected ';' before '&' token
    /usr/include/OpenEXR/ImfRgbaFile.h:263: error: expected ';' before '&' token
    /usr/include/OpenEXR/ImfRgbaFile.h:264: error: 'Imath' has not been declared
    /usr/include/OpenEXR/ImfRgbaFile.h:264: error: expected ';' before '&' token
    /usr/include/OpenEXR/ImfRgbaFile.h:265: error: 'Imath' has not been declared
    /usr/include/OpenEXR/ImfRgbaFile.h:265: error: expected ';' before '&' token
    /usr/include/OpenEXR/ImfRgbaFile.h:267: error: 'Imath' has not been declared
    /usr/include/OpenEXR/ImfRgbaFile.h:267: error: 'V2f' does not name a type
    /usr/include/OpenEXR/ImfRgbaFile.h:269: error: 'LineOrder' does not name a type
    /usr/include/OpenEXR/ImfRgbaFile.h:270: error: 'Compression' does not name a type
    /usr/include/OpenEXR/ImfRgbaFile.h:271: error: 'RgbaChannels' does not name a type
    trgt_openexr.h:50: error: using-declaration for non-member at class scope
    trgt_openexr.h:50: error: expected ';' before '*' token
    trgt_openexr.h:51: error: 'Rgba' is not a member of 'Imf'
    trgt_openexr.h:51: error: 'Rgba' is not a member of 'Imf'
    trgt_openexr.h:51: error: template argument 1 is invalid
    trgt_openexr.h:51: error: template argument 2 is invalid
    trgt_openexr.h:51: error: template argument 3 is invalid
    make[4]: *** [libmod_openexr_la-main.lo] Error 1
    make[4]: Leaving directory `/home/fabio/archlinux-pack/synfig/src/synfig-0.61.01/src/modules/mod_openexr'
    make[3]: *** [all-recursive] Error 1
    make[3]: Leaving directory `/home/fabio/archlinux-pack/synfig/src/synfig-0.61.01/src/modules'
    make[2]: *** [all-recursive] Error 1
    make[2]: Leaving directory `/home/fabio/archlinux-pack/synfig/src/synfig-0.61.01/src'
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/home/fabio/archlinux-pack/synfig/src/synfig-0.61.01'
    make: *** [all] Error 2
    

    I use Archlinux 0.7.1 with: gcc 4.0.2 OpenEXR 1.2.2

    bye

  5. Steakhouse Says:

    Btw Rob, allowing a person to finish a Bline by right-clicking an end point and having a quick dialogue 'Make Bline' would streamline things a good bit... dont know if I asked for this one during development or not...

  6. iznogoud Says:

    "Expect a Win32 build and a MacOS X build (using X11) sometime this week."

    That's good news! BTW, I tried to build it from sources. On Tiger, it simply fails because of (at least) gcc4.0. On panther, it failed, because of gcc, but I don't remember the error:(

  7. darco darco* Says:

    Win32 build:

    Synfig Core 0.61.01 Win32
    Synfig Studio 0.61.01 Win32

    MacOSX Build (Requires X11):

    Synfig 0.61.01

  8. Steakhouse Says:

    Do I have to install all the pervious versions in order before installing 0.61.01? becasue I'm getting a strange error when I try and run this time.

    Warning: settings::load_from_file: Key "wingdow.color.pos" with a value of "" was rejected.
    Warning: settings::load_from_file: Key "wingdow.color.size" with a value of "" was rejected.
    Warning: settings::load_from_file: Key "wingdow.gradient.pos" with a value of "" was rejected.
    Warning: settings::load_from_file: Key "wingdow.gradient.size" with a value of "" was rejected.
    
  9. darco Says:

    Ignore those errors.

  10. Steakhouse Says:

    I would love to but they prevent the program from opening :)

  11. darco Says:

    Those are warnings and should not be fatal. I doubt they are what is causing the program not to load. If you have to, try uninstalling and reinstalling. If that doesn't work, try deleting the following file:

    C:\Documents and Settings\YOUR_LOGIN\Synfig

  12. Sean Roth Says:

    I got the same errors as Hellmark and Pulphix... when are these going to be fixed?

  13. speedwings Says:

    What about all the dlls like libxml++-2.6-2.dll? I found the others on Inkscape, but seems libxml++-2.6-2.dll is a ghost... (sorry for my english)

  14. darco* Says:

    Seeing that no one is paying me to work on this (and that I'm being paid to work on something entirely different), it will have to wait until I get some free time this weekend.

  15. Hugo Says:

    I got the same errors as Hellmark and Pulphix... in Ubuntu.

  16. placide Says:

    I got the same errors as Pulphix... in Ubuntu Breezy. I remove the openexr packages, but no luck I got the Hellmark errors. Any idea?!?

  17. darco Says:

    Yes. I have ideas. I am just short on time. Considering it's friday and I have the whole weekend ahead of me, I think it's quite likely that I'll have a new release over the weekend. Look forward to it. :)

  18. Dr-ROX Says:

    I got this error when compiling studio on Ubuntu 6.04:

    make[3]: *** [synfigstudio-dockdialog.o] Error 1
    make[3]: Leaving directory `/home/sanis/Synfig/synfigstudio-0.61.04/src/gtkmm'
    make[2]: *** [all-recursive] Error 1
    make[2]: Leaving directory `/home/sanis/Synfig/synfigstudio-0.61.04/src'
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/home/sanis/Synfig/synfigstudio-0.61.04'
    make: *** [all] Error 2
    

    Other two patrs compiled OK.

  19. espen Says:

    I have installed synfigstudio on two machines. One debian and one SUSE. I'm not able to draw anything on the canvas on any of them. Think I'v tried everything. Looks like the canvas is locked in some way.

    What am I doing wrong???

  20. darco* Says:

    Espen:

    It is quite likely that the plug-ins are not getting loaded properly. Try running "synfig –modules" at the command line.

    Join either the IRC Channel or Jabber Conference Room for more help.

    I am closing comments on this post because the best place to seek help for synfig is on the synfig website, synfig mailing lists, or the synfig wiki.

Comments are closed for this post.