Camera widget



OK, finally I implemented genete’s suggestions:

  • Camera widget shape changed
  • Inner radius of star is now hidden

camera-view-0.3.sifz (2.47 KB)

Here’s the tutorial on usage:


oh… :open_mouth: ok! :open_mouth: NOW i get it! thanks, Zelgadis, for the tutorial…it has helped me understand how the camera widget is supposed to work! i didn’t understand before what Genete was trying to say, i.e. import the animation layers INTO the camera sifz file, and then change the ValueBase nodes from there, effectively also changing the ValueBase nodes in my ninja animation file, since they r linked! :astonished: that’s the part i didn’t understand before, because i didn’t know that when u change something in a imported file, it also changes it in the original file! :wink: Thanks for clearing that up…now i got to go apologize to Genete again!

MUCH appreciation, Zelgadis!



Thanks Zelgadis that helped a lot!



Ok…so i did what was discussed on here, i.e. import one sifz file into the other one, and try to change the ValueBase nodes of one file, which is supposed to change them in the imported file in the other…but for some reason its not working! :confused: The files don’t appear to be linked, after import, because when i make changes to the ValueBase nodes of the Camera Sifz file, which i imported into my ninja animation file, the changes aren’t transported to the my ninja animation, i.e. they’re not transported to the imported file of the Camera sifz, which is in my ninja animation…

Genete and Zelgadis both said it would work…i.e. after importing, make changes in the original file of one, and the changes would be transported to the imported file of that in the other sifz… :confused:

Can anyone please tell me what i’m doing wrong? i’ll post here later a zip file of the images, and both sifz files…i.e. the ninja animation one, and the Camera view one, along with the png image files that form the parts of my ninja character! :wink:

Thanks in advance! :smiley:


Read tutorial carefully: you should not import camera sifz into panned image. You should import the panned image into camera sifz.

In case if you importing camera sifz into panned image the panned image won’t be affected by camera, because camera layers are encapsulated. That’s why you don’t see any effect of changing ValueNodes - that made you think what files are not linked.


hmm…to be completely honest with u, Zelgadis…i don’t quite understand what u meant by “panned image”! :confused: when i think “panned” i think of the kind of “panning” that a camera does, i.e. when u move it around, so the view changes! are u simply saying then, that u can’t import the camera sifz into a animation that i have moved around at all?

if so, then that kind of sucks… and also about the “camera encapsulated bit”, that also confuses me too, because it seems like to me that i could simply move my ninja animation layers into the camera encapsulate layer! 8) And of course, that’s what i already did…but the effects of the editing of ValueBase nodes of the Camera sifz file didn’t get transported to my ninja animation file!

as for switching them around, and instead importing my ninja animation sifz into the camera sifz…instead of the other way around…i’ll go ahead and try that, and report back to u whether it works or not! :wink:





Saying “panned image” I meant an image you would like to pan with camera widget.

No. I’m not saying that.

Moving the layers inside of imported camera layer means moving layers into the camera widget sifz. That’s not good. And, of course this operation won’t transfer your ninja’s valuenodes. So the layers will be in camera sifz and their valuenodes will exist in separate ninja file - quite confusing.

I just trying to explain why you shouldn’t import the camera widget into your ninja file.

I think it’s better to stop arguing and just start from the beginning reproducing tutorial step by step without improvisations.
After you become familiar with the process you could make your own workflow if you need to, but before that I think the further dispute will be a waste of time.


ahh…ok! i get it now! thanks! :smiley:

that’s good to know

hmmm…then i guess that explains why all of my ninja layers disappeared, after restarting synfig, after having moved my ninja layers up into the camera sifz encapsulated layer! :open_mouth: :open_mouth: :open_mouth: :open_mouth: do u know of any way to possibly recover them…now that i seem to have caused them to vanish into thin air? i also looked into the camera sifz file, but they’re not in there either! :confused:

sorry about (what u took to mean) arguing…i was simply very confused, which is why i posted my above post…
now i’m slightly more enlightened how the whole thing works, thanks to u Zelgadis! :smiley: of course, the fact that i appear to have lost my ninja layers is very, very annoying, however! i hope u know of a possible solution…maybe? i now understand that putting layers in one sifz file into an imported sifz in the same file is simply moving them into Camera sifz! thanks for the help!



Possibly they disappeared because you did saved a ninja file, but didn’t saved camera widget file. I don’t know a way to recover them.


:open_mouth: yep…that’s probably what happened alright! :unamused: i must have saved the ninja animation, but didn’t save the camera widget! it really sucks that u know no way to recover them…now i’m going to have to it all over again! :cry:

Thanks anyway! :frowning:


EDIT: Vista, as usual…
The source of all my problems. This post was way too stupid-looking to be viewed at all anymore.


EDIT: :open_mouth: :open_mouth:
WTF was I possibly thinking at the time I typed all up all this dumb &hit?


I am new to synfig and still getting used to it, but have seen some of its powerful features.

There is this one thing that I’d REALLY love to know more about. Multiplane Camera is camera effect/function that I greatly desire in synfig. Traditionally, it can only accomplished by having lots of expensive equipment (transparent cels[outlines + fill-in], numerous panes (for objects closer up and objects farther away) and a moving camera). Now it can be done digitally. I just want to be able to do this in synfig successfully or find an equivalent.

Here’s a video that shows almost exactly what i am looking for: … et-up.html

Thank you for your time.


