Archive for September, 2011

Pseudo Threads

Tags: , , ,

Eventually, Flash Player will support Worker Threads to take advantage of multi-core CPUs, but that may be quite a while from now. Today’s article shows you how you can get some concurrency right now by faking threads. Read on for the technique!

Read the rest of this article »


Composing BitmapData Scenes

Tags: , , ,

Since Flash 8, BitmapData has offered a wide range of possibilities to improve performance. Many Flash apps, particularly games, choose to simply display a single, huge BitmapData, render the entire game scene into it and, for the most part, eschew Stage‘s whole system of DisplayObject and DisplayObjectContainer. When you’re doing this or just generally using BitmapData for more than just raster (e.g. JPEG, PNG) image display, you should know your options for composing a BitmapData out of other BitmapData. Today’s article discussing the performance of the two main ways of composing these BitmapData scenes: BitmapData.draw and BitmapData.copyPixels.

Read the rest of this article »


Typesafe Dictionary

Tags: , , , , ,

One of the advantages of using Dictionary instead of Object when mapping key-value pairs is that you can use whatever type of key you want, not just a String. However, a recent comment points out that the keys are still checked with the loose equality operator (==) and you can therefore get clashes like 4 == "4". For today’s article, I’ve written a TypesafeDictionary class that allows you to overcome this limitation. Read on for the implementation, performance testing, and more.

Read the rest of this article »


Proxy Performance

Tags: , , , , , ,

The Flash API has a gem of a class in Proxy. You can use it to customize the behavior of the dot (.), index ([]), delete, and in operators as well as the for-in and for-each-in loops. Today’s article answers a recent comment by exploring the performance implications of all this fancy customizing that Proxy allows.

Read the rest of this article »