From GPWiki
Libraries are split into the following categories:
AI
Audio
| Name | Language | Platform | Description
|
| Audiere
|
| BASS | C | Cross-Platform | Commercial, HGE uses it as a freeware audio library, but licence requires you to purchase BASS for commercial projects.
|
| Dumb | C | Cross-Platform | Freeware module player library
|
| FMod
|
| irrKlang | C++ | Cross-Platform | Free 2D and 3D audio library
|
| OpenAL | C | Cross-Platform |
|
| SDL | C | Cross-Platform |
|
| SDL_mixer | C | Cross-Platform |
|
Character Animation
| Name | Language | Platform | Description
|
| EMotionFX | C/C++ | PC, Mac, Linux, Xbox360, other Nextgen consoles | EMotion FX is a realtime character animation system designed to be plugged into any 3D engine, game or any other product.
EMotion FX supports next generation multi-core, multithreaded consoles and PC as well as single threaded environments.
|
Compression
| Name | Language | Platform | Description
|
| bzip2 | Python | Cross-Platform | Good compression
|
| unrarlib | | Cross-Platform | Good compression
|
| zlib | Python | Cross-Platform | Fast compression
|
| LZMA | C, C++, C#, Java | Cross-Platform | The one that 7-zip uses, Good and fast, Open Source
|
| gzip | C, C++, Python | Cross-Platform | Fast compression, Open Source
|
| lzo | C, Perl, Python, Java | Cross-Platform | Very fast decompression, Small memory footprint, Open Source
|
GUI
| Name | Language | Platform | Description | License
|
| Crazy Eddie's GUI System | C++ | Windows, Linux, Mac OS | Crazy Eddie's GUI System is a free library providing windowing and widgets for graphics APIs / engines where such functionality is not natively available, or severely lacking. The library is object orientated, written in C++, and targeted at games developers who should be spending their time creating great games, not building GUI sub-systems! | LGPL, MIT
|
| Guichan GUI | C++ | Windows, Linux, Mac OS | Guichan is a portable C++ GUI library designed for games using Allegro, SDL and/or OpenGL | BSD license
|
| OpenGUI | C++ | Windows, Linux coming soon | Extendable widget based GUI framework for 3D applications. Works with any graphics API or render engine. Comes with reference implementations for OpenGL and the Ogre rendering engine. Library is written in C++, aimed at game developers. | BSD license
|
| wxWidgets Crossplatform GUI libary | C++, Python, Perl, C#/.NET | Linux, Windows, Mac OS X, WinCE | wxWidgets gives you a single, easy-to-use API for writing GUI applications on multiple platforms that still utilize the native platform's controls and utilities. | wxWindows license (the LGPL with an exception to the distribution of binary form)
|
| Qt cross-platform development library | C++ | Linux and other UNIX variants, Mac OS X, Windows | | GPL, Qt Commercial license
|
| GTK+ | C | Linux and other UNIX variants, Windows | | LGPL
|
| gtkmm | C++ | Same as GTK+ above | A very nice C++ wrapper for GTK+ | LGPL
|
| Tk | TCL, Perl, Python, Ruby, others | *nix, Win32, Mac OS X | A non-native (Motif-look) toolkit coupled closely with Tcl | BSD-style license
|
| AntTweakBar | C/C++ | Windows, Linux | AntTweakBar allows programmers to quickly add a light and intuitive graphical user interface into graphic programs to interactively tweak them. It is a small and easy to use library that can be readily integrated into OpenGL and DirectX applications. | zlib/libpng license
|
General Multipurpose Libraries
| Name | Language | Platform | Description
|
| Allegro
| C/C++
| DOS, Unix (Linux, FreeBSD, Irix, Solaris, Darwin), Windows, QNX, BeOS and MacOS X
| Allegro is a game programming library for C/C++ developers distributed freely. It provides many functions for graphics, sounds, player input (keyboard, mouse and joystick) and timers. It also provides fixed and floating point mathematical functions, 3d functions, file management functions, compressed datafile and a GUI.
|
| Amaltheia
| C/C++
| Linux, Windows
| Amaltheia is a cross-platform game programming API that supports two backends, OpenGL and DirectX. The aim of the Amaltheia project is to create an intuitive and simple to use library, providing core 3d and 2d functionality in a platform independent manner. It also provides platform independence regarding basic network functions, input handling, threads and sound. Currently the GNU/Linux and the Windows OSes are supported.
Amaltheia library has the advantage of using the native graphics system (DirectX under Windows, OpenGL under Linux), thus achieving maximum performance. Developers using Amaltheia dont need to take care of the underlying details (be it Win32 or Linux). Amaltheia hides the differences through its API. The developer writes a unique code for the games/application that compiles and executes in both OSes.
|
| ClanLib
|
| DirectFB
|
| DirectX
| C/C++ & .NET
|
| G3D
| | Win32, OS X, Linux
| Free library for managing graphics, networking, model loading, and basic 3D support code for games in C++.
|
| GLFW
| C, Python | GL Framework. Windows, Linux, SGI Irix, FreeBSD, SUN Solaris/SunOS, QNX, Mac OSX, AmigaOS, MS-DOS
| OpenGL Windowing framework with high-resolution timers, TGA loader, optional callback input routines
|
| JGT
| Java | Multiplatform
| Focuses on higher-level primitives for writing games in Java. LGPL license
|
| Kyra
| C/C++
|
| NeL
|
| OGLWFW
| C++ | Windows
| OpenGL Window Framework. Window framework for OpenGL supports multiple windows, querying display modes, zlib license
|
| PLIB
|
| Prototype
| JavaScript
| Any platform that rus IE6/7, Safari or Firefox
| Prototype is a JavaScript Framework that aims to ease development of dynamic web applications.
|
| Pygame
| Python
| Everywhere SDL runs.
| Basically a Python-wrapped SDL. Plus some assorted features.
|
| SDL
| C/C++
|
| Tao Framework
| .NET / Mono | Windows(.NET), Linux / Mac OS X / Solaris / et al (Mono)
| Mono / .NET bindings for several APIs and libraries, including OpenGL, OpenAL, Lua, SDL, GLFW, FreeGLUT, PhysicsFS, ODE, Cg, DevIL, and the Windows API.
|
| TEKlib
|
Graphics
| Name | Language | Platform | Description
|
| Allegro | C/C++ | Windows, Linux | Cross platform games programming library.
|
| DirectX | C/C++/.NET/VB | Windows, XBox | The Direct3D and DirectDraw components of DirectX are used for 3D and 2D rendering in most Windows platform games.
|
| Irrlicht | C/C++/.NET | Windows, Linux, Mac | The Irrlicht Engine is an open source high performance realtime 3D engine written and usable in C++ and also available for .NET languages. It is completely cross-platform, using D3D, OpenGL and its own software renderer, and has all of the state-of-the-art features which can be found in commercial 3d engines.
|
| OpenGL | C, but bindings exist for most languages | Windows, Linux, MacOS X | A low-level 3D graphics library. Most other 3D libraries use either this or DirectX to do their actual rendering.
|
| SDL | C, but bindings exist for most languages | Windows, Linux, MacOS X | SDL (Simple DirectMedia Library) is a cross platform library designed for simple 2D graphics. It also provides basic input and sound functions and is able to use OpenGL for 3D rendering.
|
Image
Miscellaneous
Networking
| Name | Language | Platform | Description
|
| Boost.ASIO
| C++
| Any
| A Boost-integrated library with an elegant C++ interface for Asynchronous or Synchronous IO operations for sockets. Accepted to Boost, but not yet in the main distribution.
|
| libpkg
| C
| Any
| BRL-CAD's libpkg Network Package Library, simple interface for synchronous or asynchronous network transport
|
| HawkNL
|
| Quazal
|
| OpenTNL
|
| SDL_net
|
| Zoidcom
|
| RakNet
|
| DemonWare
|
| eNet
|
|
| A wrapper over UDP allowing multipule reliable or unreliable streams through a single socket.
|
| Twisted
| Python
| Any
| A highly recommended asynchronous networking framework for Python
|
| Zig
|
Pathfinding
Physics
Text Rendering
XML
| Name | Language | Platform | Description
|
| C++ XML Parser | C++ | Win,Lin,Mac | 2 files(.h and .cpp) and 104 kB
|
External Links
|
|