Where to Begin

Where and how to begin with Scaleform 4.6 depends heavily on how it will be used, what engine and technologies will be used with it, the skill of the team and the time available. It is recommended to first learn how to play and view files in the Scaleform player, then determine what is needed to integrate Scaleform 4.6 in the game engine, or learn how to use Flash. Regardless of whether you are an artist, designer or programmer, it is important to acquire a general overview of the entire pipeline for building assets for use with Scaleform 4.6.

For more details on typical Scaleform Integration and Content development, please see the following post in our forums: Scaleform: Sample Integration and Content Development Timeline.

A good early step is to complete a series of performance analysis with your specific implementations in order to verify and ensure optimal functionality. As with other aspects of game development, when implementing Scaleform 4.6, common sense and good testing procedures are critical. While integrating Scaleform 4.5 is not difficult, content creation guides should be established to ensure the UI artist/developer is not creating assets that could degrade performance. In the same way that a developer would not create a character model for an in game engine composed of 10 million polygons, a UI developer would not create a Flash file that has 10,000 animated layers with transparency and excessive animation tweens. Use common sense and past experience when building Flash assets. It is very easy to create assets that run slow if they are too complex or utilize certain features. Remember, just because something works doesn’t mean it isn’t broken (e.g., poorly implemented).

User-Specific Information

UI Programmers

Programmers must usually first worry about how to integrate Scaleform into the game engine and how to connect the game systems and databases to the game. In order to get a front end to correctly play in a game, Scaleform 4.6 must first be integrated into the engine, which will allow the engine to draw 2D Flash graphics. Next, the engineer will need to connect the game databases to the Flash systems (via ActionScript). This will allow the game to send messages to a Flash file and vice versa. This will be necessary to send information from the game client that the interface needs to dynamically know about (e.g., player names, scores, health). The engine will likewise need to communicate changes in the interface back to the game client; for example, if the player changes an option, the game will know about it and be able to take the necessary steps. The more complex the interface or interactive content, the more work which may need to go into making sure the connections are working properly.

UI Designers

User Interface Designers must first make sure they know how to use Flash, and get up to speed on AS3. Designers will want to make sure they know how to use the CLIK components, create interface components from scratch and know how to connect their interactive content to the game or any external sources that may be needed. Early on, designers will probably want to rapidly prototype their projects, which will help them understand how to build functional content while simultaneously analyzing performance.

UI Artists

Artists must make sure they are familiar with Animate, Flash, or CS5. They will need to make sure they understand how to skin interface components, especially the CLIK components, along with how to create any other graphics that might be needed. Artists and UI Designers should work together to understand the performance implications of their choices and spend some time experimenting to determine the limits of artwork complexity to avoid negative performance impact. For example, the content for an in-game interface will have significantly different requirements than those for a front-end menu. Understanding how complex everything is will be an important step in the early development process. Once the performance restrictions are understood, then artists can begin to prototype the visual look of the project.

The most important thing to remember when using Scaleform 4.6 Flash: artists are only limited by their imagination and the performance restrictions placed on them by the game engine and platform.

Playing Files

Scaleform 4.6 comes with a variety of players for Windows and each platform. The Scaleform 4.6 Player supports playing native SWF files from Flash or Scaleform’s proprietary GFX file format. To play a file, simply run the Scaleform 4.6 player of choice and then drag and drop a SWF or GFX file onto the player window.

By default on Windows, during installation, the Scaleform 4.6 SDK installation places a “Scaleform SDK Browser” shortcut on the desktop. The Scaleform Player can be found by launching the SDK Browser and choosing the ‘Developer Tools’ tab on the left.

Scaleform 4.6 Additional players may be accessed from the start menu: Start > Programs >Autodesk > Scaleform > GFx SDK 4.6 > GFx Players. These players may be located via Windows Explorer as well:

C:/Program Files/Autodesk/Scaleform/GFx SDK 4.6/Bin/Win32/Msvc11/GFxPlayer

C:/Program Files/Autodesk/Scaleform/GFx SDK 4.6/Bin/Win32/Msvc14/GFxPlayer

To test, run the Scaleform FxPlayer from the SDK Browser.This will open up a blank player window. Next, use Windows Explorer in Windows to browse to: C:/Program Files/Autodesk/Scaleform/GFx SDK 4.6/Bin/Data/AS2/Samples/3DDemo. There are a number of SWF files in this 3DDemo folder. To play any of these, just drag and drop them onto the player window.

On other platforms such as Mac or Linux, the players are located in Bin// in the Scaleform SDK 4.6 directory. These players can be run from either the command line or the Finder (on Mac) depending on the platform. To play a sample SWF file, choose any SWF from the 3DDemo found in Bin folder of the Scaleform SDK 4.6 directory. Drag and drop the sample onto the player window.

Closing the player is not necessary to play a different SWF. Drag and drop another file onto the player at any time to play the new SWF. To run the player from the command line:

On Linux - Bin/i386-linux/FxPlayer

On MacOS - Bin/MacOs/FxPlayer.app/Contents/MacOS/FxPlayer

Note that starting the player from the command line will size the window to the Stage from the Flash file.

Additional samples are provided in: /Bin/Data/{AS2 or AS3}/Samples in the Scaleform SDK 4.6 installation.

Starting a New Project

Scaleform 4.6 supports the use of AS 2.0 and 3.0. Flash CC, CS3, CS4, CS5 or Animate may be used to author content; however, it is important that when starting a new project that you choose either an ActionScript 2 or ActionScript 3 file type, depending upon which version you wish to use. This can be done from the initial start page of Flash, or from the top menu via File->New->Flash File (ActionScript 2.0 or ActionScript 3.0). Ensure that the Flash Publish Settings have Flash Player 10 chosen as the Flash Player type. These steps will help to ensure maximum compatibility.

It is important to note that Scaleform 4.6 support most of the commands in AS 2.0 and AS 3.0, but not all of them. It is important to reference the Flash Support Overview, which contains a full list of all supported AS 2.0 and 3.0 commands.