MappyGL Release 3 10/1/2003
MappyGL Release 2 18/11/2002
MappyGL Release 1 23/4/2000
(C)2000 Robin Burrows <mappy@tilemap.co.uk>
http://www.geocities.com/rburrowsgc/robmpy.htm
http://www.tilemap.co.uk

DISCLAIMER:
   By using this code you agree that the author will not be
held responsible for anything that may happen in any way.
Use at own risk

LICENCE:
   You may use this code however you like without any restrictions

ABOUT:
   MappyGL is a playback library for tile maps made with Mappy
(see websites above). It is assumed the user knows C or C++ and 
also OpenGL.

USING:
   I don't have time to write proper docs at the moment, try looking
at the docs for the other playback libs (MappyAL/DX etc) and the FAQ.
An example:

Include "mappygl.h" and add mappygl.c to your file list.
Initialize OpenGL
MapLoad ("mymap.fmp", 10); /* '10' is the starting texture index to load to */
MapInitAnims (); /* If using anims */
In logic loop:
  MapUpdateAnims (); /* Increments animations */
In draw loop:
  Push matrix, rotate, transform etc, then:
  MapDrawBG (xoffset,    /* in blocks from left edge of map */
             yoffset,    /* in blocks from top edge of map */
             blockswide, /* how many columns of blocks to draw */
             blockshigh, /* how many rows of blocks to draw */
             xpos,       /* x coord of left edge of are to draw */
             ypos,       /* y coord of top edge of are to draw */
             zpos,       /* z coord of plane to draw on (depth) */
             xadd,       /* width of a block in 3d space */
             yadd);      /* height of a block in 3d space */
  Pop matrix

You may need to alter MapDrawBG
function in MappyGL.c to adapt to your system.
When you want to get rid of the map call MapFreeMem (); Due to my
limited knowledge of OpenGL textures are not freed, you could fix that.
I also include gl/glut.h in mappygl.c but no glut calls are made there 
plain gl should work. I tried to make it endian safe but can't test that.


COMPILERS:
   I used the excellent mingw32 for Win32:
http://www.mingw.org
   And the glut-cygwin libs which can be sourced from the above link,
or directly here:
http://www.cim.pe.u-tokyo.ac.jp/%7Ekawachi/software/cygwin_glut-e.html



Changes:

Release 3:
More examples (please read .c files for more info).
Flipping supported (see MappyWin32 docs and ini file)
Rotating supported (set user7 to 1=90degrees, 2=180degrees, 3=270degrees)
Rotating can be combined with flipping
Risers added (see mglex2.c)
RBfloat is now float (was double)
mappygl.h updated

Release 2:
Used GL_CLAMP_TO_EDGE to get rid of edge artifacts
Added MapDrawFG function with alpha transparency
(Rubbish) example source and exe included (needs GLUT32.DLL, find on the net)
Still only FMP0.5 supported
