Skip navigation
Help

SWF

warning: Creating default object from empty value in /var/www/vhosts/sayforward.com/subdomains/recorder/httpdocs/modules/taxonomy/taxonomy.pages.inc on line 33.

Announcing CreateJS

We’ve been working really hard on a lot of great stuff over the last couple months, and I’m thrilled finally to be able to share it with the world.

CreateJS

We’re going to be releasing EaselJS and a number of companion libraries under the new umbrella name “CreateJS”. CreateJS will be a suite of modular libraries and tools which work together to enable rich interactive content on open web technologies (aka HTML5). These libraries will be designed so that they can work completely independently, or you can mix and match as suits your needs. The initial offerings will be: EaselJS, TweenJS, SoundJS, and PreloadJS.

Along with the new name, we’ll also be launching a new site at createjs.com which will consolidate demos, docs, tutorials, community, and showcases for all of the libraries and tools. If you have a project or tutorial you’d like to see featured, tweet it to us: @createjs.

EaselJS

EaselJS provides a display list and interactive model for working with rich graphics on top of the HTML5 canvas (and beyond). It provides an API that is familiar to Flash developers, but embraces javascript sensibilities.

We’re planning a minor v0.4.1 release soon, which includes bug fixes and some minor feature additions. Following that, work will commence on v0.5, which will focus on some larger features, API clean up and consistency, and improved documentation. If you have features you’d like to see in v0.5, add them to the issue list, or tweet them to @createjs, and we’ll see what we can do.

Along with the CreateJS site launch, we will be releasing much improved examples, and links to resources and tutorials developed by the community. Again, let us know if you’ve written a tutorial, or have something cool you’ve built with EaselJS you’d like us to showcase.

TweenJS

TweenJS is a tweening and animation library that works with EaselJS or independently. It offers a deceptively simple interface, and a huge amount of power with support for delays, easing, callbacks, non-numeric properties, sequencing, and plugins.

TweenJS v0.2 will be tagged soon. It will incorporate some fixes and tweaks, along with a full plugin model. After v0.2 our next focus will be on performance and providing better demos and documentation in preparation for the CreateJS launch.

SoundJS

Audio is currently a mess in HTML5, but SoundJS works to abstract away the problems and makes adding sound to your games or rich experiences much easier.

We have a huge v0.2 release in testing right now. It is a ground up rewrite that incorporates a target plugin model that allows you to prioritize what APIs you’d like to use to play audio. For example, you could choose to prioritize WebAudio, then audio tags, then Flash audio. You can query for capabilities (depending on the plugin that is used), and it offers seamless progressive enhancement (for example, panning will work in WebAudio, but will be quietly ignored in HTML audio). Following v0.2 our focus will move to fixing bugs, and delivering plugins for mobile and application platforms like PhoneGap and Win8 Metro for a v0.2.1 release.

PreloadJS

The newest addition to the suite, PreloadJS will make it easy to preload your assets: images, sounds, JS, data, or others. It will use XHR2 to provide real progress information when available, or fall back to tag loading and eased progress when it isn’t. It allows multiple queues, multiple connections, pausing queues, and a lot more. We’re hoping to get a v0.1 build out in the next couple weeks for people to start playing with, and then will focus on fixing bugs, improving documentation, and just generally maturing things for v0.1.1.

Zoë

Zoë is an open source AIR application that converts SWF animations to sprite sheets. It supports some advanced features, like configurable frame reuse and multi-image sheets (important for mobile).

For Zoë v0.2 we’re planning to add support for reading the symbols in a SWF, and letting you select multiple symbols to include in your exported sprite sheet. It’s also worth mentioning here that Flash Pro CS6 will include direct support for exporting sprite sheets for EaselJS, offering a more integrated workflow than Zoë can provide.

Toolkit for CreateJS

We’ve partnered with Adobe to build a fantastic tool for leveraging all of the existing Flash Pro skill that’s out there to build amazing HTML5 experiences. The Toolkit for CreateJS is an extension for Flash Pro that allows you to publish content (including symbols, vectors, animations, bitmaps, sound, and text) for CreateJS & HTML5 as a library of scriptable, instantiable objects.

We’ve worked really hard to develop a workflow that makes sense, and to generate code that is completely human readable, and very small (in some cases the output is smaller than SWF when zlib compressed). You can even write JS code on the Flash timeline, and it will be injected into your published tweens.

Exciting times! If you’d like to stay on top of CreateJS updates, please follow @createjs on Twitter.

gskinner.com | gBlog - News and views on Flash, Flex, ActionScript, and web technologies

0
Your rating: None

You load an external SWF file at runtime using Loader.load() method. You extract the file via
Loader.content, cast it to MovieClip, and store in a MovieClip variable.
You add a listener to mouse clicks to your loaded MovieClip only to discover
that it does not respond to clicks. Isn't Loader.content in the case of loading an SWF file
a MovieClip? We discuss the issue and give examples. Flash and AS3 source files included.

0
Your rating: None

Welcome to the preview release of codename "Alchemy." Alchemy is a research project that allows users to compile C and C++ code that is targeted to run on the open source ActionScript Virtual Machine (AVM2). The purpose of this preview is to assess the level of community interest in reusing existing C and C++ libraries in Web applications that run on Adobe® Flash® Player and Adobe AIR®.

