Gameswf

Last updated

gameswf
Original author(s) Thatcher Ulrich
Repository OOjs UI icon edit-ltr-progressive.svg
Written in C++
Operating system Microsoft Windows, OS X, Linux
Type Library
License Public domain
Website tulrich.com/geekstuff/gameswf.html OOjs UI icon edit-ltr-progressive.svg

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 video games.

It is written in C++, and compiles under Microsoft Windows, OS X, Linux, iOS and Android, using GCC and MSVC. It includes code for rendering with OpenGL ES. The rendering module is factored out so that the code can be ported to other APIs.

gameswf is used by other open source projects such as Gnash. It is also used in Oddworld: Stranger's Wrath [1] and many Gameloft games to display user interface screens and menus such as the player's inventory.

gameswf is a prototype of Scaleform GFx, [2] advanced cross-platform GUI solution.

Related Research Articles

DirectX Collection of multimedia related APIs on Microsoft platforms

Microsoft DirectX is a collection of application programming interfaces (APIs) for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms. Originally, the names of these APIs all began with "Direct", such as Direct3D, DirectDraw, DirectMusic, DirectPlay, DirectSound, and so forth. The name DirectX was coined as a shorthand term for all of these APIs and soon became the name of the collection. When Microsoft later set out to develop a gaming console, the X was used as the basis of the name Xbox to indicate that the console was based on DirectX technology. The X initial has been carried forward in the naming of APIs designed for the Xbox such as XInput and the Cross-platform Audio Creation Tool (XACT), while the DirectX pattern has been continued for Windows APIs such as Direct2D and DirectWrite.

Simple DirectMedia Layer

Simple DirectMedia Layer (SDL) is a cross-platform software development library designed to provide a hardware abstraction layer for computer multimedia hardware components. Software developers can use it to write high-performance computer games and other multimedia applications that can run on many operating systems such as Android, iOS, Linux, macOS, and Windows.

Allegro (software library)

Allegro is a software library for video game development. The functionality of the library includes support for basic 2D graphics, image manipulation, text output, audio output, MIDI music, input and timers, as well as additional routines for fixed-point and floating-point matrix arithmetic, Unicode strings, file system access, file manipulation, data files, and 3D graphics. The library is written in the C programming language and designed to be used with C, C++, or Objective-C, with bindings available for Python, Lua, Scheme, D, Go, and other languages. Allegro comes with extensive documentation and many examples.

In computing, cross-platform software is computer software that is implemented on multiple computing platforms. Cross-platform software may be divided into two types; one requires individual building or compilation for each platform that it supports, and the other one can be directly run on any platform without special preparation, e.g., software written in an interpreted language or pre-compiled portable bytecode for which the interpreters or run-time packages are common or standard components of all platforms.

Oddworld is a media franchise and fictional universe, created by developers Oddworld Inhabitants under the direction of Lorne Lanning. The series has been released on various platforms such as PlayStation, Xbox, PlayStation 3, Game Boy, Windows and Wii U.

OpenAL

OpenAL is a cross-platform audio application programming interface (API). It is designed for efficient rendering of multichannel three-dimensional positional audio. Its API style and conventions deliberately resemble those of OpenGL. OpenAL is an environmental 3D audio library, which can add realism to a game by simulating attenuation, the Doppler effect, and material densities. OpenAL aimed to originally be an open standard and open-source replacement for proprietary 3D audio APIs such as DirectSound and Core Audio, though in practice has largely been implemented on various platforms as a wrapper around said proprietary APIs or as a proprietary and vendor-specific fork. While the reference implementation later became proprietary, there are open source implementations such as OpenAL Soft available.

WebKit Web browser engine

WebKit is a browser engine developed by Apple and primarily used in its Safari web browser, as well as all iOS web browsers. WebKit is also used by the BlackBerry Browser, PlayStation consoles beginning from the PS3, the Tizen mobile operating systems, and a browser included with the Amazon Kindle e-book reader. WebKit's C++ application programming interface (API) provides a set of classes to display Web content in windows, and implements browser features such as following links when clicked by the user, managing a back-forward list, and managing a history of pages recently visited.

Game programming, a subset of game development, is the software development of video games. Game programming requires substantial skill in software engineering and computer programming in a given language, as well as specialization in one or more of the following areas: simulation, computer graphics, artificial intelligence, physics, audio programming, and input. For massively multiplayer online games (MMOGs), knowledge of additional areas such as network programming and database programming are required. Though often engaged in by professional game programmers, some may program games as a hobby.

Kodi (software) Free software media player

