Flash: Building & Running
Manual     Reference     Scripting   
Unity Manual > Getting Started with Flash Development > Flash: Building & Running

Flash: Building & Running

The following is a step-by-step guide to build and run a new project exported to Flash.

  1. Create your Unity content.
  2. Choose File->Build Settings to bring up the Build Settings dialog and add your scene(s).
  3. Change the Platform to Flash Player
  4. Tick Development Build. (This causes Unity to not compress the final SWF file. Not compressing will make the build faster, and also, the SWF file will not have to be decompressed before being run in the Flash Player. Note that an empty scene built using the Development Build option will be around 16M in size, compared to around 2M compressed.)
  5. Press the Build button.

Unity will build a SWF file at the location you choose. Additionally an html and swfobject.js file will be created. To view your Flash-built content open the html file. (Do not open the SWF file directly).

As with other build target there are Player settings that you can specify. Most of the Flash settings are shared with other platforms. Note that the resolution for the content is taken from the Standalone player settings.

Build-and-run will create the SWF file, launch your default browser and load the generated html file. Note that there is a swfobject.js file created with handles the checking for the Flash Player and browser integration.

The build will also give you a swc file, which allows you to load the swf in your own project. Embedding the Unity content in a standard flash project allows you to do GUI in Flash. This type of flash integration will of course not work in any of the other build targets.

We allow for a Flash API that gives you texture handles, which in combination with the swc embedding will give you means to do webcam, video, vector graphics from flash as textures.

Texture Support

We support jpeg textures, as well as RGBA / Truecolor. The compression ratio can be specified in the texture import under 'Override for FlashPlayer' setting. Compressed textures get converted to jpeg with the chosen compression ratio. The compression ratio is worth experimenting with since it can considerably reduce the size of the final SWF.

Texture quality ranges from 0 to 100, with 100 indicating no compression, and 0 the highest amount of compression possible. The maximum supported texture resolution is 2048x2048.

Build Errors and Warnings

The Build Process

The Unity Flash Publisher attempts to convert scripts from UnityScript into ActionScript. In this process, there can be two kinds of conversion errors: errors during conversion of unity code to ActionScript, and errors while compiling the converted code.

Errors during conversion will point to the original will have the familiar UnityScript error messages with file names and line numbers. If there are errors in the ActionScript, the error will take you to the message in the generated ActionScript code (with filenames ending with .as). It is possible that these ActionScript errors will not be easily understood. Just remember that the ActionScript is generated from your game script code, so any changes you need to make will be in your code and not the ActionScript.

Specific Errors and Warnings

1. What does this error message mean? "Failed assemblies stripper ... Unhandled Exception: Mono.Linker.ResolutionException: Can not resolve reference: System.String UnityEngine.WWW::get_text()"

This means that you have a precompiled dll in your project that was not built with flash support in mind and references classes that Unity Flash does not support (such as WWW).

2. Why do I get:

'TerrainCollider' is not supported when building for FlashPlayer.
'TerrainData' is not supported when building for FlashPlayer.
Asset: 'Assets/New Terrain.asset'
The terrain feature is not supported when building for the FlashPlayer target. All un-supported features will generate a similar warning. Note that the build will continue, however, the unsupported feature will be missing from the final SWF.

3a. Why do I get: Error: Call to a possibly undefined method RuntimeServices_UnboxSingle_Object through a reference with static type Class.

3b. What should I do about this?

4. Why do I get Error building Player: UnauthorizedAccessException: Access to the path "Temp/StagingArea/Data/ConvertedDotNetCode/global" is denied.

Page last updated: 2011-12-21