Actionscript & 3D

Visit ADOBE Flash Platform web site !

3D in Flash Player

Watch Molehill 3D API show by Thibault Imbert on AdobeTV !

Since the last Adobe MAX event in 2o1o, actionscript enhancements are hightly 3D oriented. Indeed the last few days Adobe has officialy announced the last offical version of the Flash Player 10.2 and has published a series of new releases, especially about 3D possibilities :

2nd March Adobe AIR and Adobe Flash Player Incubator
2nd March Pixel Bender 3D prerelease
8th March Adobe Flash Player 10.3 Beta

So let’s try to understand and decrypt all these new projects peacefully.

Adobe Flash Player 1o.2 & 10.3 Beta version

Adobe keep on improving its player in order to be able to be the universal solution for multi supports. So Adobe extends the capabilities for various devices and keep on upgrading the performance for the existing ones. Thus Flash Player 10.2 contains several new features and enhancements in this way:

¬ Stage Video hardware acceleration
¬ Support for full screen mode with multiple monitors
¬ Internet Explorer 9 hardware accelerated rendering support
¬ Native custom mouse cursors
¬ Sub-pixel text rendering

As far as Flash Player 10.3 Beta contains several new features and enhancements:

Media Measurement
Adobe announces that with Flash Player 10.3 and Adobe® SiteCatalyst®, developers can implement video analytics with as little as two lines of code.
¬ Enhanced Playback Events
¬ NetStream Monitoring
¬ Enhanced NetStreamInfo
¬ Page Domain URL

Visit ADOBE SiteCatalyst web site !

Acoustic Echo Cancellation [AEC]
Developers can take advantage of acoustic echo cancellation, noise suppression, voice activity detection, and automatic compensation for various microphone input levels.

Integration with browser privacy control for local storage
Users now have a simpler way to clear local storage from the browser settings interface – similar to how users clear their browser cookies today.

Native Control Panel
Flash Player 10.3 provides users with streamlined controls for managing their Flash Player privacy, security and storage settings.

Auto-Update Notification for Mac OS
See also IT Administration | Configure Flash Player auto-update notification

Read the release notes and download the beta version, if you want to experiment these new features.

Others recommended readings :
¬ Introducing Flash Player 10.3 beta!, by Thibault Imbert, on 8th march 2o11.

AIR and Flash Player Incubator

Visit ADOBE Flash Player Incubator's blog !

The AIR and Flash Player Incubator is a place for the Adobe Flash Runtimes team to share with developers features that are under development or experimental in order to get early participation, testing, and feedback from the community.
It’s interesting to see how Adobe use Agile methodoly with the developers community. Google receipts have come a long way…
If you want to know anything about the last version features of the Flash Player, you should be connected to the official Adobe AIR and Flash Player releases blog.

Molehill :: 3D APIs for Adobe Flash Player and Adobe AIR

Molehill ” is the code name for a new set of low-level, GPU-accelerated 3D APIs that will enable advanced 3D experiences across screens through the Adobe® Flash® Platform runtimes. The additional features are :

1. 3D API [codenamed “ Molehill ” ]
It means a new set of low-level, GPU-accelerated 3D APIs that enable advanced 3D experiences across devices through the Adobe Flash Platform runtimes.

2. Cubic bezier curves
By using the cubicCurveTo drawing API, developers can create cubic beziers without custom ActionScript code.

The 3D APIs will rely on DirectX 9 on Windows and OpenGL 1.3 on MacOS and Linux. For mobile platforms, Flash Player will rely on OpenGL ES 2.0. For those graphics cards that aren’t supported, Flash Player will fallback to a software rasterizer called SwiftShader, a technology licensed from TransGaming.

I recommend to go deeper on this subject by reading :
¬ Changing the web, again, by Thibault Imbert, on 27th February 2o11.
¬ Digging more into the Molehill APIs, by Thibault Imbert, on 6th January 2o11.
¬ [FR] Flash Molehill en beta disponible : la révolution 3D du web en marche, by Hebiflux, on 27th February 2o11
¬ [FR] Flash Player 11 inaugure une nouvelle ère pour le web 3D, by Fred Cavazza, on 28th February 2o11


To understand what is the AGALMiniAssembler, you need to know what is AGAL. Even if it seemed obvious for a lot people, I had difficulty to discover that AGAL is the acronym for the Adobe Graphics Assembly Language.
I must confess that I’m little bit confused about the role of this AGALAssembler and that I need to investigate more this subject. Nevertheless I advise (like I did) to do what sThibault answered to one of the comment to his post :
Make sure you download the AGALMiniAssembler here :
It allows you to convert an AGAL string to AGAL bytecode. This zip file also contains other helper classes.
For documentation on AGAL it is covered in the asdocs available here :


Thibault IMBERT - What Can You Do With Bytes ?

I have to mention here the fact that Thibault Imbert has written the 2nd chapter of his new book titled ‘ What can you do with bytes ? ‘ concerning the possibilities that the ByteArray class offers. In the first chapter Thibault remembers us main concepts about bytes manipulation (position, weight, notation, etc.) and in this new chapter he introduces concret manipulation (embedding resources, un|compression, etc.). Great job ! and so useful…

Pixel Bender 3D

Pixel Bender 3D is a version of the Pixel Bender kernel language that allows developers to produce vertex and fragment shaders that run on 3D hardware to generate output images. These kernels operate on 3D objects and affect their appearance. Pixel Bender 3D is built on the Adobe® Flash® 3D APIs.

Further investigation :
¬ Download PixelBender3D

Actionscript 3D engines and platforms

During the writing of this post, I took time to refactor and update some parts of this bloc mainly the ” actionscript animation libraries, frameworks and projects ” section, and more specially the ” animation ” sub-section. The main objective is to make this blog up to date and more consistent.
Don’t hesitate to comment this blog. That will help me to manage it. Today I use it more as my own tool than a communication tool. Thanks by advance for your comments.

Visit Away3D web site !

By looking at the projects concerning 3D in actionscript, I was surprised to realize that Papervision3D seems to be inactive. The Carlos Ulloa’s project was the first 3D project which reached a real impact in the professional world. On the contrary Away3D which arrives after seems to have had a better resistance to the time effects. Away3D has published the 4th version in alpha state (code name ” roomstick “). And a 3D IDE has even been created : preFAB 3D IDE.

Visit PreFAB web site !

At least new open source and|or commercial 3D engines appeared beside products like Sandy3D, Alternativa3D, Swift3D or FreeSpin3D. Some of these engines have even been enhanced by Adobe itself during Adobe MAX or other official shows and publications. Among these engines : CopperCube, Flare3D, Minko, Sophie3D or Yogurt3D.

So let’s play 3D with Flash !