Kodi is a free and open-source media player software application developed by the XBMC Foundation, a non-profit technology consortium. Kodi is available for multiple operating systems and hardware platforms, with a software 10-foot user interface for use with televisions and remote controls. It allows users to play and view most streaming media, such as videos, music, podcasts, and videos from the Internet, as well as all common digital media files from local and network storage media.

Glide is a 3D graphics API developed by 3dfx Interactive for their Voodoo Graphics 3D accelerator cards. Although it originally started as a proprietary API, it was later open sourced by 3dfx. It was dedicated to rendering performance, supporting geometry and texture mapping primarily, in data formats identical to those used internally in their cards. Wide adoption of 3Dfx led to Glide being extensively used in the late 1990s, but further refinement of Microsoft's Direct3D and the appearance of full OpenGL implementations from other graphics card vendors, in addition to growing diversity in 3D hardware, eventually caused it to become superfluous.

<i>Oddworld: Strangers Wrath</i>

Oddworld: Stranger's Wrath is an action-adventure video game developed by Oddworld Inhabitants and published by Electronic Arts for the Microsoft Xbox. It is the fourth overall entry of the Oddworld series. It was released on January 25, 2005.

Lincity

Lincity is a free and open-source software construction and management simulation game, which puts the player in control of managing a city's socio-economy, similar in concept to SimCity. The player can develop a city by buying appropriate buildings, services and infrastructure. Its name is both a Linux reference and a play on the title of the original city-building game, SimCity, and it was released under the GNU General Public License v2.

BeOS API

The BeOS API, often called the Be API after Be Inc., is the application programming interface required to write graphical native applications on BeOS, and hence its derivatives such as Haiku and ZETA.

Oddworld Inhabitants American video game developer

Oddworld Inhabitants Inc. is an American video game, film and television company founded in 1994 by special-effects and computer-animation veterans Sherry McKenna and Lorne Lanning. The company is primarily known for the Oddworld, series of video games about the fictional planet of Oddworld and its native creatures. The series debuted with Oddworld: Abe's Oddysee in 1997 and continued with Oddworld: Munch's Oddysee in 2001 but the studio has also developed standalone titles Oddworld: Abe's Exoddus in 1998 and Oddworld: Stranger's Wrath in 2005.

ShiVa3D is a 3D game engine with a graphical editor designed to create applications and video games for desktop PCs, the web, game consoles and mobile devices. Games made with ShiVa can be exported to over 20 target platforms, with new export targets being added regularly.

Marmalade (software)

Marmalade SDK was a cross-platform software development kit and game engine from Marmalade Technologies Limited that contains library files, samples, documentation and tools required to develop, test and deploy applications for mobile devices.

MonoGame is a free and open source C# framework used by game developers to make games for multiple platforms and other systems. It is also used to make Windows and Windows Phone games run on other systems. It supports iOS, Android, macOS, tvOS, Linux, PlayStation 4, PlayStation Vita, Xbox One and Nintendo Switch. It implements the Microsoft XNA 4 application programming interface (API). It has been used for several games, including Bastion and Fez.

In computing, Stage3D is an Adobe Flash Player API for rendering interactive 3D graphics with GPU-acceleration, within Flash games and applications. Flash Player or AIR applications written in ActionScript 3 may use Stage3D to render 3D graphics, and such applications run natively on Windows, Mac OS X, Linux, Apple iOS and Google Android. Stage3D is similar in purpose and design to WebGL.

OpenFL

OpenFL is a free and open-source software framework and platform for the creation of multi-platform applications and video games. OpenFL applications can be written in Haxe, JavaScript, or TypeScript., and may be published as standalone applications for several targets including iOS, Android, HTML5(choice of Canvas, WebGL, SVG or DOM), Windows, macOS, Linux, WebAssembly, Flash, AIR, PlayStation 4, PlayStation 3, PlayStation Vita, Xbox One, Wii U, TiVo, Raspberry Pi, and Node.js.

Vulkan (API) Cross-platform 3D graphics and computing programming interface

Vulkan is a low-overhead, cross-platform 3D graphics and computing API. Vulkan targets high-performance realtime 3D graphics applications such as video games and interactive media across all platforms. Compared to OpenGL, Direct3D 11 and Metal, Vulkan is intended to offer higher performance and more balanced CPU/GPU usage. Other major differences from Direct3D 11 and OpenGL is Vulkan being a considerably lower-level API and offering parallel tasking. In addition to its lower CPU usage, Vulkan is designed to allow developers to better distribute work among multiple CPU cores.

References

  1. "Mini-postmortem on the use of gameswf in Oddworld: Stranger's Wrath". Thatcher's rants and musings.
  2. "Autodesk game middleware products are no longer available for purchase".