Haaf's Game Engine 1.53
Copyright (C) 2003-2005, Relish Games
http://hge.relishgames.com


Overview
================================

HGE is an easy to use yet powerful hardware accelerated 2D game engine.
It is a full featured middleware for all who want to develop commercial
quality 2D games rapidly and easily. It covers all imaginable 2D game
genres: you could create everything from a simple puzzle to advanced
multilayered platformer or strategy without even thinking of any non
game logic code! And you don't have to know anything about "window
messages", DirectX programming and all that stuff. Instead you can
start developing your own game within 15 minutes! 

HGE runs on Microsoft Windows 98, 2000, NT, ME, XP and requires
DirectX 8.0. It will run even on low-end video cards, including
built in video cards such as Intel Solano (i815 chipset). HGE can
be used with virtually any C++ compiler including Visual C++,
Borland C++, MinGW and Metrowerks Codewarrior. 


Features
================================

===CORE FUNCTIONS===

Hardware accelerated 2D graphics:
Support for BMP, DDS, DIB, JPG, PNG, TGA file formats;
windowed and fullscreen modes; exact texel-to-pixel rendering;
arbitrary shapes rendering; drawing lines and filled shapes;
rendering to texture; direct texture data access; clipping regions;
various blending modes; alpha channels and blending; tinting;
global scene transformations; Z-buffer. 

Audio effects and music playback:
Support for WAV, MP3, MP2, MP1 and OGG audio file formats;
support for MO3, IT, XM, S3M, MTM, MOD and UMX music file formats;
compressed streams playback; flexible volume, panning and pitch control. 

Keyboard and mouse input handling:
Get keys state and clicks; get key names; translate keycode to
character; mouse position & wheel tracking; event-based and
poll-based input handling. 

Resources:
Load resources from disk files; load resources from ZIP file
(resource pack); easy switching between both; multiple resource
packs support. 

Timing functions:
Frame rate synchronisation with unlimited FPS; fixed FPS mode;
monitor refresh synchronisation; FPS counting; idle time handling. 

Initialization & Log files:
Write and read strings, integers and floats; printf-style
log file output. 

===HELPER CLASSES===

Sprites & Animations:
Transparent interface to all hardware features; anchor point
support; stretching, rotation and scaling support; horizontal
and vertical flipping; timing functions; various playback modes. 

Fonts:
Load and render bitmap fonts; various text alignment modes;
font tracking, scaling and rotation; string width calculation;
printf-style text output. 

Particle systems & Distortion mesh:
Advanced 2D particle systems allowing to create effects like
smoke, explosions, magic etc.; particle systems manager; timing
and movement functions; bounding box calculation and collision
detection; water, lenses, page wraps, twists and even real-time
morphing effects. 

Resource manager:
Powerful resource script; on the fly script switching; create
complex objects with just a single function call; fully automated
memory management; precaching and purging of specific resource groups. 

GUI:
Simple and flexible controls management; default controls: text,
buttons and sliders; support for highly interactive, animated GUIs. 

Vectors & Colors:
Full set of operators and functions for handling 2D vectors;
full set of operators for ARGB color calculations; hardware color
conversion; color clamping. 

===AUTHORING TOOLS===

Resources Compiler:
HGE uses widespread ZIP archive format for the resource packs.
So you can compile HGE resource packs used in a game with your
favorite archiver.  
 
Particle Systems Editor:
Allows to edit visually all the parameters of advanced 2D particle
systems. You can modify directions, speeds, life times, trajectories,
particle colors and opacity etc. looking at the resulting effect
in real time.  


More information
================================

See documentation for details.
See license.txt for licensing information.
Send any questions, suggestions and bug reports to hge@relishgames.com.


Cheers! :)
