ZenGL - cross-platform game development library, designed to provide necessary functionality for rendering 2D graphics, handling input, sound output, etc.
Supported OS: GNU/Linux, Windows, MacOS X, iOS, Android 2.1+
Supported compilers: FreePascal, Delphi
Graphics API: OpenGL, OpenGL ES 1.x, Direct3D 8/9
Sound API: OpenAL, DirectSound
ZenGL Tutorial: This is a first tutorial for ZenGL: download, installation, source paths, compilation (statically or with so/dll/dylib) (Windows dll), and the First program 'Initialization' that comes with ZenGL.
ZenGL Tutorial 2: This is the second tutorial on how to create a font and draw text in the window.
* Main o can be used as so/dll/dylib or statically compiled with your application o rendering to own or any other prepared window o logging o resource loading from files, memory and zip archives o multithreaded resource loading o easy way to add support for new resource format * Configuration of o antialiasing, screen resolution, refresh rate and vertical synchronization o aspect correction o title, position and size of window o cursor visibility in window space * Input o handling of keyboard, mouse and joystick input o handling of Unicode text input o possibility to restrict the input to the Latin alphabet * Textures o supports tga, png, jpg and pvr o correct work with NPOT textures o control the filter parameters o masking o render targets for rendering into texture * Text o textured Unicode font o rendering UTF-8 text o rendering text with alignment and other options like size, color and count of symbols * 2D subsystem o batch render for high-speed rendering o rendering different primitives o sprite engine o rendering static and animated sprites and tiles o rendering distortion grid o rendering sprites with new texture coordinates (with the pixel dimension and the usual 0..1) o control the blend mode and color mix mode o control the color and alpha of vertices of sprites and primitives o additional sprite transformations (flipping, zooming, vertices offset) o fast clipping of invisible sprites o 2D camera with ability to zoom and rotate the scene * Sound o works through OpenAL or DirectSound; depends on configuration or OS o correct work without soundcard o supports wav and ogg as sound sample formats o playing audio files in separate thread o control volume and playback speed o moving sound sources in 3D space * Video o decoding video frames into texture o supports theora codec in ogv container * Math o basic set of additional math functions o triangulation functions o basic set of collision functions * Additional o reading and writing INI files o functions for working with files and memory