# Scaleform GFx

Scaleform GFx is a discontinued game development middleware package, a vector graphics rendering engine used to display Adobe Flash-based user interfaces and HUDs for video games. In March 2011, Autodesk acquired Scaleform Corporation and Scaleform GFx became part of the Autodesk Gameware line of middleware. On July 12, 2018, Autodesk discontinued Scaleform GFx, and it is no longer available for purchase.
Authors created user interfaces using Adobe Flash authoring tools, such as Adobe Animate (formerly Adobe Flash Professional); the resulting SWF files were used directly by the GFx libraries, providing similar functionality to the Adobe Flash Player but optimized for use within game engines.
Scaleform GFx supported all major platforms, including game consoles, mobile and PC operating systems. Scaleform provides APIs for direct communication between Flash content and the game engine, and pre-built integrations for popular engines such as Unity, Unreal Engine, and CryENGINE. Scaleform GFx could also be licensed for use as a standalone Flash runtime system on mobile platforms, competing with Adobe AIR.

## Features

Scaleform GFx contains several core systems, including:
* a GPU-accelerated rendering engine for display objects, featuring a vector-to-triangle tessellation engine with an edge anti-aliasing algorithm that uses subpixel triangles to smooth the edges
* mesh rendering backends for DirectX and OpenGL APIs
* a mesh cache to manage tessellated triangle data
* a vector-graphic based font system that uses a single texture to dynamically cache glyphs on demand
* support for all major Flash display classes including Sprite, MovieClip, TextField and Filters (Glow, Bevel, DropShadow, etc.)
* optimized ActionScript 3 and ActionScript 2 virtual machines with garbage collector, as well as GFx-specific ActionScript extensions
* audio support via a licensee-implementable C++ interface, with a default implementation supporting FMOD

### Additional components

In addition to the engine, documentation, and samples, the Scaleform GFx SDK includes several additional components:

#### Scaleform 3Di

    ActionScript 2 extensions allowing for three-dimensional location and rotation of Flash elements. Scaleform 4 includes support for ActionScript 3's built-in 3D capabilities, making 3Di unnecessary.

#### Scaleform CLIK

    Common Lightweight Interface Kit - easily customizable Flash UI component framework, including buttons, list boxes, drop down menus, sliders, trees and windows, created in collaboration with gskinner.com. These components are intended to be lightweight, while providing for bi-directional communication with the engine and other considerations for game development.

#### Scaleform UI Kits

    Prebuilt customizable examples including sample C++ engine and ActionScript code, as well as corresponding Flash content. These currently include an MMO UI, FPS HUD, and frontend menu kit.

#### Scaleform AMP

    Analyzer for Memory and Performance - profiler tool used to analyze memory and performance of Flash content inside a game or 3D application while running on PC, console or mobiles. AMP is similar in purpose and design to Adobe Scout. AMP gives detailed stats for CPU usage, rendering, and memory, and includes a complete ActionScript profiler with function and per-line timing.

### Separately-licensed add-ons

Scaleform also provided two optional add-ons for GFx:

#### Scaleform Video

    Fully integrated video codec for Flash Video workflow support (currently powered by CRI Movie.)

#### Scaleform 3Di

    Fully integrated Input Method Editor (IME) for Asian chat support.

## Technology partners
### Game engines

* Source Engine (Scaleform was used as the former UI backend for Counter-Strike: Global Offensive, prior to the game switching to Valve's in-house Panorama UI.)
* Unreal Engine 3 and UDK
* Crytek CryEngine 2 and CryEngine 3
* Emergent Gamebryo and LightSpeed
* Sony PhyreEngine
* Forgelight Engine
* Infernal Engine
* BigWorld
* HeroEngine
* Trinigy Vision Engine
* Instinct Technology
* LithTech
* RAGE (used in the game Grand Theft Auto V for user interface elements including the map)
* RedEngine

### Other middleware

* CRI Movie
* FMOD
* GameSpy
* Raknet