Some doubts

Hey everyone!

I did this animation this week:

But there is something that I can’t do…

I have two files: one with the animation of the arrow hitting the bottom of the canvas, where there is a little mask for its tip, and the other file have the background, and the animation of the head target.

So I imported the arrow (flechada.sifz) in to the main animation (alvo.sifz), and duplicated it to make three arrows.

But the thing that I don’t know how to do, is make the arrows hit the target with a little frames of difference between them. If I delay one, all of them will delay too.

can somebody help me?

I put the files here:


Hi nqatsi,
When you import a file into another you obtain a reference of the other file, so if you import it two times you obtain two exactly equal references of the file. But, as you can see, the imported file is inside a Paste Canvas layer. The Paste Canvas layer has its own parameters one of them is the canvas parameter (which in your case is the external file) but there are more parameters: amount, ZDepth, Zoom, Time Offset…
Time OffSet is the parameter your looking for. Modify the current default value and you’ll offset the time of the imported canvas relative to the parent canvas that holds that Paste Canvas Layer. Positive values will delay the animation, negative will advance it (or vice versa,… I don’t remember :blush:)
Does it helps?
Interesting animation, is it for a longer project?

Yeah, this was my first thought, but when I change the Time Offset Parameter in one, it seems to affect all of them, and also some weird glitches appear on the canvas… (even on render)

I tried to modify the Time Offset of the parent Past Canvas but the same thing happens…

any ideas?

Hmmm, seems to be a bug. You’re right certainly. For the moment I only can reccomend you a workaround meanwhile the bug is fixed. Do not import the arrow but copy it from the external file to your animation. Then you can export the canvas or simply work with three inline canvases (the copied ones). Sorry for the inconvenience.
I’ll open a bug tracker for later review.

PS: Alternatively you can add a Time Loop layer and use those parameters to obtain same result:
Time Link: -time delay
Local Time: 0f
Duration: EOT (end of time)
Here is an example:delay18f.sifz (1.55 KB)

I’ve fixed the bug of glitches of the final render. For the canvas render is also fixed if you place the time with the mouse or the keyboard. It still failing when playing the animation on the canvas windows. Seems that the tile render and the play status keeps both paste canvases fight to modify the time offset of the referenced file. As tile render is asynchronous it explains the bug. The final render is synchronous so one layer is not rendered until the rest are finished and there is not fight for the same referenced file. It needs to be fixed.

Hello nqatsi,
I had a lot of this problem in the last animation, so, the solution was… making each copy inside the main arrow file and when you import then into the canvas that will be rendered you will have all of then in their own time. You can also keep the main arrow file opened besides the composition scene and then you can adjust the arrows at the same time you compose the scene. Did I make myself clear? If you have any doubts you can ask.

Thanks! I’m glad to help finding this bug… I hope you can exterminate it :stuck_out_tongue:
Talking about bugs, did you notice that when a new keyframe is added, the time track is updated only when the mouse is over it?

About your example, I played with it a bit, and instead of import the sifz file, I duplicated the arrows as you suggested. It worked :wink:

Nice workaround… I will experiment do it sometime… The purpose of the arrow file was to test if its possible to reuse it more than one time, or in future projects… something like a movie clip in flash, you know? thats why I imported the “generic arrow animation” and duplicated it.

Does duplicated imported sifz files take less ram, or something like that? I mean… is there some advantage in doing it?

Another thing that bothered me was that when I imported the arrows, the origin wasn’t in the same place that I put it in the original… I was expecting that I could use it as reference to where the arrows landed, but it didn’t worked like that… there is a reason to this?

thank you guys for the replies! :mrgreen:

Yes I’ve noticed. For me, it is a low priority bug :smiley:

The internal origin IS in the same place but it can be seen in a different place because the canvas where it is imported has different settings or the imported is affected by a zoom or by a translation in the importer document.

Hi, I always build a scene and it’s objects in the same project size ( I always use 480x270, because it’s proportional to the hdv 1920x1080 ), so if you build all “movieclips” ( as in flash ) in the same project size, you’ll have more control of distances origin and time for animation.

Even if I am building something inside inkscape, I use this exactly size ( 480x270 ), the exception is when I work with bitmaps ( in gimp ), I use the full size for images ( 1920x1080 ).

About the memory used in Synfig, really I do not know. The advantage ( in my opinion ) to use external objects ( as movieclips ) is the fact that you can have all your animations for a scene manipulated individually and then compose then inside another file. If you want to manipulate the original, it has to be opened. The disadvantage is that, if you want to use it more than one time, you have to work with copies in your hard drive. Example: A character template in a 3/4 angle. Ok, you have this template and you want to animate it for a scene, so you’ll have to copy this template first, rename it like…character scene 1 take1, or simply cs1t1; and then animate it for your scene. If you are about to use the character to another scene you’ll have to copy again from the template file. The reason is: if you use the same file you will change the character animation for the first scene.

I talked a lot to Genete about that, It’s a feature, but you need to know how to use it. The same for libraries of poses or expressions. In Tux Ninja I am working in different way, not using character templates for that, but vector poses in .svg file, so import the .svg into synfig to animate the vectors. It’s different, but not better; it’s just a test for a production process.