Ever wanted a more “gritty” transition like an alpha fade that flickers a bit or a position tween that jerks around before reaching its destination? Ever thought to yourself “smooth eases are for sissies”? If so, you’re gonna like RoughEase. You can define an ease that it will use as a template (like a general guide – Linear.easeNone is the default) and then it will randomly plot points that wander from that template. The strength parameter controls how far from the template ease the points are allowed to go (a small number like 0.1 keeps it very close to the template ease whereas a larger number like 2 creates much larger jumps). You can also control the number of points in the ease, making it jerk more or less frequently. And lastly, you can associate a name with each RoughEase instance and retrieve it later like RoughEase.byName(“myEaseName”). RoughEase is included in all the tweening platform downloads and is available in AS2 and AS3.
Video Lesson: TimelineLite/Max Basics
If you’re familiar with TweenLite and/or TweenMax but haven’t tried the new TimelineLite or TimelineMax classes yet, don’t missing out. They make sequencing and managing groups of tweens fun. Get acquainted with the basics by watching this 16 minute video:
GreenSock Tweening Platform v11 Released
After hundreds of development hours, countless caffine-fueled late nights, and a level of preoccupation with tweening that borders on obsessive-compulsive, version 11 is born. This is no minor update. It is by far the most significant (and extensive) upgrade ever.
Getting Started Tweening
This article will help you get up and running with the GreenSock Tweening Platform. It covers installation, importing, basic tweening, special properties, plugins, choosing which engine to use (TweenLite/Max/Nano), sequencing with TimelineLite, and some tips and tricks. If your new to the GreenSock Tweening Platform, this is the place to start.
TimelineMax – Sequence/Group Multiple Tweens, Control Them as a Whole
TimelineMax extends TimelineLite, offering exactly the same functionality plus useful (but non-essential) features like AS3 event dispatching, repeat, repeatDelay, yoyo, currentLabel, addCallback(), removeCallback(), tweenTo(), tweenFromTo(), getLabelAfter(), getLabelBefore(), and getActive() (and probably more in the future). It is the ultimate sequencing tool. Think of a TimelineMax instance like a virtual MovieClip timeline or a container where you position tweens (or other timelines) over the course of time.
Licensing: "Free" != Better
Open source projects are great. Many provide elegant, refined code for free. They can save hours of development time and hassle. They’re often a jumping-off point for up-and-coming developers to share their innovation with the rest of the community, inspiring others to write better code. Of course there are also plenty of open source projects that are riddled with bugs, poorly documented, and downright dangerous to use. The web is littered with abandoned projects that once seemed promising. It’s like a clearance bin you’d find at a discount store – there may be some treasures in there, but you’ll have to dig through a lot of garbage to find them.
Over the years, I’ve seen quite a few open source tweening engines pop onto the scene, get some buzz, and then gradually stagnate and fade off the scene. Many stay in Beta for ages. Some contain known, unpatched bugs. The community usually does a good job of eventually recognizing quality solutions and gravitating towards them, but there are always people who try out the “latest and greatest” thing, only to be disappointed in the end as it stagnates or fails to mature. Don’t get me wrong – I’m NOT saying all other tweening projects have suffered this fate or are “bad” in some way. In fact, I have spoken directly with some of the authors like Grant Skinner (GTween), Zeh Fernando (Tweener), and Moses Gunesh (Fuse, GoASAP). I have the utmost respect for each of them, and this article isn’t meant to diminish anyone’s hard work or generosity in the least. From my perspective, however, there are some common frailties of open source projects in general that I have observed, and my goal has simply been to figure out a way to protect the GreenSock Tweening Platform from falling victim to them. I have learned that one of the key factors in keeping a project like TweenLite thriving is actually the licensing model.
Last Call for v11 Input
Before officially releasing v11 of the GreenSock tweening platform, I wanted to solicit feedback from the community one last time, particularly on TimelineLite/Max because after the API is locked down, it’s pretty tough to change. Here are the specific questions I’d like feedback on (please feel free to offer feedback/suggestions about topics that aren’t on this list too):
- 1) TimelineLite & TimelineMax – how does the API “feel”? – Does it give you the power and flexibility you need without being bloated? Have you found yourself needing some kind of functionality that’s missing? Is everything intuitive?
- 2) Should ALL plugins be activated in TweenMax by default? – I haven’t done so because I’m afraid it may be seen as “bloated” with the extra kb. On the other hand, it’s not terribly difficult to open the class file and prevent activation of certain plugins if you need to conserve file size, and activating all plugins would prevent some potential confusion for newbies. Keep in mind that there will likely be more and more plugins over time that offer added functionality, so if they’re all activated, TweenMax may hit 30kb at some point in the distant future.
- 3) Should I eliminate the default plugin activations in TweenLite? – This would cut the default file size by around 40%. When I asked this question in v10, I got a fair amount of feedback saying backwards compatibility was much more important than small file size, especially because end users could delete the activation code inside the class file if they needed smaller file size. Then again, TweenLite is supposed to prioritize small file size and a lot of end users are either scared to or don’t understand how to delete the activation code in the class file.
- 4) Are there any important features missing? – I’m trying to prevent bloat while at the same time provide tremendous flexibility, power, and speed. It’s a balancing act. Let me know if you were really hoping a particular feature would make its way into one of the classes.
- 5) What is your favorite feature (or features) that absolutely, positively shouldn’t get cut? – I’m not fishing for compliments here – it’s just helpful to know what the community values so that those features don’t end up on the cutting room floor (so to speak).
- 6) Should “repeat” be renamed “cycles”? – “repeat” seems more common, but some have suggested that “cycles” is more intuitive. If it gets changed to “cycles”, what would you name “repeatDelay”?
- 7) Should append() and prepend() be eliminated from the timeline classes? – One developer suggested eliminating append() and prepend() because they’re not absolutely necessary. For example, append() could be accomplished with myTimeline.insert(myTween, myTimeline.duration). prepend() is more difficult, though. Personally, I find them very intuitive for building sequences and they don’t cost much kb.
If you haven’t tried v11 yet, especially the TimelineLite and TimelineMax classes, I’d highly recommend it.
GreenSock Tweening Platform v11 Beta (Introducing TimelineLite/Max)
On the heels of releasing the huge v10 update that introduced the plugin architecture, I’ve been hard at work on an even bigger release that delivers quite a few exiting improvements to the GreenSock Tweening Platform. Version 11 represents some significant changes to the guts of the code, so before officially releasing it, I wanted to post it in “Beta” form to give everyone a chance to not only test the code but also share their thoughts and suggestions. I’m also thrilled to announce that Grant Skinner (author of gTween) will be collaborating with me on v11 (see separate announcement).
By far the biggest news in terms of functionality is the addition of the “TimelineLite” and “TimelineMax” classes. They make building and managing sequences/groups of tweens simple. They originated from TweenGroup, blossoming into something much more powerful, flexible, and intuitive. Think of the timeline classes much like MovieClip timelines in the Flash IDE where you position individual tweens over the course of time.
gTween and TweenLite/Max Unite?
Grant Skinner is one of the most well-respected Flash developers in the world. His inspiring work and generous contributions to the Flash community have earned him a stellar reputation and countless fans. So it is with great excitement that I announce our collaboration on the upcoming release of TweenLite and TweenMax. Grant’s recent Beta offerings of his gTween engine showed great promise and as we talked, it became obvious that we have similar objectives. We figured it made a lot of sense to put our heads together and build on TweenLite and TweenMax, creating a unified platform that’s better, faster, and more flexible than ever. Grant has a proven track record of looking for ways to benefit the overall Flash community, and this is just one more example. It is truly an honor to have his valuable input.
While we’re confident that the collaboration will bear good fruit, there is always a chance that we’ll hit an impasse. Thus far, however, we seem to share remarkably similar goals, convictions, and…most importantly…initials – “Grant Skinner” and “GreenSock”. Coincidence or fate?
Accompanying this announcement is v11 Beta 1 of the GreenSock Tweening Platform. It’s a work-in-progress, and we welcome your input. Get the details and code here.
Announcing TweenLite/Max Version 10
This update of TweenLite and TweenMax is probably the most significant ever, so I figured the announcement warranted a page of its own to describe all the exciting enhancements and to answer common questions.Full documentation still resides on the regular TweenLite and TweenMax pages. Version 10 delivers a whole new level of flexibility, performance, and tweenable goodness…







