I am in Brighton for Flash on the Beach 2009 (amazing conference as usual). I gave a presentation on Adobe AIR yesterday, titled Advanced Desktop Development with Adobe AIR , which went well. I covered how to accomplish and approach a number of development tasks when working with AIR, and also talked about a couple of new features that we are working on.
I have posted the slides for the session, which you can grab from here .
I don’t have a formal computer science training / education, so I never got the chance to learn about working with low level data structures (bits and bytes). I have wanted to learn this for some time, but had difficulty finding resources for it which didn’t assume I had a computer science degree.
Well, yesterday, FITC posted all of the video sessions from FITC Toronto, and I spent some time watching Lee Brimelow’s presentation on working with ByteArrays. It is a really great session, that provides a clear and solid foundation and understanding of working with ByteArrays and bits and bytes.
Just a quick note, but we have updated the Flash Player 10 System requirements page. The update adds support for various browsers on Microsoft Windows 7 and Mac 10.6 (Snow Leopard).
You can view the Flash Player 10 system requirements here.
Below is a matrix that shows supported runtimes for Rich Runtime browser plugins. The matrix compares the latest versions of runtimes, which are supported by the companies that create them.
The runtimes covered include:
Information is obtained from the runtime’s websites (linked below).
A green box indicates that the runtime is supported on the specified platform, while a red box indicates the runtime is not supported and / or not available for the specified platform.
For the past month or two, I have been spending time building a game (something I haven’t done since my Flash 4 days). This has really been a lot of fun, as it has allowed me to use some of the Flash Player APIs which I really haven’t had a chance or need to use before.
One thing which I have been (slowly) learning about are using Matrix transformations on DisplayObjects. I made a post earlier showing how (with much, much help from Senocular), I was able to use Matrix to do hit tests using BitmapData.hitTest on DisplayObjects which have had transformations applied to them (in this case, rotation).
I recently bought my first DSLR, the Nikon D90, which I have been having a blast with. One of the cool features of the camera, is that it supports creating HD video clips (of up to 5 minutes) (view an example here). However, the way the clips are created seems to confuse Adobe Premiere Pro CS4, which won’t open or import the clips without a little work on your part.
I found instructions here on how to use the terminal to get Premiere to understand the clips, and based on that (with some tweaks and fixes), I have put together a bash script that will “fix” all of the Nikon D90 AVI clips in a directory so that Premiere Pro will recognize them.
I am fortunate to have been invited to speak again at Flash on the Beach in Brighton this fall. The event is September 20th - 23rd, in Brighton, England, and is hands down the top Flash Conference in Europe (and a contender for top worldwide).
I will be doing a session titled “Advanced Desktop Development with Adobe AIR” which will cover some useful tricks and techniques when developing AIR Applications. I will also be going over some next generation Adobe AIR features and APIs.
Just a quick note, but I have updated my “fyi” Firefox Ubiquity command to work with the latest version of Ubiquity (0.5).
You can find more information on the command, as well as install it from here.
If you have read my blog any this week, you have probably noticed that I have been doing some basic research on collision detection within the Flash Player. As part of this, I have put together a simple test suite, showing the performance of a couple of different techniques for checking for collision. This is by no means meant to be exhaustive (and currently tilts towards boundary collision). However, I wanted to post the results as the current information is useful (if nothing more than to confirm existing assumptions), and perhaps generate more tests an ideas around collision detection.
Yesterday I blogged about how you can use the BitmapData.hitTest API to do collision detection between the visible parts of multiple DisplayObject instances. This works very well, but as some of the BitmapData apis can be cpu intensive (particularly new BitmapData and BitmapData.draw) you have to take care to make sure that performance does not get out of hand.
This post will discuss a number of approaches for optimizing collision detection when using BitmapData.hitTest.