|OS||Windows, Mac OSX and Linux|
gameswf (pronounced "game swiff") is an open source Public Domain library for parsing and rendering SWF movies, using 3D hardware APIs for rendering. It is designed to be used as a UI library for computer and console games.
It is written in C++, and compiles under Windows, Mac OSX and Linux, using GCC and MSVC. It includes code for rendering with OpenGL. The rendering module is factored out so that you can port to other APIs.
gameswf is pre-alpha code. It can load and render the most common SWF tags, including shapes, text, dynamic text, bitmapped fills, linear and radial gradients, buttons, sprites and some simple actions. It supports the SWF file format through version 6. ActionScript support is spotty, but usable if you're adventurous.
The shape tesselator is not the fastest, but the renderer caches the tesselations, and the library uses 3D hardware, so on average the rendering speed is extremely fast, with a few spikes.
gameswf is not a complete implementation of Flash. The library as a whole is not highly optimized for memory use or speed. However, the text renderer is pretty decent, and the library is currently probably about as well implemented as the GUI library in the average commercial game. It has been used in many real projects but has a lot of rough edges.