…and especially enthusiastic about motion tweens in Flash…
If you’ve created motion tweens in versions of Flash Past, chances are you’ve pressed F6 a few times in order to insert new keyframes. Doing so has probably become very familiar to you as well – you want to change something for an animation, then you press F6. Automatically. It’s a habit.
You can still use F6 to insert static keyframes on the Timeline (that you might turn into a motion tween), and you can even use them to insert property keyframes within a tween span too. However, within a tween span pressing F6 will insert a property keyframe on every single property currently associated with the target instance. This is usually way more keyframes than you actually need at that frame, so using F6 on a tween span is usually not the best thing to do for your animation - especially if you intend to continue modifying it. You’ll likely end up with unexpected things happening in your animation. So in Flash CS4, you might want to work at breaking the F6 habit.
Instead of pressing F6, you can insert keyframes other ways:
This blog specializes in the new motion model of Flash CS4, and is brought to you by team tween of Flash at Adobe. The blog will includes tips, techniques, and info on tweening in Flash using the Timeline and Motion Editor (as well as some stuff about motion runtime with code). From time to time, we might also talk about ActionScript 3.0. So if you're interested in tweens, this blog is for you. We also want to hear your feedback in the comments. All views expressed here are those of the authors, and do not necessarily represent the opinion or views of Adobe Systems Inc.

