It’s been quite a while since we took a step back from our work here to give you all an update on how the Adobe Flash Player deployment add-on has been progressing. The good news is that things have been going great! We’ve had the chance to add in a lot of stuff that we initially didn’t think would be possible for the release of 4.0.
At the beginning of the year, we provided a glimpse of the Flash export functionality as a preview that shipped with the Unity 3.5 update. The release version of the tool is now shipping with Unity 4.0 ! We’re extremely proud of the work we’ve done making our engine the most powerful development pathway to Adobe Flash Player.
The strength of the Unity editor and engine enables a smooth workflow to publish to Flash; with the release out of the door, we wanted to highlight some of the big Adobe Flash Player export tool features that are included for 4.0, many of which have never before been readily available for Flash developers:
The power in the new suite of animation tools for Unity 4.0 is unprecedented in integrated development environments. It will prove to be a powerful tool in the creation of fluid and realistic animation for 3D Flash games.
We have made scripting access available to the powerful Shuriken particle effects system, first introduced to Unity in the 3.5 update. Everything that’s improved with 4.0, including the environmental collisions for particles, is supported for Flash Player.
The excellent AI pathfinding solution will allow developers to create dynamic character navigation through complex environments without worry.
Nvidia’s physics solution is one of the most pervasive and high quality on the market. Not only does it offer up an incredible way to increase immersion, but opens up the doors to a wealth of physics based gameplay mechanics. If your project does not need physics, you can strip it from the build.
Occlusion culling is an important tool in creating richly detailed and complex environments while keeping performance levels high. Umbra’s OC solution is the best in the business.
Static and Dynamic Batching
Flash Export supports batching; where possible, this greatly reduces the amount of draw-calls and thus rendering speed. Overall the rendering speed, with and without batching is greatly improved by reducing the amount of calls to Flash's Stage3D APIs.
A much requested feature included in 4.0, working out of the box in Flash Export on 4.0. Keeps your custom cursors smooth.
WWW & Assetbundles
Flash supports WWW and AssetBundles for the streaming of scenes. Note; when targeting Flash Player 11.4, a fast decompression path for the Assetbundles will be used.
Unity 4.0 adds full support for dynamic fonts to all platforms, including Flash.
Scripting support & Validation
Unity Flash Export does automatic C# conversion. Under the hood all your scripts are automatically converted to ActionScript. In the time since the release of the 3.5 preview, we added support for more .NET API’s and constructs, with much improved generics support. Overall, scripting support is much improved since the 3.5 preview. There are still unsupported APIs left, such as LINQ and other .NET features.
Not everything will convert right out of the box; we have added script validation & messaging to help you find and replace the usages of unsupported APIs. It is also possible to drop in ActionScript files and SWCs to add Flash specific functionality, such as networking and video playback, and use the UnityEngine.Flash.ActionScript API, to directly bridge from C# to ActionScript functionality.
Automatic conversion of shaders to agal
As with our automatic script conversion, shaders will automatically be converted to Adobe Flash's AGAL format.
We wanted to highlight a subset of things available for Flash Export, but there is much more; see the feature comparison on our license matrix: http://unity3d.com/unity/licenses
What about Flash on 3.5 ?
While the developer preview version of Flash Export on 3.5 has been unsupported and un-updated for a while, it's currently still available. Keep in mind that this is an unsupported preview version and many conversion issues & bugs are likely to occur; as Flash export with 4.0 is now released, the preview version will be removed from 3.5 in an update.