v2: Because you deserve better.
You are a developer. As a developer, you need a powerful animation tool that can provide you with both simplicity and complexity at the same time. You need a clearly defined API for auto-completion; one that is nicely documented to make your life easier. That is what the version 2.0 release is all about.
Here are some details regarding the system and it’s features.
- Specify the use of ‘enter frame’ or ‘timer’ as your render method on a per-animation basis.
- Easily complete many common animations using the animation manager with one line of code.
- Create complex sequences of tweens and actions using the virtual timeline.
- Easily animate any property of any filter.
- Advanced color support that includes brightness, contrast, hue, and saturation.
- Common interface used for garbage collecting throughout the entire package.
- Create motion paths for display objects with the option to auto-orient to path.
- Advanced animation support using paths as value maps.
- Extremely extensible architecture.
- Clearly defined API.
- Full-blown documentation using ASDoc (same as Adobe livedocs).
- Eleven example files ranging from basic to advanced usage and theory.
Between the large collection of example files and the thorough documentation, you will be up and running in no time.
Here are some very simple examples of what the syntax for creating animations looks like.
- // Create a new animation manager.
- m_objAnimationManager = new AnimationManager();
- // Move the box to the coordinate (100, 225). The animation will last 500 milliseconds,
- // use the 'cubic out' easing equation, and will be rendered using a timer.
- m_objAnimationManager.move(m_spBox, 100, 225, 500, Transitions.CUBIC_OUT, RenderMethod.TIMER);
- // Create a new virtual timeline. The timeline will be rendered using the 'enter frame' event.
- m_objTimeline = new Timeline(RenderMethod.ENTER_FRAME);
- // Add tweens to animate the box's coordinate to (500, 100). The values after the coordinate
- // values are the first and last keyframes of the tweens. Both tweens will be using the 'sine in and out'
- // easing equation.
- m_objTimeline.addTween(new Tween(m_spBox, "x", 500, 1, 15, Transitions.SINE_IN_AND_OUT));
- m_objTimeline.addTween(new Tween(m_spBox, "y", 100, 7, 22, Transitions.SINE_IN_AND_OUT));
- // Add an action to frame number '7' of the timeline. You can specify seperate functions to be called
- // based on whether the timeline is playing forwards or backwards.
- m_objTimeline.addTween(new Action(doSomethingWhileGoingForwards, ["this is a sample parameter"], doSomethingWhileGoingBackwards, ["this is another sample parameter"], 7));
- // Play the timeline forwards.
The system was developed using FlashDevelop, however everything has been tested in the Flash IDE as well. The bottom line is, whether you are developing from the Flash IDE or another tool that compiles using mxmlc, you will be error free.
Licensed to tween.
The system is licensed under the MIT license. That means that you are free to use it and modify it for both personal and commercial projects. I don’t want your money.
Still not convinced?
Additional information about the system, what it offers, and the theories behind it’s approaches can be found in the PDF document below.
Get the goods.
Below is a zip file that contains the source, example files, documentation, license, and introduction. In the near future, I plan on offering the system on Google Code (or an alternative SVN solution) as well.
There are many other systems out there that will benefit from the use of the Boostworthy AS3 Animation System, such as the Papervision3D project. Since not everyone has these separate systems, additional support for such packages will be offered as ‘plugins’. Right out of the box, you can animate anything, however ‘plugins’ will offer additional features and animation types that are optimized for the specific package they are geared towards.
If you create any plugins of your own and would like to share them with the world, feel free to send me an email using the address listed below.
Many hours of thought and love went into the creation of this system. I hope you will find it as useful as I have when adding that special level of polish to your projects that make them stand out from the crowd. If you have any suggestions, feedback, or just want to talk AS3, send me an email at:
rtaylor11 [-at-] gmail.com
Thank you and enjoy.111 comments