{"id":95,"date":"2018-04-22T13:33:58","date_gmt":"2018-04-22T13:33:58","guid":{"rendered":"https:\/\/sparkles.guru\/?page_id=95"},"modified":"2018-04-22T13:33:58","modified_gmt":"2018-04-22T13:33:58","slug":"timeline-copy","status":"publish","type":"page","link":"https:\/\/avalab.org\/sparkles\/timeline-copy\/","title":{"rendered":"Timeline Copy"},"content":{"rendered":"<div class=\"row-fluid\">\n<div class=\"rhcol span7\"><p><iframe loading=\"lazy\" src=\"https:\/\/player.vimeo.com\/video\/118920348?app_id=122963\" width=\"1080\" height=\"608\" frameborder=\"0\" title=\"sparkles walk cycle helper\" webkitallowfullscreen mozallowfullscreen allowfullscreen><\/iframe><\/p>\n<\/div>\n<div class=\"rhcol span5\" style=\"text-align: center;\">[break]The Sparkles Timeline Copy Tool for timeline ranges with the additional ability to x-mirror all poses in a given time range. The mirror copy feature naturally supports the creation of Walk Cycles.<br \/>\n<div class=\"symple-box  yellow center \" style=\"text-align:left;\"> \nNow with Closed Captions in Video<br \/>\n<\/div><\/div>\n<\/div>\n<div class=\"row-fluid\">\n<div class=\"span6 rhcol\">\n<h3>Timeline Copy User Guide<\/h3>\n<\/div>\n<div class=\"span6 rhcol\"><a class=\"map\" href=\"https:\/\/avalab.org\/sparkles\/wp-content\/uploads\/2018\/04\/map_walkcycle.png\" target=\"_blank\"><img decoding=\"async\" alt=\"\" src=\"https:\/\/avalab.org\/sparkles\/wp-content\/uploads\/2018\/04\/map_walkcycle.png\" \/><\/a><\/div>\n<\/div>\n<h4>Define the copy range<\/h4>\n<div class=\"row-fluid\">\n<div class=\"span6 rhcol\">While your armature is selected and in Pose Mode, open the Tool Shelf and locate the &#8220;Copy Timeline&#8221; section in the Sparkles Tools Panel. This panel is located in the Tools Tab <em><span style=\"color: #ff6600;\">(1)<\/span><\/em>.[break]\nYou set the parameters (see below), then press the &#8220;Copy Timeline&#8221; Button.<\/div>\n<div class=\"span6 rhcol\"><a href=\"https:\/\/avalab.org\/sparkles\/wp-content\/uploads\/2018\/04\/walk_cycle_panel1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-22482\" src=\"https:\/\/avalab.org\/sparkles\/wp-content\/uploads\/2018\/04\/walk_cycle_panel1.png\" alt=\"walk_cycle_panel\" width=\"157\" height=\"263\" \/><\/a><\/div>\n<\/div>\n<div class=\"row-fluid\">\n<div class=\"span6 rhcol\"><em><span style=\"color: #ff6600;\">Start:<\/span> <\/em>The first time frame of the copy range<br \/>\n<em><span style=\"color: #ff6600;\">End:<\/span><\/em> The last time frame of the copy range<br \/>\n<em><span style=\"color: #ff6600;\">Target:<\/span><\/em> the first time frame of the target range. In our case we copy the range from frame 0-20 into the range from 20-40[break]\n<div class=\"symple-box  green center \" style=\"text-align:left;width: 80%;\"> \nNote: Once you have setup the numbers and options, you can continue working on your poses, add new ones, remove existing ones, etc. Then you can press the &#8220;Copy timeline&#8221; button repeatedly to update your walk cycle.<br \/>\n<\/div><\/div>\n<div class=\"span6 rhcol\">\n<p><em><span style=\"color: #ff6600;\">Add Startframe:<\/span><\/em> Adds an initial key frame to the first timeframe of the copy range.<\/p>\n<p><em><span style=\"color: #ff6600;\">Add Endframe:<\/span> <\/em>Copies the Start frame of the source range to the last frame of the target range. For walk cycles this terminates the cycle correctly.<\/p>\n<p><em><span style=\"color: #ff6600;\">Replace:<\/span> <\/em>wipes the target range before the copy is done. Thus any key frame in the target range will be removed first.<\/p>\n<p><em><span style=\"color: #ff6600;\">x-mirror:<\/span><\/em> instead of simply copying the key frames, the pose in each key frame will be mirror copied along the x-axis.<\/p>\n<\/div>\n<\/div>\n<h4>The Presets<\/h4>\n<p>For convenience we have created a Walk Cycle Preset. When you call this preset, the fields are populated as follows:<\/p>\n<ul>\n<li>The Start is set to the startframe of the timeline.<\/li>\n<li>The End is set to the midpoint of the animation range<\/li>\n<li>The Target is set to the midpoint of the animation range<\/li>\n<li>All other options are enabled<\/li>\n<\/ul>\n<h3>Creating a walk Cycle<\/h3>\n<p>The Timeline Copy Tool can also be used for creating walk Cycles. Below is a very brief description for how it works<\/p>\n<p>If you do not yet have made any animations with Blender, then please first checkout how to work with the Dope Sheet and with the Graph Editor. You also can take a look into the Avastar documents:<\/p>\n<ul>\n<li><a href=\"http:\/\/legacy.avastar.online\/reference\/pose-a-character\/\">Pose a Character<\/a><\/li>\n<li><a href=\"http:\/\/legacy.avastar.online\/reference\/my-first-animation\/\">My First Animation<\/a><\/li>\n<\/ul>\n<p>So, now lets go ahead and get something done:<\/p>\n<h4>Defining the seed poses<\/h4>\n<p>You need two simple poses for the beginning.<\/p>\n<ul>\n<li>The Contact Point, that is the moment where both feet are at their maximum distance.<\/li>\n<li>The Passing Point, that is where both feet are closest to each other.<\/li>\n<\/ul>\n<div class=\"row-fluid\">\n<div class=\"span6 rhcol\">\n<div id=\"attachment_21283\" style=\"width: 182px\" class=\"wp-caption aligncenter\"><a href=\"\/wp-content\/uploads\/2012\/11\/walk_cycle_06.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-21283\" class=\"wp-image-21283 size-full\" src=\"https:\/\/avalab.org\/sparkles\/wp-content\/uploads\/2018\/04\/walk_cycle_06.png\" alt=\"walk_cycle_06\" width=\"172\" height=\"322\" \/><\/a><p id=\"caption-attachment-21283\" class=\"wp-caption-text\">Contact Point<\/p><\/div>\n<\/div>\n<div class=\"span6 rhcol\">\n<div id=\"attachment_21284\" style=\"width: 182px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-21284\" class=\"wp-image-21284 size-full\" src=\"https:\/\/avalab.org\/sparkles\/wp-content\/uploads\/2018\/04\/walk_cycle_07.png\" alt=\"walk_cycle_07\" width=\"172\" height=\"322\" \/><p id=\"caption-attachment-21284\" class=\"wp-caption-text\">Passing Point<\/p><\/div>\n<\/div>\n<\/div>\n<p>Place the Contact Point on Frame 0 on the Timeline and place the Passing Point at the first quarter point of the walk cycle. A complete walk cycle with Blender&#8217;s default settings takes about 40 time frames, so the first quarter point is in time frame 10.<\/p>\n<p><a href=\"https:\/\/avalab.org\/sparkles\/wp-content\/uploads\/2018\/04\/walk_cycle_timeline.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-21452\" src=\"https:\/\/avalab.org\/sparkles\/wp-content\/uploads\/2018\/04\/walk_cycle_timeline.png\" alt=\"walk_cycle_timeline\" width=\"640\" height=\"107\" \/><\/a><\/p>\n<div class=\"symple-toggle state-closed \"><h3 class=\"symple-toggle-trigger \">Some useful hints<\/h3><div class=\"symple-toggle-container symple-clearfix\">\n<ul>\n<li>Define the Start and End range of the timeline to match your walk cycle length<\/li>\n<li>Enable automatic key frame insertion (red button on the lower right corner in the timeline window)<\/li>\n<li>Take care to place your initial key frame into frame 0. Otherwise you get a small stutter when the cycle switches from the last frame to the first frame.<\/li>\n<\/ul>\n<\/div><\/div>[break]\n<p>Now you have already done the hard part. The trick is to mirror copy the 2 key frames to the second half of the walk cycle, that is: copy\/mirror paste frame 0 to frame 20 and copy \/ mirror paste frame 10 to frame 30. Then add the initial frame again to the end of the timeline. Here is where you can copy and mirror paste a single keyframe:<\/p>\n<p><a href=\"https:\/\/avalab.org\/sparkles\/wp-content\/uploads\/2018\/04\/walk_cycle_timeline_02.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-24074\" src=\"https:\/\/avalab.org\/sparkles\/wp-content\/uploads\/2018\/04\/walk_cycle_timeline_02.png\" alt=\"walk_cycle_timeline_02\" width=\"650\" height=\"182\" \/><\/a><\/p>\n<p>In detail:<\/p>\n<ul>\n<li>Move the cursor in the timeline to the frame that you want to mirror.<\/li>\n<li>Copy the keyframe (use the copy tool as indicated in the image above)<\/li>\n<li>Move the cursor in the tieline to the frame where you want to place the copy<\/li>\n<li>Mirror paste the keyframe (see image)<\/li>\n<\/ul>\n<p>And here is where the timeline copy tool can be a huge time saver as it can copy \/ mirror paste the entire timeline (or parts of it) with a few clicks.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>[break]The Sparkles Timeline Copy Tool for timeline ranges with the additional ability to x-mirror all poses in a given time range. The mirror copy feature naturally supports the creation of Walk Cycles. Timeline Copy User Guide Define the copy range While your armature is selected and in Pose Mode, open the Tool Shelf and locate [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-95","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/avalab.org\/sparkles\/wp-json\/wp\/v2\/pages\/95","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/avalab.org\/sparkles\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/avalab.org\/sparkles\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/avalab.org\/sparkles\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/avalab.org\/sparkles\/wp-json\/wp\/v2\/comments?post=95"}],"version-history":[{"count":0,"href":"https:\/\/avalab.org\/sparkles\/wp-json\/wp\/v2\/pages\/95\/revisions"}],"wp:attachment":[{"href":"https:\/\/avalab.org\/sparkles\/wp-json\/wp\/v2\/media?parent=95"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/avalab.org\/sparkles\/wp-json\/wp\/v2\/categories?post=95"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/avalab.org\/sparkles\/wp-json\/wp\/v2\/tags?post=95"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}