Lamvietvinh
February 7th, 2009 at 5:52 pm
Toi muon tai ve flash player ver 8
gludion
February 23rd, 2009 at 6:27 am
I just tested new motion tween for a couple of hours, then resigned (shame on me ;))
I noticed I had some difficulties to make something that was quite convenient (and very simple) with classic tween: i-e a timeline animating a sub-clip, but this timeline would have some labels “anim1″, “anim2″, etc.. Each label being a specific looping move (example anim1= left-right, anim2= up-down,…).
The sub-clip can also have its own animations (subAnim1, subAnim2, etc..)
The important point is that if the subclip is currently playing subAnim2, switching the playHead in the parent clip (eg. jumping from Anim1 to Anim2) should preserve the current state of the subclip.
That’s common use of clip tree.
In real game production projects (mostly Nickelodeon games), we have used this technique for animating characters. For example animating the clip ‘head_mc” (a clip with internal state, and lipsynch animation) in a clip “character_mc” (possibly containing many animations “walk”, “turnleft”, “run” etc..).
Our most complex puppets contain 20 to 30 animations, each animation involving between 3 and 8 keyframes.
I can send you an example file if you wish.
Now my question related to new motion twins:
- it seems that a new motion twin pervades the full layer, for example it seems impossible that “anim1″ is a new motion twin, while “anim2″ is a classic one.
- it seems that creating a brand new motion for anim2 is difficult. Actually it seems that is the same motion tween at anim1 but with a longer duration. It seems to be impossible to create a brand new path for a brand new tween: instead it’s the old path that is concanated with with a new one.
- it can lead to some “mess” with the path: creating unwanted small looping path, unwanted (or mis-created) control points… Ok, that shouldn’t be a problem by itself but it seems impossible to edit the path : removing those unwanted points, etc.. With classic tween + motion guides, it was possible to edit the guide.
- it seems that it’s difficult to set local properties at some keyframe: for example if I set a brightness effect at some keyframe of anim8, it will have a (brightness) impact on anim1, that’s not very convenient.
- I don’t understand why it’s not allowed to insert a blank keyframe in a frame located after a motion tween. However, creating the keyframe on another layer + dragging it on the layer seems to work. Dragging a classic tween breaks the classic tween.
In conclusion:
- it seems that new motion tweens make it impossible to split a timeline in many, independant, animations animating an instance of subClip.
- Moreover, I don’t understand why a clip instance cannot be animated by a new tween at some location of the timeline, AND by a classic tween at some other location.
The logic of Flash (clips, hierarchies of clips, timelines) should still allow this. (I prefer to avoid harsh comments about how as3 seems to have just “forgot” and incidentally “broke” about the same fundamental features of Flash, but it’s probably another subject.. Such thing already happened in the past: in Flash5, timelines with more than 15 keyframes would randomly break instance preservation of sub-clips. This bug was solved in FlashMX. So, I still have some hope ;))
Is there something I missed ? I just spent some time with CS4, and probably didn’t investigate as much as I should have.
Sky
April 23rd, 2009 at 1:32 am
I think that the lack normal usage for F6 on motion tweens is one of the worse changes introduced to the new flash. It makes all the things take twice as long without any significant impact on results… so till the Patch I use motion tweens only for 3D tweening - whole the rest goes on classic tweens
flash_LA
April 23rd, 2009 at 6:49 am
I agree with Sky…..grrrrrr!
Jen deHaan
May 5th, 2009 at 3:39 pm
@Sky/Flash_LA: Please let us know the workflow issues with the change in using F6. I understand it takes some getting used to (I know I tripped up for awhile), but once my automatic tendencies converted to the new workflow I noticed that things were faster as opposed to slower. The cases where things remain slower we definitely want to know about!
@gludion: Any files you’re able to share would be much appreciated (jdh @ adobe). Regarding the other comments:
“it seems that a new motion twin pervades the full layer, for example it seems impossible that “anim1″ is a new motion twin, while “anim2″ is a classic one.”
Yes, unfortunately we cannot support both forms of animation on the same layer (IK shares this limitation) at this time.
“it seems that creating a brand new motion for anim2 is difficult. Actually it seems that is the same motion tween at anim1 but with a longer duration. It seems to be impossible to create a brand new path for a brand new tween: instead it’s the old path that is concanated with with a new one.”
I think I’ll need some more details here about the way the layer’s working. I have multuple spans on the same layer right next to each other, and the paths are fully independent from each other. I’m guessing the issue is something else…
“it can lead to some “mess” with the path: creating unwanted small looping path, unwanted (or mis-created) control points… Ok, that shouldn’t be a problem by itself but it seems impossible to edit the path : removing those unwanted points, etc.. With classic tween + motion guides, it was possible to edit the guide.”
Good news is you can edit guides exactly the same with new tweens if you want - any path can be pasted onto a tween.
Stage editing of an existing path can get complicated once there are a lot of keyframes in the path. Sometimes the Subselection tool instead of editing with the Selection tool can help (may involve removing keyframes on the Stage, or in the motion Editor), but if things get too complex, you may want to copy and paste the motion path to a static frame, modify as a path, and then re-paste it onto the motion.
Or, you may want to edit the path entirely as a static path, and then paste it onto the tween when you’re finished.
To remove small loops, I use the Motion Editor. Go to the location and then Alt-click the keyframes on both sides in the motion editor to change it to a corner point.
” it seems that it’s difficult to set local properties at some keyframe: for example if I set a brightness effect at some keyframe of anim8, it will have a (brightness) impact on anim1, that’s not very convenient.”
Hmm — that doesn’t sound right if there’s no relation between them. The file or details about the scenario would be helpful, as I haven’t seen this happen before in my animations.
“I don’t understand why it’s not allowed to insert a blank keyframe in a frame located after a motion tween. However, creating the keyframe on another layer + dragging it on the layer seems to work. Dragging a classic tween breaks the classic tween.”
Do you mean inserting a keyframe? You can insert a blank keyframe and draw etc on a tween layer after a motion span (through context click, main menu, or shortcut). Indeed, classic and new motion cannot share a layer unfortunately. If there is a particular case we have missed, please let us know.
“I don’t understand why a clip instance cannot be animated by a new tween at some location of the timeline, AND by a classic tween at some other location. ”
This would be possible, just not on the same layer. Although I’ve mostly used new tweens in CS4, I’ve nested classic tweens and used new motion on the parent clips. Again, it sounds like I should see the file in particular. I can’t think of a limitation in regards to this though, other than the sharing a single layer…
Thanks for the feedback, all!
Jen.
Subhash Chandra Tiwari
June 3rd, 2009 at 10:28 pm
I want learn flash
MrNah
June 18th, 2009 at 8:34 pm
Jen,
I’m having trouble with a certain aspect of CS4’s new tweens. I’m making a long timeline animation with new motion tweens where various animating objects on different layers need to be in sync (i.e. move at the same time / with each other). I’ve got it all layed out and its fine. However, I want to all of the motion on all of the layers delayed for 30 frames in the middle of my animation. In CS3, I would just select a frame where I would want the delay to happen across all layers (e.g. select frame 5 on layer 1, press shift, select frame 5 on layer 10), and just insert a bunch of keyframes (press f5). Then all the tweens following that would be delayed.
I can’t seem to figure out a way to do it besides going to the motion editor of each layer and dragging every single property change back to where I want it, re-aligning everything along the way. How do I make changes across layers like I used to?
MrNah
June 18th, 2009 at 8:38 pm
OK, figured it out:
CNTRL - CLICK to select an individual frame w/in a tween span. Kinda tricky.
Jen deHaan
June 23rd, 2009 at 12:43 pm
@MrNah: Yes, there are some things to get used to - ctrl+click being one of them. Hopefully it will start feeling natural (at least it did for me after a bit of heavy usage). In general, the new motion spans function a lot like the “span-based selection” mode that has been in Flash. Here’s an article that might help in regards to this:
http://www.adobe.com/devnet/flash/learning_guide/animation/part06.html
This page covers making selections: http://www.adobe.com/devnet/flash/learning_guide/animation/part06_03.html
And this page covers key modifiers:
http://www.adobe.com/devnet/flash/learning_guide/animation/part06_06.html
And this article is a migration guide for those updating skillsets from classic tweens:
http://www.adobe.com/devnet/flash/articles/motion_migration_guide.html
Hope that helps!
Jen.
Scuzzi
July 10th, 2009 at 12:35 am
Hi all,
Do any of you know if there is an easy way to scale entire animations down, including the motion paths etc. I usually do this for similar banners. For example 336×280, scaled down to 300×250, scaled down to 180×150.
With classic tweens it’s just a question of clicking the edit multiple frames button, select all and then use the transformation tool, or the scale shortcut to scale the whole thing down.
With the new motion tweens I can’t get this to work properly?
Any ideas… Thanks,
Scuzzi.
TruPlaya
July 21st, 2009 at 12:14 pm
I have the same problem as Scuzzi. Any tips would be greatly appreciated.
TP
Ric
August 11th, 2009 at 8:37 pm
MrNah and Jen, This sounds a lot like Flash 5 where span-based frame selection was the default. It wasn’t until Flash MX that it reverted to single-frame selection as the default and span-based as an option under preferences. How disappointing that we are now back in the year 2000 and will have to wait for CS5 to revert back to something that most people would prefer anyway.
Jen, is there an option to disable motion spans as the default?
Jen deHaan
August 17th, 2009 at 11:27 pm
@Ric: There isn’t a way to disable them as the default, although you can customize keyboard shortcuts as usual. We’re aware of the selection issues and preferences (internally and from the community) - preference for moving spans vs moving frames - it’s great to hear this kind of feedback so we can gage what users want to see.
Marie
October 6th, 2009 at 8:07 am
Same issue as TruPlaya and Scuzzi… the new motion tween scaling issue. Especially on the 3D tween tool.
Jen deHaan
October 6th, 2009 at 9:41 am
@Marie/TruPlaya/Scuzzi: Sorry bout that. Yes, you can scale the tween with the motion path. Just go to the first frame of the tween, and select the instance and path using the Free Transform Tool (hold Shift to multi-select). Then just scale it. Because you’re at the first frame, it will apply across the entire tween.
However, IF you have previously scaled anything in the tween, doing this is applied to the first keyframe and the tween would animate to the earlier scaling (the auto-keyframing feature can be a detriment in this situation, especially when it comes to scaling due to the percentages being reset). In this situation, I would recommend scaling in the motion editor. Go to the Scale X and Y properties, press the Alt key while dragging the curve up and down. This scales the entire scale animation at the same time (same as edit multiple keyframes). If you need to proportionally scale the path, select it and use Free Transform or enter a new value in the Transform panel.
Jen deHaan
October 6th, 2009 at 10:03 am
@Marie/TruPlaya/Scuzzi: I made a quick post about this here: http://flashthusiast.com/2009/10/06/scaling-and-moving-new-motion-tweens-in-flash-cs4/
Johan Rhys
January 13th, 2010 at 8:29 am
http://tinyurl.com/ycxl36r