AS3 Quickie – drawWithQuality()

Since Flash Player 9, we’ve been able to use the BitmapData.draw() method in order to capture visual data from a display object. The major limitation of using this method, is that it will render the visual at the stage quality with which the swf has been embedded/compiled. One trick to get around this is to switch the stage quality on the fly, via ActionScript – yet this is not a supported workflow. With Flash Player 11.3 we have a new method with which to render drawn visuals at any desited stage quality: BitmapData.drawWithQuality(). In the example below, the swf is

Continue reading »

AS3 Quickie – Event.VIDEO_FRAME and Camera.drawToBitmapData()

In the past, if we wanted to copy some data from a camera object to a bitmap, we would need to draw the data from the display object using flash.display.BitmapData.draw() and then manipulate it in some way. This is problematic at times… if there is no way of knowing whether we have valid bitmap data to draw from! Using Flash Player 11.4, we have a number of alternatives to this workflow which allow us to both listen for an event to fire once a frame is available to have its data harvested, and a number of methods from retrieving the

Continue reading »

AS3 Quickie – Attach a Camera to StageVideo

In the past, we’ve been able to attach a local camera to Video display objects within Flash Player with relative ease. The flash.media.Video object, of course, is part of the traditional display list and is not accelerated by the system GPU whatsoever. Using the newer flash.media.StageVideo object, we can implement a GPU-accelerated video display beneath the Flash display list… but previous to Flash Player 11.4 we haven’t been able to attach a camera to StageVideo as we could with Video. Thankfully, now we can! If you have a camera attached to whatever you are using to read this, try out

Continue reading »

AS3 Quickie – Frame Label Events

With Flash Player 11.3 and above, the ability to listen for a frame label event is now included in the runtimes. For example; if you have a MovieClip symbol with a certain set of animation within it, and you have a number of frame labels defined upon the symbol’s timeline… you can now listen for these particular frames through their individual label events and then respond to them in some way. Requires Flash Player 11.3 or above! To get this working only takes a few steps in your ActionScript code. For each frame label you wish to respond to, you

Continue reading »

AS3 Quickie: Check if a variable is Numeric

I’m still doing loads of ActionScript work in both my regular job and in side projects – so thought I might start posting some tiny, useful snippets of AS3 here as I encounter them. This is, I suppose, both for my own archive and for anyone out in the community that cares to pick up on these bits and pieces. So this quickie comes from a project where I actually have an AIR application running as a service on a Windows 2008 virtual machine. The application monitors a remote folder for uploads from a web application in order to process

Continue reading »

Cookbook Draft is Half-Way Cooked

Yeah- I hit a pretty big milestone this week with the draft for my book on Android and Flash Platform development (the book is still untitled). I’ve submitted 5 chapters and am mid-way through a 6th. This actually places me about a month and a half ahead of schedule, which is pretty darn good. 180 pages!!! Some Thoughts The process so far has been a lot like writing a bunch of small articles. I’ve handled it in a similar way to writing an album – one track/chapter at a time. Things are definitely overwhelming if you think about the entire

Continue reading »

ActionScript 3 Google Analytics API

Over on the Google Analytics weblog, they’ve posted about a new (official) AS3 library for GA! Apparently, the library is pretty robust, featuring; Metrics, Dimensions, Filters, Sequenced Pagination, and Data Views. I’ve dealt with Google Analytics and Flash in the past using the Google Analytics Tracking For Adobe Flash ActionScript 3 API which, from my experience, is still very useful. I even did a session on it at the FITC Unconference during Adobe MAX 2009. Grab the code or check out a quickstart.

Continue reading »