Adobe has released an update to Flash Player and AIR, and this time around it is apparent that their focus is entirely on the gaming market.
To enable better gaming on the web when using Flash Player, support has been added for mouse lock, relative coordinates, and right and middle-click events. These features were already previewed in the beta version of Flash Player 11.2 released earlier. Flash-based FPS games are now feasible thanks to these features.
Flash Player 11.2 also ships with a new auto-update mechanism which should ensure that you always have the latest version of the runtime installed. This should help with the proliferation of the latest version of Flash Player in case a security update is released.
Adobe has chosen the tag line “Plays well. Plays everywhere” for this release of AIR 3.2, which seems a little ironic considering they recently dropped support for Linux. With the release of AIR 3.2, Stage3D is finally available in AIR for mobile devices.
Stage3D is the technology introduced in Flash Player 11, which allowed developers to create fully hardware-accelerated 3D content. This feature is now available on both Android and iOS, allowing richer 3D games to be developed for that platform; and makes it possible to create 3D games that target both mobile and desktop.
A new multi-threaded video decoding pipeline is also featured in this release, which should make video playback smoother.
Another development in the Flash Platform is a new set of “Premium Features” in Flash Player. No, the end users of Flash will not have to pay to use these features, rather, the developers who create content for Flash Player will. Till now the Flash platform has been rather open. Despite all the criticism anyone could use any free or open source tools to create Flash Content. This no longer seems to be the case. Two Flash Player features, ApplicationDomain.domainMemory and hardware acceleration for Stage3D.request3DContex will only be available to those who have the licence for premium features.
So what do these features do? ApplicationDomain.domainMemory will be used by Alchemy, a tool that can compile C / C code to run in the Flash Player. This enables porting existing C / C code to Flash Player, or for high-performance code to written in C / C and run in Flash Player. Alchemy was earlier released as an Adobe labs project and was publicly and freely available for quite some time.
Hardware acceleration for Stage3D.request3DContex simply means hardware acceleration for 3D content made for Flash Player. Those who license the premium features will be able to create content that is hardware accelerated, while those who don’t licence the features will have their content played back using software acceleration. This only affects 3D content, not the video playback. Essentially, if you are playing a game made using Flash Player’s new 3D features, and the creator of that content did not licence the feature, then the game will not take full advantage of your 3D hardware.
This restriction is not present for content packaged using AIR for Android, iOS, Windows and Mac OSX. This makes sense as by restricting the runtime on these platforms would make other less restricted platforms more lucrative. It is possible that third-party developers will also be able to create free and possibly open source tools that use this feature; however, it is the feature itself that needs the licence, not the tooling.
These features might be locked down to those who licence the technology, but to be fair, Adobe is making these licences easy to get. Those who publish content from now till August 1st will not need a licence, and will get a royalty-free licence for content published in this duration. Even after this period, those with a net revenue up less than $50,000 for an application will not have to pay for the licence. This revenue has to be directly from a particular application, so if you have a dozen different applications, each raking in less than $50,000 you pay nothing. Only when the direct revenue from one of your games or applications exceeds this amount do you have to pay, and then you pay 9% of your revenue. This is in line with other App Stores, where you pay to publish on the platform.