You could certainly get the same effect by encapsulating various elements into their own canvases. The only hitch would be that you would have to manually handle all the translations, zooms and rotations.
Every layer in Synfig has it’s own ‘z’ parameter for depth. I’d actually thought about having something that automatically calculated the right perspective and amount of focus, but it would take some coding that’s beyond me right now. :frowning:



A few months ago a guy (Uiomae) started to develop a opengl implementation renderer for synfig. Unfortunately he moved to other city and started real work so the development was stopped. He mentioned me several times that enable multiplane camera after implement opengl renderer will be very simple.


Well there is this method that I researched and eventually found. It’s not my own work but I found it on youtube about someone who accomplishes a (although primitive) multipane/perspective effect:

While I do not understand the programming language of Synfig, I do hear people saying that I have the “heart” of a programmer inside. So i was just thinking… the person in the youtube video accomplishes this effect by encapsulating each bitmap into its own canvas and has applies a Zoom and Translate layer to each one. Then he links the zoom and translate of all the “further back” or lower layers to the top or frontmost layer, except he adds a scale factor to the lower images (which makes sense… if the camera zooms, images closer up will zoom the most, and those farther back will zoom much less but still zoom; same applies if the camera is moving to the right [images are panned left with the ones farther back panning left much less]).

Some first off questions (because i don’t know a lot about synfig yet):

  1. after creating layers, is it possible to select/encapsulate/link/‘another_I_dont_know_of_yet’ multiple layers and add an extra parameter to all of them individually?

Some Ideas:
2) if the above is possible, then I would like to add a parameter and call it ‘distance from camera’ or some equivalent.
3) if it is not possible yet, then I would add a ‘distance from camera’ parameter to each layer upon creation
4) then give the topmost layer/bitmap/forefront_image a low non-zero ‘distance from camera’ value (1 is nice). All the lower layers (or further_back_images) will each be given a value relative the topmost layer (forefront_image). If the topmost layer was defined as 1 (arbitrary, but to me it will stand for 1 unit away from the camera [imaginary/digital_camera_lense]), then a lower layer with a ‘distance from camera’ of 2 will be considered ‘twice as far’ from the imaginary camera as the topmost image.
5) Now that we have a relative sense of how far objects/layers are from the camera, we can accomplish a ‘makeshift automated multiplane camera’ effect. (I am not too familiar with technical synfig options yet, but I think that one must export those ‘distance from camera’ parameters for use later)
6) Multiplane effect: further away object move less/slower than closer up objects.
7) For multiplane camera zooming, one would link all the zoom parameters of each encapsulated layer. Then one enters a zoom value for the topmost layer. Then enter a “scale factor” that equals the number 1 divided by the ‘distance from camera’ parameter for the rest of the layers below the top layer; for example if you want to zoom ‘X’ units of zoom, the topmost will normally zoom ‘X’ units; the layer below it that is twice as far away from the camera (‘distance from camera’=2) as the top layer (‘distance from camera’=1), will be zoomed ‘1/2 X’ or ‘0.5 * X’ zoom units. If there was a lower layer with a ‘distance from camera’=3, then a zoom of 1 unit for the top layer would zoom 1/3 units for the 3rd layer. Close up objects are zoomed normally, further back objects are zoomed less/slower relative to their ‘distance from camera’.
8) For multiplane camera panning, one would link all the translate parameters of each layer. Then one enters a translate value for the topmost layer. For the rest of the layers, similar to how the multiplane zoom works above, add a “scale factor” to each of the lower layers that is equal to the number 1 divided by ‘distance form camera’ for each layer. The result is a camera effect where objects farther away will translate less/slower than the objects closer in front based on ‘distance from camera’.

Although Genete’s friend’s openGL idea may solve the need eventually, I do believe this/my makeshift multiplane camera idea may help a lot of people who currently need the feature now. I do admit i do not know any programming mechanics that synfig is compiled from so some of the stuff i mentioned might not be possible–it’s still a suggestion. If I got some terms messed up, or if one of my suggestions doesn’t work out the way it supposed to but has a workaround, please correct me.

Another neat feature would be to create a separate “graphical user interface window” just for the multplane effect to help more ‘visual’ animators, much similar to the camera-focal-point-triangle thing that was available in the video ( … et-up.html 2:45-end). I’ve added screenshots of the graphical interface (window) as and attachment to this post that really helps make this multiplane camera effect feel like a real camera. The tough part would be to export each parameter and compile them onto a list somewhere (maybe within the programming of the new multiplane GUI window) to have display in the GUI. Then programming the clickable icons for each layer within the window to correspond with camera distance when you slide the layers up or down (assigns ‘distance from camera’ for the layers) and one for the camera when sliding it up/down (multiplane zoom) or sideways (multiplane panning or reverse translation [multiply by -1]; i.e. if you move camera to the right, object translate to the left [like in real life ^_^]). Watch the video after 2:45 to see what i am talking about.

It’d really help if the linking of the layers for multiplane camera work could be more automated somehow in the furture. When Walt disney, presented the multiplane camera, it was revolutionary. I can’t see how an good animation program be without a good multiplane feature.

Though I talked a lot, I can’t program (at least not yet… i could learn from scratch maybe…). But I hope the idea helps… At the very least, its a workaround idea for before the OpenGL support arrives. Graphical Interface window support for the openGL version would also be VERY attractive (for the one who is currently working on the openGL one) and should be probably a ‘MUST have’ feature when it does come.