With Alchemy, Web application developers can now reuse hundreds of millions of lines of existing open source C and C++ client or server-side code on the Flash Platform.  Alchemy brings the power of high performance C and C++ libraries to Web applications with minimal degradation on AVM2.  The C/C++ code is compiled to ActionScript 3.0 as a SWF or SWC that runs on Adobe Flash Player 10 or Adobe AIR 1.5.

Alchemy is primarily intended to be used with C/C++ libraries that have few operating system dependencies. Ideally suited for computation-intensive use cases, such as audio/video transcoding, data manipulation, XML parsing, cryptographic functions or physics simulation, performance can be considerably faster than ActionScript 3.0 and anywhere from 2-10x slower than native C/C++ code. Alchemy is not intended for general development of SWF applications using C/C++.

Download and Discuss


With Alchemy, it is easy bridge between C/C++ and ActionScript 3.0 to expand the capabilities of applications on the Flash Platform, while ensuring that the generated SWCs and SWFs cannot bypass existing Flash Player security protections.

Adobe is providing some example libraries, and developers are encouraged to share their ported libraries.

0
Your rating: None

I just posted my thoughts on the Flash Player team blog, about the recent announcements we have made regarding Flash Player support on mobile browsers.

As a long time Flash developer who loves Flash, I can tell you that what is happening right now is a good thing.

First, we are making bold moves like stopping the development of the browser plug-in on mobile browsers in favor of investing further in Flash-based apps packaged with AIR. Playing existing content sounds like a great idea on paper, but we know it doesn't always work that way -- you need to author for mobile and think for mobile, but from talking to customers and looking at content today, we realize that very few people are targeting the plug-in on mobile browsers.

Flash developers have always created some of the most stunning, immersive, emotional experiences on the web. They've always pushed the cutting edge, with few restrictions. But mobile is different, and developers need to adapt to different constraints and affordances. Flash lets you do that, whether you are taking advantage of efficient hardware accelerated video playback or native support for features like multitouch and accelerometers. But it's costly to create beautiful experiences optimized for mobile browsers — a cost that doesn't make sense if people using one of the most popular mobile platforms can't see the content you create.

Existing content for desktops didn't always look as magical on phones as people were used to seeing with Flash Player on their desktops. Content optimized for desktops with big screens and beefy processors can’t look as good on a phone or a tablet it was never designed for. This really had an impact on the trust that people had in Flash, and this perception made it hard to start new projects optimized for mobile browsers. There was just no appetite to even try doing this.

In contrast, you guys create super nice Flash-based apps packaged with AIR and delivering them to app stores across iOS, Android, and BlackBerry devices – by the end of this year, you will be able to reach over 350 million tablets and smartphones. Have you seen an article from a journalist saying that MachinariumComb over Charlie, or TweetHunt are horrible ? No, people love those games. Your work fits the trend the entire industry is seeing: even as we're excited about improvements in mobile browsers, the most compelling, immersive experiences for mobile devices are delivered through apps, optimized from the ground up for mobile. We're helping you guys leverage your talent – the same skills in ActionScript and tooling – to reach that huge, growing market of smartphone and tablet users with amazing apps. Flash makes it possible for developers who craft beautiful desktop experiences to deliver great mobile app experiences. We are going to really focus on that, creating the best solution to build stunning interactive content, games, and video apps across all screens.

Flash Player on the desktop continues to show a path for the consistent, super duper experiences that are impossible to deliver to over a billion people with any other technology. For example, Flash Player 11 was released only a month ago, and it now enables fluid, cinematic hardware accelerated 2D and 3D visuals for more people on the web than any other technology. Flash Player uniquely does for the desktop what apps do for phones and tablets: it helps ensure that what you imagine is exactly what your users will see. Flash Player remains the best technology for delivering premium experiences on the desktop, period. Focusing helps us make sure that we continue to drive that continued innovation.

We are not stepping out of the mobile space with Flash, we are just focusing on what makes sense and where Flash looks great, standalone apps with AIR.

In the long term, we're actively working on an ambitious future for Flash. The implementation details may change, as we've been talking about today. We believe that the DNA of Flash doesn't reside in those implementation details, but in our promise to make it easy to create and deliver the most amazing experiences everywhere. We're focusing on fulfilling that promise, and we’re excited to see what the future – and our community – will bring.

0
Your rating: None

Tink posted a great library manager for using external assets in your flash projects. When you start getting deep in projects you end up either having to roll your own that might end up being project specific, or you can just grab this from Tink and it is nice and standardized now for you.

Here’s and example of our Library & LibraryManager classes that we use in some of our Flex and AS 3.0 projects to manage our external assets stored in SWF’s.

The classes enabled you to create multiple libraries of embedded (retaining and giving access to code) or loaded SWF’s.

You can create instance of Library wherever you want, but you can also create them through the LibraryManager giving you a single class to gain access to all your Library instances.

As you develop more and more flash/flex projects with AS3 these types of utilities come in handy. Another that comes to mind is Arthur Debert’s BulkLoader and polygonal labs Data Structures for Game Developers that are all great kits.

Add Tink’s Library and LibraryManager to your arsenal today! Thanks Tink.

0
Your rating: None