import a walk cycle

hi folks,

i made a nice walk cycle and in another document a background scenery. now i want to import the walk cycle onto the background and loop it.

is there a possibility else than just duplicate every keyframe (got hundreds)?


There are two ways of making walk cycles.

a) One is create the walk poses of your character around the static origin. Then once you have the basic cycle you move the origin (which drags the poses) along a walking path.
b) The second is create the poses of your character and translate them at the same time along a path with the virtual origin static.

To make a endless walk cycle based on them you should do the following:

a) Assume you have a paste canvas layer that produces the travel movement and all the children sub-layers produces the poses. You should cycle your paste canvas layer origin as well as your sub-layers. You can do it in this way:

  1. Encapsulate the paste canvas (Paste1) into a new one (Paste2)
  2. Convert the Position of the Paste2 canvas to a Step type and set the following values:

Link -> convert to Linear (Slope = (dx,dy) and Offset = (0,0) --dx, dy are the walk step length in x and y–
Duration = duration of the walk cycle in seconds
Start Time = 0f
Intersection = 0.0 (default = 0.5)

  1. Convert the Time Offset of the Paste2 canvas layer to a Step type and set the following values:

Link -> convert to Linear (Slope = -1s and Offset = 0f )
Duration = duration of the walk cycle in seconds
Start Time = 0f
Intersection = 0.0 (default = 0.5)

Attached is a sample file.

Case b) is the same case than a).

Hope it helps :smiley:

looped-walkcycle.sifz (2.46 KB)

thanks a lot… but i cant really understand… my english is to bad :frowning:

i made the walk cycle animation with 2 seconds length. i dont use any backgrounds in that file, just the chess-like synfig-background (that turns to grey when animated).

could you please explain those steps again step by step? that would be really nice :slight_smile:

i think, i understood, that i cant import a .sif-file and loop it. instead, i should edit the existing animation and manually ad backgrounds and stuff?


What’s your primary language?. Maybe it is Spanish.

I need more information about what you don’t understand. Anyway here I go:

I assume you have two files:

File 1: Let’s call it background.sifz. It contains a beauty background with trees and clouds and so on. (Just kidding:))
File 2: Let’s call it walk.sifz. This one contain a bunch of layers and have an animation of 2 seconds length. OKAY.

Step 1: Create a new fresh file. Let’s call it Composition.sifz.
Step 2: Go to Caret Menu->File->Import. It would open a file selector. Select the background and press Accept. It would load the file of the background into your composition. It would appear a new layer which name is the path of the file between brackets [/home/kilian/walkcycle/background.sifz] would be a typical name. Can be different depending of where the imported file is.
Step 3: Save Composition.sifz
Step 4: Repeat Step 2 but select the walk.sifz file.
Step 5: Save Compostions.sifz.

Those files that you have imported are “references” of the original files. If you modify the original files then the modifications are reflected on the imported files. That’s good and bad. Good for collaboration works between different users. Bad for keep templates untouched. Don’t worry. There is a solution for that. If you want to just import the files into the composition and make them independent of the original files (you would like to modify the composition background without affect the original background file) then you can do that just doing those steps:

Step 6: Select the Paste canvas layer of the background (result of step 2). Look into the params panel and search for the Canvas parameter. Select it and make right click. It would pop up a context menu showing you the option of Export the paramter. Click on it and insert a meaning name in the input dialogue.
Step 7: Repeat the same with the Paste canvas layer of the walk cycle.
Step 8: Save Composition.sifz
----end of optional -----

Step 9: Search the Origin parameter of the walk cycle paste canvas layer. Do right click over it and select Convert from the context menu. It would open a second menu with lots of options. Select “Step”. Now look to the small triangle that has appeared before the parameter name. Click on it and expand the paramter into its sub-parameters.
Step 10: In the sub-parameters select the one called “Link” and convert it to [url]“Linear”[/url] doing the same than for Origin (right click etc.).
Step 11: Fill the parameters with the following values. To do it just double click onto the paramter value and edit it numerical value.

Link (Linear) -> Slope = place here the length of the walk cycle (x and y) and Offset = (0,0). If you don’t know what to place here try with (60, 0) for a normal horizontal step. It would depend on your walk step length.
Duration = duration of the walk cycle in seconds. In your case 2s (two seconds)
Start Time = 0f
Intersection = 0.0 (default = 0.5)

Step 12: Select now the TimeOffset parameter of the Paste Canvas layer. With the same instructions convert it to Step too. It would produce the same parameter but in this case the Link parameter is a Time type and not a Vector type.
Step 13: Convert the Link paramter to a Linear using the right click context menu. Fill the sub-parameter with the following values.

Link (Linear) ->Slope = -1s and Offset = 0f
Duration = duration of the walk cycle in seconds. In your case 2s.
Start Time = 0f
Intersection = 0.0 (default = 0.5)

Step 14: Save Composition.sifz and enjoy! :laughing:

Last words: Click on the links I’ve spread in this mini tutorial would help you to understand more things. The wiki has a lot of information.


thanks very much.
in real life i speak german.

okay. i did:

  • create a new file and saved it als xxx.sifz.
  • import the background sifz file
  • import the walkcycle sifz file
  • and then give up because i could not follow…

i read the wiki and looked for a layer that used that symbol and saw, that background and walkcycle layers are using it. so i right clicked on the walk cycle but could not find any “convert”-option…

i use version 0.61.06.

i think, the main problem for me is to understand words like “canvas paste canvas layer”… i have been in england for more than 5 months but never heard words like that (except from layer). :slight_smile:

okay, canvas is the system background… the paper to draw on… thanks to google :slight_smile:
but what the hell is canvas paste canvas layer? :slight_smile:

edit: i just saw that there are two packages… synfig and synfigstudio…i guess, synfig is just the program and synfigstudio is the interface - right?

thanks again!

You have to make right click over the Parameter not over the Layer. Every time you select a layer the parameter panel shows the available parameters for the selected layer. You should seach for the ‘Origin’ parameter there and after that do the right click over it.

Anyway, using synfig 0.61.06 would be a waste of time follow the instrcutions I gave you due to the conversion types did not exist in that version.

In fact there are three packages: ETL, synfig and synfigstudio. ETL is a template library used by both programs. Synfig is the command line program that provides libsynfig (the common library to render stuff) and synfigstudio is a gtkmm interface for the user to edit synfig compatible files and that makes use of the libsynfig library.

Once you have updated to synfig 0.61.08 or higher please ask me again here or in the chat and I’ll do all my best.